diff --git a/api/fx/erc20/v1/legacy.pulsar.go b/api/fx/erc20/v1/erc20_legacy.pulsar.go similarity index 79% rename from api/fx/erc20/v1/legacy.pulsar.go rename to api/fx/erc20/v1/erc20_legacy.pulsar.go index a165a94e..547cac3c 100644 --- a/api/fx/erc20/v1/legacy.pulsar.go +++ b/api/fx/erc20/v1/erc20_legacy.pulsar.go @@ -28,8 +28,8 @@ var ( ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_MsgConvertERC20 = File_fx_erc20_v1_legacy_proto.Messages().ByName("MsgConvertERC20") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_MsgConvertERC20 = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("MsgConvertERC20") fd_MsgConvertERC20_contract_address = md_MsgConvertERC20.Fields().ByName("contract_address") fd_MsgConvertERC20_amount = md_MsgConvertERC20.Fields().ByName("amount") fd_MsgConvertERC20_receiver = md_MsgConvertERC20.Fields().ByName("receiver") @@ -45,7 +45,7 @@ func (x *MsgConvertERC20) ProtoReflect() protoreflect.Message { } func (x *MsgConvertERC20) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[0] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -640,8 +640,8 @@ var ( ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_MsgConvertDenom = File_fx_erc20_v1_legacy_proto.Messages().ByName("MsgConvertDenom") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_MsgConvertDenom = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("MsgConvertDenom") fd_MsgConvertDenom_sender = md_MsgConvertDenom.Fields().ByName("sender") fd_MsgConvertDenom_receiver = md_MsgConvertDenom.Fields().ByName("receiver") fd_MsgConvertDenom_coin = md_MsgConvertDenom.Fields().ByName("coin") @@ -657,7 +657,7 @@ func (x *MsgConvertDenom) ProtoReflect() protoreflect.Message { } func (x *MsgConvertDenom) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[1] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1266,8 +1266,8 @@ var ( ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_MsgUpdateDenomAlias = File_fx_erc20_v1_legacy_proto.Messages().ByName("MsgUpdateDenomAlias") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_MsgUpdateDenomAlias = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("MsgUpdateDenomAlias") fd_MsgUpdateDenomAlias_authority = md_MsgUpdateDenomAlias.Fields().ByName("authority") fd_MsgUpdateDenomAlias_denom = md_MsgUpdateDenomAlias.Fields().ByName("denom") fd_MsgUpdateDenomAlias_alias = md_MsgUpdateDenomAlias.Fields().ByName("alias") @@ -1282,7 +1282,7 @@ func (x *MsgUpdateDenomAlias) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateDenomAlias) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[2] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1814,8 +1814,8 @@ var ( ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_RegisterCoinProposal = File_fx_erc20_v1_legacy_proto.Messages().ByName("RegisterCoinProposal") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_RegisterCoinProposal = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("RegisterCoinProposal") fd_RegisterCoinProposal_title = md_RegisterCoinProposal.Fields().ByName("title") fd_RegisterCoinProposal_description = md_RegisterCoinProposal.Fields().ByName("description") fd_RegisterCoinProposal_metadata = md_RegisterCoinProposal.Fields().ByName("metadata") @@ -1830,7 +1830,7 @@ func (x *RegisterCoinProposal) ProtoReflect() protoreflect.Message { } func (x *RegisterCoinProposal) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[3] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2424,8 +2424,8 @@ var ( ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_RegisterERC20Proposal = File_fx_erc20_v1_legacy_proto.Messages().ByName("RegisterERC20Proposal") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_RegisterERC20Proposal = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("RegisterERC20Proposal") fd_RegisterERC20Proposal_title = md_RegisterERC20Proposal.Fields().ByName("title") fd_RegisterERC20Proposal_description = md_RegisterERC20Proposal.Fields().ByName("description") fd_RegisterERC20Proposal_erc20address = md_RegisterERC20Proposal.Fields().ByName("erc20address") @@ -2441,7 +2441,7 @@ func (x *RegisterERC20Proposal) ProtoReflect() protoreflect.Message { } func (x *RegisterERC20Proposal) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[4] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3049,8 +3049,8 @@ var ( ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_ToggleTokenConversionProposal = File_fx_erc20_v1_legacy_proto.Messages().ByName("ToggleTokenConversionProposal") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_ToggleTokenConversionProposal = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("ToggleTokenConversionProposal") fd_ToggleTokenConversionProposal_title = md_ToggleTokenConversionProposal.Fields().ByName("title") fd_ToggleTokenConversionProposal_description = md_ToggleTokenConversionProposal.Fields().ByName("description") fd_ToggleTokenConversionProposal_token = md_ToggleTokenConversionProposal.Fields().ByName("token") @@ -3065,7 +3065,7 @@ func (x *ToggleTokenConversionProposal) ProtoReflect() protoreflect.Message { } func (x *ToggleTokenConversionProposal) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[5] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3598,8 +3598,8 @@ var ( ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_UpdateDenomAliasProposal = File_fx_erc20_v1_legacy_proto.Messages().ByName("UpdateDenomAliasProposal") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_UpdateDenomAliasProposal = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("UpdateDenomAliasProposal") fd_UpdateDenomAliasProposal_title = md_UpdateDenomAliasProposal.Fields().ByName("title") fd_UpdateDenomAliasProposal_description = md_UpdateDenomAliasProposal.Fields().ByName("description") fd_UpdateDenomAliasProposal_denom = md_UpdateDenomAliasProposal.Fields().ByName("denom") @@ -3615,7 +3615,7 @@ func (x *UpdateDenomAliasProposal) ProtoReflect() protoreflect.Message { } func (x *UpdateDenomAliasProposal) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[6] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4208,8 +4208,8 @@ var ( ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_MsgRegisterCoin = File_fx_erc20_v1_legacy_proto.Messages().ByName("MsgRegisterCoin") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_MsgRegisterCoin = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("MsgRegisterCoin") fd_MsgRegisterCoin_authority = md_MsgRegisterCoin.Fields().ByName("authority") fd_MsgRegisterCoin_metadata = md_MsgRegisterCoin.Fields().ByName("metadata") } @@ -4223,7 +4223,7 @@ func (x *MsgRegisterCoin) ProtoReflect() protoreflect.Message { } func (x *MsgRegisterCoin) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[7] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4700,1070 +4700,77 @@ func (x *fastReflection_MsgRegisterCoin) ProtoMethods() *protoiface.Methods { } } -var ( - md_MsgRegisterCoinResponse protoreflect.MessageDescriptor - fd_MsgRegisterCoinResponse_pair protoreflect.FieldDescriptor -) - -func init() { - file_fx_erc20_v1_legacy_proto_init() - md_MsgRegisterCoinResponse = File_fx_erc20_v1_legacy_proto.Messages().ByName("MsgRegisterCoinResponse") - fd_MsgRegisterCoinResponse_pair = md_MsgRegisterCoinResponse.Fields().ByName("pair") -} - -var _ protoreflect.Message = (*fastReflection_MsgRegisterCoinResponse)(nil) - -type fastReflection_MsgRegisterCoinResponse MsgRegisterCoinResponse - -func (x *MsgRegisterCoinResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgRegisterCoinResponse)(x) -} - -func (x *MsgRegisterCoinResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[8] - 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_MsgRegisterCoinResponse_messageType fastReflection_MsgRegisterCoinResponse_messageType -var _ protoreflect.MessageType = fastReflection_MsgRegisterCoinResponse_messageType{} - -type fastReflection_MsgRegisterCoinResponse_messageType struct{} - -func (x fastReflection_MsgRegisterCoinResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgRegisterCoinResponse)(nil) -} -func (x fastReflection_MsgRegisterCoinResponse_messageType) New() protoreflect.Message { - return new(fastReflection_MsgRegisterCoinResponse) -} -func (x fastReflection_MsgRegisterCoinResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRegisterCoinResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgRegisterCoinResponse) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRegisterCoinResponse -} - -// 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_MsgRegisterCoinResponse) Type() protoreflect.MessageType { - return _fastReflection_MsgRegisterCoinResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgRegisterCoinResponse) New() protoreflect.Message { - return new(fastReflection_MsgRegisterCoinResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgRegisterCoinResponse) Interface() protoreflect.ProtoMessage { - return (*MsgRegisterCoinResponse)(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_MsgRegisterCoinResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Pair != nil { - value := protoreflect.ValueOfMessage(x.Pair.ProtoReflect()) - if !f(fd_MsgRegisterCoinResponse_pair, 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_MsgRegisterCoinResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterCoinResponse.pair": - return x.Pair != nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterCoinResponse")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterCoinResponse 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_MsgRegisterCoinResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterCoinResponse.pair": - x.Pair = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterCoinResponse")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterCoinResponse 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_MsgRegisterCoinResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.erc20.v1.MsgRegisterCoinResponse.pair": - value := x.Pair - return protoreflect.ValueOfMessage(value.ProtoReflect()) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterCoinResponse")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterCoinResponse 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_MsgRegisterCoinResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterCoinResponse.pair": - x.Pair = value.Message().Interface().(*ERC20Token) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterCoinResponse")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterCoinResponse 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_MsgRegisterCoinResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterCoinResponse.pair": - if x.Pair == nil { - x.Pair = new(ERC20Token) - } - return protoreflect.ValueOfMessage(x.Pair.ProtoReflect()) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterCoinResponse")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterCoinResponse 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_MsgRegisterCoinResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterCoinResponse.pair": - m := new(ERC20Token) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterCoinResponse")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterCoinResponse 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_MsgRegisterCoinResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.erc20.v1.MsgRegisterCoinResponse", 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_MsgRegisterCoinResponse) 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_MsgRegisterCoinResponse) 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_MsgRegisterCoinResponse) 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_MsgRegisterCoinResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgRegisterCoinResponse) - 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.Pair != nil { - l = options.Size(x.Pair) - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgRegisterCoinResponse) - 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.Pair != nil { - encoded, err := options.Marshal(x.Pair) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0xa - } - if input.Buf != nil { - input.Buf = append(input.Buf, dAtA...) - } else { - input.Buf = dAtA - } - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgRegisterCoinResponse) - 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: MsgRegisterCoinResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRegisterCoinResponse: 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 Pair", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.Pair == nil { - x.Pair = &ERC20Token{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Pair); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var _ protoreflect.List = (*_MsgRegisterERC20_3_list)(nil) - -type _MsgRegisterERC20_3_list struct { - list *[]string -} - -func (x *_MsgRegisterERC20_3_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_MsgRegisterERC20_3_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfString((*x.list)[i]) -} - -func (x *_MsgRegisterERC20_3_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.String() - concreteValue := valueUnwrapped - (*x.list)[i] = concreteValue -} - -func (x *_MsgRegisterERC20_3_list) Append(value protoreflect.Value) { - valueUnwrapped := value.String() - concreteValue := valueUnwrapped - *x.list = append(*x.list, concreteValue) -} - -func (x *_MsgRegisterERC20_3_list) AppendMutable() protoreflect.Value { - panic(fmt.Errorf("AppendMutable can not be called on message MsgRegisterERC20 at list field Aliases as it is not of Message kind")) -} - -func (x *_MsgRegisterERC20_3_list) Truncate(n int) { - *x.list = (*x.list)[:n] -} - -func (x *_MsgRegisterERC20_3_list) NewElement() protoreflect.Value { - v := "" - return protoreflect.ValueOfString(v) -} - -func (x *_MsgRegisterERC20_3_list) IsValid() bool { - return x.list != nil -} - -var ( - md_MsgRegisterERC20 protoreflect.MessageDescriptor - fd_MsgRegisterERC20_authority protoreflect.FieldDescriptor - fd_MsgRegisterERC20_erc20address protoreflect.FieldDescriptor - fd_MsgRegisterERC20_aliases protoreflect.FieldDescriptor -) - -func init() { - file_fx_erc20_v1_legacy_proto_init() - md_MsgRegisterERC20 = File_fx_erc20_v1_legacy_proto.Messages().ByName("MsgRegisterERC20") - fd_MsgRegisterERC20_authority = md_MsgRegisterERC20.Fields().ByName("authority") - fd_MsgRegisterERC20_erc20address = md_MsgRegisterERC20.Fields().ByName("erc20address") - fd_MsgRegisterERC20_aliases = md_MsgRegisterERC20.Fields().ByName("aliases") -} - -var _ protoreflect.Message = (*fastReflection_MsgRegisterERC20)(nil) - -type fastReflection_MsgRegisterERC20 MsgRegisterERC20 - -func (x *MsgRegisterERC20) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgRegisterERC20)(x) -} - -func (x *MsgRegisterERC20) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[9] - 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_MsgRegisterERC20_messageType fastReflection_MsgRegisterERC20_messageType -var _ protoreflect.MessageType = fastReflection_MsgRegisterERC20_messageType{} - -type fastReflection_MsgRegisterERC20_messageType struct{} - -func (x fastReflection_MsgRegisterERC20_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgRegisterERC20)(nil) -} -func (x fastReflection_MsgRegisterERC20_messageType) New() protoreflect.Message { - return new(fastReflection_MsgRegisterERC20) -} -func (x fastReflection_MsgRegisterERC20_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRegisterERC20 -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgRegisterERC20) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRegisterERC20 -} - -// 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_MsgRegisterERC20) Type() protoreflect.MessageType { - return _fastReflection_MsgRegisterERC20_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgRegisterERC20) New() protoreflect.Message { - return new(fastReflection_MsgRegisterERC20) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgRegisterERC20) Interface() protoreflect.ProtoMessage { - return (*MsgRegisterERC20)(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_MsgRegisterERC20) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Authority != "" { - value := protoreflect.ValueOfString(x.Authority) - if !f(fd_MsgRegisterERC20_authority, value) { - return - } - } - if x.Erc20Address != "" { - value := protoreflect.ValueOfString(x.Erc20Address) - if !f(fd_MsgRegisterERC20_erc20address, value) { - return - } - } - if len(x.Aliases) != 0 { - value := protoreflect.ValueOfList(&_MsgRegisterERC20_3_list{list: &x.Aliases}) - if !f(fd_MsgRegisterERC20_aliases, 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_MsgRegisterERC20) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20.authority": - return x.Authority != "" - case "fx.erc20.v1.MsgRegisterERC20.erc20address": - return x.Erc20Address != "" - case "fx.erc20.v1.MsgRegisterERC20.aliases": - return len(x.Aliases) != 0 - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 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_MsgRegisterERC20) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20.authority": - x.Authority = "" - case "fx.erc20.v1.MsgRegisterERC20.erc20address": - x.Erc20Address = "" - case "fx.erc20.v1.MsgRegisterERC20.aliases": - x.Aliases = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 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_MsgRegisterERC20) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.erc20.v1.MsgRegisterERC20.authority": - value := x.Authority - return protoreflect.ValueOfString(value) - case "fx.erc20.v1.MsgRegisterERC20.erc20address": - value := x.Erc20Address - return protoreflect.ValueOfString(value) - case "fx.erc20.v1.MsgRegisterERC20.aliases": - if len(x.Aliases) == 0 { - return protoreflect.ValueOfList(&_MsgRegisterERC20_3_list{}) - } - listValue := &_MsgRegisterERC20_3_list{list: &x.Aliases} - return protoreflect.ValueOfList(listValue) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 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_MsgRegisterERC20) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20.authority": - x.Authority = value.Interface().(string) - case "fx.erc20.v1.MsgRegisterERC20.erc20address": - x.Erc20Address = value.Interface().(string) - case "fx.erc20.v1.MsgRegisterERC20.aliases": - lv := value.List() - clv := lv.(*_MsgRegisterERC20_3_list) - x.Aliases = *clv.list - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 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_MsgRegisterERC20) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20.aliases": - if x.Aliases == nil { - x.Aliases = []string{} - } - value := &_MsgRegisterERC20_3_list{list: &x.Aliases} - return protoreflect.ValueOfList(value) - case "fx.erc20.v1.MsgRegisterERC20.authority": - panic(fmt.Errorf("field authority of message fx.erc20.v1.MsgRegisterERC20 is not mutable")) - case "fx.erc20.v1.MsgRegisterERC20.erc20address": - panic(fmt.Errorf("field erc20address of message fx.erc20.v1.MsgRegisterERC20 is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 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_MsgRegisterERC20) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20.authority": - return protoreflect.ValueOfString("") - case "fx.erc20.v1.MsgRegisterERC20.erc20address": - return protoreflect.ValueOfString("") - case "fx.erc20.v1.MsgRegisterERC20.aliases": - list := []string{} - return protoreflect.ValueOfList(&_MsgRegisterERC20_3_list{list: &list}) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) - } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 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_MsgRegisterERC20) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.erc20.v1.MsgRegisterERC20", 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_MsgRegisterERC20) 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_MsgRegisterERC20) 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_MsgRegisterERC20) 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_MsgRegisterERC20) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgRegisterERC20) - 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)) - } - l = len(x.Erc20Address) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if len(x.Aliases) > 0 { - for _, s := range x.Aliases { - l = len(s) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgRegisterERC20) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.Aliases) > 0 { - for iNdEx := len(x.Aliases) - 1; iNdEx >= 0; iNdEx-- { - i -= len(x.Aliases[iNdEx]) - copy(dAtA[i:], x.Aliases[iNdEx]) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Aliases[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(x.Erc20Address) > 0 { - i -= len(x.Erc20Address) - copy(dAtA[i:], x.Erc20Address) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Erc20Address))) - i-- - dAtA[i] = 0x12 - } - 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().(*MsgRegisterERC20) - 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: MsgRegisterERC20: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRegisterERC20: 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 != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Erc20Address", 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.Erc20Address = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Aliases", 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.Aliases = append(x.Aliases, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } +var _ protoreflect.List = (*_MsgRegisterERC20_3_list)(nil) - 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, +type _MsgRegisterERC20_3_list struct { + list *[]string +} + +func (x *_MsgRegisterERC20_3_list) Len() int { + if x.list == nil { + return 0 } + return len(*x.list) +} + +func (x *_MsgRegisterERC20_3_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfString((*x.list)[i]) +} + +func (x *_MsgRegisterERC20_3_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.String() + concreteValue := valueUnwrapped + (*x.list)[i] = concreteValue +} + +func (x *_MsgRegisterERC20_3_list) Append(value protoreflect.Value) { + valueUnwrapped := value.String() + concreteValue := valueUnwrapped + *x.list = append(*x.list, concreteValue) +} + +func (x *_MsgRegisterERC20_3_list) AppendMutable() protoreflect.Value { + panic(fmt.Errorf("AppendMutable can not be called on message MsgRegisterERC20 at list field Aliases as it is not of Message kind")) +} + +func (x *_MsgRegisterERC20_3_list) Truncate(n int) { + *x.list = (*x.list)[:n] +} + +func (x *_MsgRegisterERC20_3_list) NewElement() protoreflect.Value { + v := "" + return protoreflect.ValueOfString(v) +} + +func (x *_MsgRegisterERC20_3_list) IsValid() bool { + return x.list != nil } var ( - md_MsgRegisterERC20Response protoreflect.MessageDescriptor - fd_MsgRegisterERC20Response_pair protoreflect.FieldDescriptor + md_MsgRegisterERC20 protoreflect.MessageDescriptor + fd_MsgRegisterERC20_authority protoreflect.FieldDescriptor + fd_MsgRegisterERC20_erc20address protoreflect.FieldDescriptor + fd_MsgRegisterERC20_aliases protoreflect.FieldDescriptor ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_MsgRegisterERC20Response = File_fx_erc20_v1_legacy_proto.Messages().ByName("MsgRegisterERC20Response") - fd_MsgRegisterERC20Response_pair = md_MsgRegisterERC20Response.Fields().ByName("pair") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_MsgRegisterERC20 = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("MsgRegisterERC20") + fd_MsgRegisterERC20_authority = md_MsgRegisterERC20.Fields().ByName("authority") + fd_MsgRegisterERC20_erc20address = md_MsgRegisterERC20.Fields().ByName("erc20address") + fd_MsgRegisterERC20_aliases = md_MsgRegisterERC20.Fields().ByName("aliases") } -var _ protoreflect.Message = (*fastReflection_MsgRegisterERC20Response)(nil) +var _ protoreflect.Message = (*fastReflection_MsgRegisterERC20)(nil) -type fastReflection_MsgRegisterERC20Response MsgRegisterERC20Response +type fastReflection_MsgRegisterERC20 MsgRegisterERC20 -func (x *MsgRegisterERC20Response) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgRegisterERC20Response)(x) +func (x *MsgRegisterERC20) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgRegisterERC20)(x) } -func (x *MsgRegisterERC20Response) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[10] +func (x *MsgRegisterERC20) slowProtoReflect() protoreflect.Message { + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5774,43 +4781,43 @@ func (x *MsgRegisterERC20Response) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_MsgRegisterERC20Response_messageType fastReflection_MsgRegisterERC20Response_messageType -var _ protoreflect.MessageType = fastReflection_MsgRegisterERC20Response_messageType{} +var _fastReflection_MsgRegisterERC20_messageType fastReflection_MsgRegisterERC20_messageType +var _ protoreflect.MessageType = fastReflection_MsgRegisterERC20_messageType{} -type fastReflection_MsgRegisterERC20Response_messageType struct{} +type fastReflection_MsgRegisterERC20_messageType struct{} -func (x fastReflection_MsgRegisterERC20Response_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgRegisterERC20Response)(nil) +func (x fastReflection_MsgRegisterERC20_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgRegisterERC20)(nil) } -func (x fastReflection_MsgRegisterERC20Response_messageType) New() protoreflect.Message { - return new(fastReflection_MsgRegisterERC20Response) +func (x fastReflection_MsgRegisterERC20_messageType) New() protoreflect.Message { + return new(fastReflection_MsgRegisterERC20) } -func (x fastReflection_MsgRegisterERC20Response_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRegisterERC20Response +func (x fastReflection_MsgRegisterERC20_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgRegisterERC20 } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_MsgRegisterERC20Response) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRegisterERC20Response +func (x *fastReflection_MsgRegisterERC20) Descriptor() protoreflect.MessageDescriptor { + return md_MsgRegisterERC20 } // 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_MsgRegisterERC20Response) Type() protoreflect.MessageType { - return _fastReflection_MsgRegisterERC20Response_messageType +func (x *fastReflection_MsgRegisterERC20) Type() protoreflect.MessageType { + return _fastReflection_MsgRegisterERC20_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgRegisterERC20Response) New() protoreflect.Message { - return new(fastReflection_MsgRegisterERC20Response) +func (x *fastReflection_MsgRegisterERC20) New() protoreflect.Message { + return new(fastReflection_MsgRegisterERC20) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgRegisterERC20Response) Interface() protoreflect.ProtoMessage { - return (*MsgRegisterERC20Response)(x) +func (x *fastReflection_MsgRegisterERC20) Interface() protoreflect.ProtoMessage { + return (*MsgRegisterERC20)(x) } // Range iterates over every populated field in an undefined order, @@ -5818,10 +4825,22 @@ func (x *fastReflection_MsgRegisterERC20Response) Interface() protoreflect.Proto // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_MsgRegisterERC20Response) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Pair != nil { - value := protoreflect.ValueOfMessage(x.Pair.ProtoReflect()) - if !f(fd_MsgRegisterERC20Response_pair, value) { +func (x *fastReflection_MsgRegisterERC20) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Authority != "" { + value := protoreflect.ValueOfString(x.Authority) + if !f(fd_MsgRegisterERC20_authority, value) { + return + } + } + if x.Erc20Address != "" { + value := protoreflect.ValueOfString(x.Erc20Address) + if !f(fd_MsgRegisterERC20_erc20address, value) { + return + } + } + if len(x.Aliases) != 0 { + value := protoreflect.ValueOfList(&_MsgRegisterERC20_3_list{list: &x.Aliases}) + if !f(fd_MsgRegisterERC20_aliases, value) { return } } @@ -5838,15 +4857,19 @@ func (x *fastReflection_MsgRegisterERC20Response) Range(f func(protoreflect.Fiel // 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_MsgRegisterERC20Response) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_MsgRegisterERC20) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20Response.pair": - return x.Pair != nil + case "fx.erc20.v1.MsgRegisterERC20.authority": + return x.Authority != "" + case "fx.erc20.v1.MsgRegisterERC20.erc20address": + return x.Erc20Address != "" + case "fx.erc20.v1.MsgRegisterERC20.aliases": + return len(x.Aliases) != 0 default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20Response")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20Response does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 does not contain field %s", fd.FullName())) } } @@ -5856,15 +4879,19 @@ func (x *fastReflection_MsgRegisterERC20Response) Has(fd protoreflect.FieldDescr // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgRegisterERC20Response) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_MsgRegisterERC20) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20Response.pair": - x.Pair = nil + case "fx.erc20.v1.MsgRegisterERC20.authority": + x.Authority = "" + case "fx.erc20.v1.MsgRegisterERC20.erc20address": + x.Erc20Address = "" + case "fx.erc20.v1.MsgRegisterERC20.aliases": + x.Aliases = nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20Response")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20Response does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 does not contain field %s", fd.FullName())) } } @@ -5874,16 +4901,25 @@ func (x *fastReflection_MsgRegisterERC20Response) Clear(fd protoreflect.FieldDes // 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_MsgRegisterERC20Response) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgRegisterERC20) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.erc20.v1.MsgRegisterERC20Response.pair": - value := x.Pair - return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "fx.erc20.v1.MsgRegisterERC20.authority": + value := x.Authority + return protoreflect.ValueOfString(value) + case "fx.erc20.v1.MsgRegisterERC20.erc20address": + value := x.Erc20Address + return protoreflect.ValueOfString(value) + case "fx.erc20.v1.MsgRegisterERC20.aliases": + if len(x.Aliases) == 0 { + return protoreflect.ValueOfList(&_MsgRegisterERC20_3_list{}) + } + listValue := &_MsgRegisterERC20_3_list{list: &x.Aliases} + return protoreflect.ValueOfList(listValue) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20Response")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20Response does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 does not contain field %s", descriptor.FullName())) } } @@ -5897,15 +4933,21 @@ func (x *fastReflection_MsgRegisterERC20Response) Get(descriptor protoreflect.Fi // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgRegisterERC20Response) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_MsgRegisterERC20) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20Response.pair": - x.Pair = value.Message().Interface().(*ERC20Token) + case "fx.erc20.v1.MsgRegisterERC20.authority": + x.Authority = value.Interface().(string) + case "fx.erc20.v1.MsgRegisterERC20.erc20address": + x.Erc20Address = value.Interface().(string) + case "fx.erc20.v1.MsgRegisterERC20.aliases": + lv := value.List() + clv := lv.(*_MsgRegisterERC20_3_list) + x.Aliases = *clv.list default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20Response")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20Response does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 does not contain field %s", fd.FullName())) } } @@ -5919,44 +4961,53 @@ func (x *fastReflection_MsgRegisterERC20Response) Set(fd protoreflect.FieldDescr // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgRegisterERC20Response) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgRegisterERC20) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20Response.pair": - if x.Pair == nil { - x.Pair = new(ERC20Token) + case "fx.erc20.v1.MsgRegisterERC20.aliases": + if x.Aliases == nil { + x.Aliases = []string{} } - return protoreflect.ValueOfMessage(x.Pair.ProtoReflect()) + value := &_MsgRegisterERC20_3_list{list: &x.Aliases} + return protoreflect.ValueOfList(value) + case "fx.erc20.v1.MsgRegisterERC20.authority": + panic(fmt.Errorf("field authority of message fx.erc20.v1.MsgRegisterERC20 is not mutable")) + case "fx.erc20.v1.MsgRegisterERC20.erc20address": + panic(fmt.Errorf("field erc20address of message fx.erc20.v1.MsgRegisterERC20 is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20Response")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20Response does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 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_MsgRegisterERC20Response) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgRegisterERC20) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.erc20.v1.MsgRegisterERC20Response.pair": - m := new(ERC20Token) - return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "fx.erc20.v1.MsgRegisterERC20.authority": + return protoreflect.ValueOfString("") + case "fx.erc20.v1.MsgRegisterERC20.erc20address": + return protoreflect.ValueOfString("") + case "fx.erc20.v1.MsgRegisterERC20.aliases": + list := []string{} + return protoreflect.ValueOfList(&_MsgRegisterERC20_3_list{list: &list}) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20Response")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.MsgRegisterERC20")) } - panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20Response does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.MsgRegisterERC20 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_MsgRegisterERC20Response) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_MsgRegisterERC20) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.erc20.v1.MsgRegisterERC20Response", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.erc20.v1.MsgRegisterERC20", d.FullName())) } panic("unreachable") } @@ -5964,7 +5015,7 @@ func (x *fastReflection_MsgRegisterERC20Response) WhichOneof(d protoreflect.Oneo // 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_MsgRegisterERC20Response) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_MsgRegisterERC20) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -5975,7 +5026,7 @@ func (x *fastReflection_MsgRegisterERC20Response) GetUnknown() protoreflect.RawF // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgRegisterERC20Response) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_MsgRegisterERC20) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -5987,7 +5038,7 @@ func (x *fastReflection_MsgRegisterERC20Response) SetUnknown(fields protoreflect // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_MsgRegisterERC20Response) IsValid() bool { +func (x *fastReflection_MsgRegisterERC20) IsValid() bool { return x != nil } @@ -5997,9 +5048,9 @@ func (x *fastReflection_MsgRegisterERC20Response) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_MsgRegisterERC20Response) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_MsgRegisterERC20) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgRegisterERC20Response) + x := input.Message.Interface().(*MsgRegisterERC20) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6011,10 +5062,20 @@ func (x *fastReflection_MsgRegisterERC20Response) ProtoMethods() *protoiface.Met var n int var l int _ = l - if x.Pair != nil { - l = options.Size(x.Pair) + l = len(x.Authority) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Erc20Address) + if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } + if len(x.Aliases) > 0 { + for _, s := range x.Aliases { + l = len(s) + n += 1 + l + runtime.Sov(uint64(l)) + } + } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -6025,7 +5086,7 @@ func (x *fastReflection_MsgRegisterERC20Response) ProtoMethods() *protoiface.Met } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgRegisterERC20Response) + x := input.Message.Interface().(*MsgRegisterERC20) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6044,17 +5105,26 @@ func (x *fastReflection_MsgRegisterERC20Response) ProtoMethods() *protoiface.Met i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.Pair != nil { - encoded, err := options.Marshal(x.Pair) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err + if len(x.Aliases) > 0 { + for iNdEx := len(x.Aliases) - 1; iNdEx >= 0; iNdEx-- { + i -= len(x.Aliases[iNdEx]) + copy(dAtA[i:], x.Aliases[iNdEx]) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Aliases[iNdEx]))) + i-- + dAtA[i] = 0x1a } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + } + if len(x.Erc20Address) > 0 { + i -= len(x.Erc20Address) + copy(dAtA[i:], x.Erc20Address) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Erc20Address))) + i-- + dAtA[i] = 0x12 + } + 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 } @@ -6069,7 +5139,7 @@ func (x *fastReflection_MsgRegisterERC20Response) ProtoMethods() *protoiface.Met }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgRegisterERC20Response) + x := input.Message.Interface().(*MsgRegisterERC20) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6101,17 +5171,17 @@ func (x *fastReflection_MsgRegisterERC20Response) ProtoMethods() *protoiface.Met fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRegisterERC20Response: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRegisterERC20: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRegisterERC20Response: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRegisterERC20: 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 Pair", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -6121,27 +5191,87 @@ func (x *fastReflection_MsgRegisterERC20Response) ProtoMethods() *protoiface.Met } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength } - postIndex := iNdEx + msglen + 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 } - if x.Pair == nil { - x.Pair = &ERC20Token{} + x.Authority = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Erc20Address", wireType) } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Pair); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + 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.Erc20Address = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Aliases", 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.Aliases = append(x.Aliases, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -6179,30 +5309,30 @@ func (x *fastReflection_MsgRegisterERC20Response) ProtoMethods() *protoiface.Met } var ( - md_LegacyParams protoreflect.MessageDescriptor - fd_LegacyParams_enable_erc20 protoreflect.FieldDescriptor - fd_LegacyParams_enable_evm_hook protoreflect.FieldDescriptor - fd_LegacyParams_ibc_timeout protoreflect.FieldDescriptor + md_LegacyERC20Params protoreflect.MessageDescriptor + fd_LegacyERC20Params_enable_erc20 protoreflect.FieldDescriptor + fd_LegacyERC20Params_enable_evm_hook protoreflect.FieldDescriptor + fd_LegacyERC20Params_ibc_timeout protoreflect.FieldDescriptor ) func init() { - file_fx_erc20_v1_legacy_proto_init() - md_LegacyParams = File_fx_erc20_v1_legacy_proto.Messages().ByName("LegacyParams") - fd_LegacyParams_enable_erc20 = md_LegacyParams.Fields().ByName("enable_erc20") - fd_LegacyParams_enable_evm_hook = md_LegacyParams.Fields().ByName("enable_evm_hook") - fd_LegacyParams_ibc_timeout = md_LegacyParams.Fields().ByName("ibc_timeout") + file_fx_erc20_v1_erc20_legacy_proto_init() + md_LegacyERC20Params = File_fx_erc20_v1_erc20_legacy_proto.Messages().ByName("LegacyERC20Params") + fd_LegacyERC20Params_enable_erc20 = md_LegacyERC20Params.Fields().ByName("enable_erc20") + fd_LegacyERC20Params_enable_evm_hook = md_LegacyERC20Params.Fields().ByName("enable_evm_hook") + fd_LegacyERC20Params_ibc_timeout = md_LegacyERC20Params.Fields().ByName("ibc_timeout") } -var _ protoreflect.Message = (*fastReflection_LegacyParams)(nil) +var _ protoreflect.Message = (*fastReflection_LegacyERC20Params)(nil) -type fastReflection_LegacyParams LegacyParams +type fastReflection_LegacyERC20Params LegacyERC20Params -func (x *LegacyParams) ProtoReflect() protoreflect.Message { - return (*fastReflection_LegacyParams)(x) +func (x *LegacyERC20Params) ProtoReflect() protoreflect.Message { + return (*fastReflection_LegacyERC20Params)(x) } -func (x *LegacyParams) slowProtoReflect() protoreflect.Message { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[11] +func (x *LegacyERC20Params) slowProtoReflect() protoreflect.Message { + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6213,43 +5343,43 @@ func (x *LegacyParams) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_LegacyParams_messageType fastReflection_LegacyParams_messageType -var _ protoreflect.MessageType = fastReflection_LegacyParams_messageType{} +var _fastReflection_LegacyERC20Params_messageType fastReflection_LegacyERC20Params_messageType +var _ protoreflect.MessageType = fastReflection_LegacyERC20Params_messageType{} -type fastReflection_LegacyParams_messageType struct{} +type fastReflection_LegacyERC20Params_messageType struct{} -func (x fastReflection_LegacyParams_messageType) Zero() protoreflect.Message { - return (*fastReflection_LegacyParams)(nil) +func (x fastReflection_LegacyERC20Params_messageType) Zero() protoreflect.Message { + return (*fastReflection_LegacyERC20Params)(nil) } -func (x fastReflection_LegacyParams_messageType) New() protoreflect.Message { - return new(fastReflection_LegacyParams) +func (x fastReflection_LegacyERC20Params_messageType) New() protoreflect.Message { + return new(fastReflection_LegacyERC20Params) } -func (x fastReflection_LegacyParams_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_LegacyParams +func (x fastReflection_LegacyERC20Params_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_LegacyERC20Params } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_LegacyParams) Descriptor() protoreflect.MessageDescriptor { - return md_LegacyParams +func (x *fastReflection_LegacyERC20Params) Descriptor() protoreflect.MessageDescriptor { + return md_LegacyERC20Params } // 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_LegacyParams) Type() protoreflect.MessageType { - return _fastReflection_LegacyParams_messageType +func (x *fastReflection_LegacyERC20Params) Type() protoreflect.MessageType { + return _fastReflection_LegacyERC20Params_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_LegacyParams) New() protoreflect.Message { - return new(fastReflection_LegacyParams) +func (x *fastReflection_LegacyERC20Params) New() protoreflect.Message { + return new(fastReflection_LegacyERC20Params) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_LegacyParams) Interface() protoreflect.ProtoMessage { - return (*LegacyParams)(x) +func (x *fastReflection_LegacyERC20Params) Interface() protoreflect.ProtoMessage { + return (*LegacyERC20Params)(x) } // Range iterates over every populated field in an undefined order, @@ -6257,22 +5387,22 @@ func (x *fastReflection_LegacyParams) Interface() protoreflect.ProtoMessage { // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_LegacyParams) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +func (x *fastReflection_LegacyERC20Params) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { if x.EnableErc20 != false { value := protoreflect.ValueOfBool(x.EnableErc20) - if !f(fd_LegacyParams_enable_erc20, value) { + if !f(fd_LegacyERC20Params_enable_erc20, value) { return } } if x.EnableEvmHook != false { value := protoreflect.ValueOfBool(x.EnableEvmHook) - if !f(fd_LegacyParams_enable_evm_hook, value) { + if !f(fd_LegacyERC20Params_enable_evm_hook, value) { return } } if x.IbcTimeout != nil { value := protoreflect.ValueOfMessage(x.IbcTimeout.ProtoReflect()) - if !f(fd_LegacyParams_ibc_timeout, value) { + if !f(fd_LegacyERC20Params_ibc_timeout, value) { return } } @@ -6289,19 +5419,19 @@ func (x *fastReflection_LegacyParams) Range(f func(protoreflect.FieldDescriptor, // 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_LegacyParams) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_LegacyERC20Params) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.erc20.v1.LegacyParams.enable_erc20": + case "fx.erc20.v1.LegacyERC20Params.enable_erc20": return x.EnableErc20 != false - case "fx.erc20.v1.LegacyParams.enable_evm_hook": + case "fx.erc20.v1.LegacyERC20Params.enable_evm_hook": return x.EnableEvmHook != false - case "fx.erc20.v1.LegacyParams.ibc_timeout": + case "fx.erc20.v1.LegacyERC20Params.ibc_timeout": return x.IbcTimeout != nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyERC20Params")) } - panic(fmt.Errorf("message fx.erc20.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.LegacyERC20Params does not contain field %s", fd.FullName())) } } @@ -6311,19 +5441,19 @@ func (x *fastReflection_LegacyParams) Has(fd protoreflect.FieldDescriptor) bool // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_LegacyParams) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_LegacyERC20Params) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.erc20.v1.LegacyParams.enable_erc20": + case "fx.erc20.v1.LegacyERC20Params.enable_erc20": x.EnableErc20 = false - case "fx.erc20.v1.LegacyParams.enable_evm_hook": + case "fx.erc20.v1.LegacyERC20Params.enable_evm_hook": x.EnableEvmHook = false - case "fx.erc20.v1.LegacyParams.ibc_timeout": + case "fx.erc20.v1.LegacyERC20Params.ibc_timeout": x.IbcTimeout = nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyERC20Params")) } - panic(fmt.Errorf("message fx.erc20.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.LegacyERC20Params does not contain field %s", fd.FullName())) } } @@ -6333,22 +5463,22 @@ func (x *fastReflection_LegacyParams) Clear(fd protoreflect.FieldDescriptor) { // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_LegacyParams) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_LegacyERC20Params) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.erc20.v1.LegacyParams.enable_erc20": + case "fx.erc20.v1.LegacyERC20Params.enable_erc20": value := x.EnableErc20 return protoreflect.ValueOfBool(value) - case "fx.erc20.v1.LegacyParams.enable_evm_hook": + case "fx.erc20.v1.LegacyERC20Params.enable_evm_hook": value := x.EnableEvmHook return protoreflect.ValueOfBool(value) - case "fx.erc20.v1.LegacyParams.ibc_timeout": + case "fx.erc20.v1.LegacyERC20Params.ibc_timeout": value := x.IbcTimeout return protoreflect.ValueOfMessage(value.ProtoReflect()) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyERC20Params")) } - panic(fmt.Errorf("message fx.erc20.v1.LegacyParams does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.LegacyERC20Params does not contain field %s", descriptor.FullName())) } } @@ -6362,19 +5492,19 @@ func (x *fastReflection_LegacyParams) Get(descriptor protoreflect.FieldDescripto // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_LegacyParams) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_LegacyERC20Params) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.erc20.v1.LegacyParams.enable_erc20": + case "fx.erc20.v1.LegacyERC20Params.enable_erc20": x.EnableErc20 = value.Bool() - case "fx.erc20.v1.LegacyParams.enable_evm_hook": + case "fx.erc20.v1.LegacyERC20Params.enable_evm_hook": x.EnableEvmHook = value.Bool() - case "fx.erc20.v1.LegacyParams.ibc_timeout": + case "fx.erc20.v1.LegacyERC20Params.ibc_timeout": x.IbcTimeout = value.Message().Interface().(*durationpb.Duration) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyERC20Params")) } - panic(fmt.Errorf("message fx.erc20.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.LegacyERC20Params does not contain field %s", fd.FullName())) } } @@ -6388,52 +5518,52 @@ func (x *fastReflection_LegacyParams) Set(fd protoreflect.FieldDescriptor, value // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_LegacyParams) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_LegacyERC20Params) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.erc20.v1.LegacyParams.ibc_timeout": + case "fx.erc20.v1.LegacyERC20Params.ibc_timeout": if x.IbcTimeout == nil { x.IbcTimeout = new(durationpb.Duration) } return protoreflect.ValueOfMessage(x.IbcTimeout.ProtoReflect()) - case "fx.erc20.v1.LegacyParams.enable_erc20": - panic(fmt.Errorf("field enable_erc20 of message fx.erc20.v1.LegacyParams is not mutable")) - case "fx.erc20.v1.LegacyParams.enable_evm_hook": - panic(fmt.Errorf("field enable_evm_hook of message fx.erc20.v1.LegacyParams is not mutable")) + case "fx.erc20.v1.LegacyERC20Params.enable_erc20": + panic(fmt.Errorf("field enable_erc20 of message fx.erc20.v1.LegacyERC20Params is not mutable")) + case "fx.erc20.v1.LegacyERC20Params.enable_evm_hook": + panic(fmt.Errorf("field enable_evm_hook of message fx.erc20.v1.LegacyERC20Params is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyERC20Params")) } - panic(fmt.Errorf("message fx.erc20.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.LegacyERC20Params 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_LegacyParams) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_LegacyERC20Params) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.erc20.v1.LegacyParams.enable_erc20": + case "fx.erc20.v1.LegacyERC20Params.enable_erc20": return protoreflect.ValueOfBool(false) - case "fx.erc20.v1.LegacyParams.enable_evm_hook": + case "fx.erc20.v1.LegacyERC20Params.enable_evm_hook": return protoreflect.ValueOfBool(false) - case "fx.erc20.v1.LegacyParams.ibc_timeout": + case "fx.erc20.v1.LegacyERC20Params.ibc_timeout": m := new(durationpb.Duration) return protoreflect.ValueOfMessage(m.ProtoReflect()) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.erc20.v1.LegacyERC20Params")) } - panic(fmt.Errorf("message fx.erc20.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.erc20.v1.LegacyERC20Params 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_LegacyParams) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_LegacyERC20Params) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.erc20.v1.LegacyParams", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.erc20.v1.LegacyERC20Params", d.FullName())) } panic("unreachable") } @@ -6441,7 +5571,7 @@ func (x *fastReflection_LegacyParams) WhichOneof(d protoreflect.OneofDescriptor) // 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_LegacyParams) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_LegacyERC20Params) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -6452,7 +5582,7 @@ func (x *fastReflection_LegacyParams) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_LegacyParams) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_LegacyERC20Params) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -6464,7 +5594,7 @@ func (x *fastReflection_LegacyParams) SetUnknown(fields protoreflect.RawFields) // 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_LegacyParams) IsValid() bool { +func (x *fastReflection_LegacyERC20Params) IsValid() bool { return x != nil } @@ -6474,9 +5604,9 @@ func (x *fastReflection_LegacyParams) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_LegacyERC20Params) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*LegacyParams) + x := input.Message.Interface().(*LegacyERC20Params) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6508,7 +5638,7 @@ func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*LegacyParams) + x := input.Message.Interface().(*LegacyERC20Params) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6572,7 +5702,7 @@ func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*LegacyParams) + x := input.Message.Interface().(*LegacyERC20Params) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6604,10 +5734,10 @@ func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: LegacyParams: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: LegacyERC20Params: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: LegacyParams: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: LegacyERC20Params: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -6725,7 +5855,7 @@ func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { // versions: // protoc-gen-go v1.27.0 // protoc (unknown) -// source: fx/erc20/v1/legacy.proto +// source: fx/erc20/v1/erc20_legacy.proto const ( // Verify that this generated code is sufficiently up-to-date. @@ -6749,7 +5879,7 @@ type MsgConvertERC20 struct { func (x *MsgConvertERC20) Reset() { *x = MsgConvertERC20{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[0] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6763,7 +5893,7 @@ func (*MsgConvertERC20) ProtoMessage() {} // Deprecated: Use MsgConvertERC20.ProtoReflect.Descriptor instead. func (*MsgConvertERC20) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{0} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{0} } func (x *MsgConvertERC20) GetContractAddress() string { @@ -6809,7 +5939,7 @@ type MsgConvertDenom struct { func (x *MsgConvertDenom) Reset() { *x = MsgConvertDenom{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[1] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6823,7 +5953,7 @@ func (*MsgConvertDenom) ProtoMessage() {} // Deprecated: Use MsgConvertDenom.ProtoReflect.Descriptor instead. func (*MsgConvertDenom) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{1} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{1} } func (x *MsgConvertDenom) GetSender() string { @@ -6868,7 +5998,7 @@ type MsgUpdateDenomAlias struct { func (x *MsgUpdateDenomAlias) Reset() { *x = MsgUpdateDenomAlias{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[2] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6882,7 +6012,7 @@ func (*MsgUpdateDenomAlias) ProtoMessage() {} // Deprecated: Use MsgUpdateDenomAlias.ProtoReflect.Descriptor instead. func (*MsgUpdateDenomAlias) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{2} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{2} } func (x *MsgUpdateDenomAlias) GetAuthority() string { @@ -6920,7 +6050,7 @@ type RegisterCoinProposal struct { func (x *RegisterCoinProposal) Reset() { *x = RegisterCoinProposal{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[3] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6934,7 +6064,7 @@ func (*RegisterCoinProposal) ProtoMessage() {} // Deprecated: Use RegisterCoinProposal.ProtoReflect.Descriptor instead. func (*RegisterCoinProposal) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{3} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{3} } func (x *RegisterCoinProposal) GetTitle() string { @@ -6973,7 +6103,7 @@ type RegisterERC20Proposal struct { func (x *RegisterERC20Proposal) Reset() { *x = RegisterERC20Proposal{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[4] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6987,7 +6117,7 @@ func (*RegisterERC20Proposal) ProtoMessage() {} // Deprecated: Use RegisterERC20Proposal.ProtoReflect.Descriptor instead. func (*RegisterERC20Proposal) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{4} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{4} } func (x *RegisterERC20Proposal) GetTitle() string { @@ -7032,7 +6162,7 @@ type ToggleTokenConversionProposal struct { func (x *ToggleTokenConversionProposal) Reset() { *x = ToggleTokenConversionProposal{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[5] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7046,7 +6176,7 @@ func (*ToggleTokenConversionProposal) ProtoMessage() {} // Deprecated: Use ToggleTokenConversionProposal.ProtoReflect.Descriptor instead. func (*ToggleTokenConversionProposal) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{5} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{5} } func (x *ToggleTokenConversionProposal) GetTitle() string { @@ -7085,7 +6215,7 @@ type UpdateDenomAliasProposal struct { func (x *UpdateDenomAliasProposal) Reset() { *x = UpdateDenomAliasProposal{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[6] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7099,7 +6229,7 @@ func (*UpdateDenomAliasProposal) ProtoMessage() {} // Deprecated: Use UpdateDenomAliasProposal.ProtoReflect.Descriptor instead. func (*UpdateDenomAliasProposal) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{6} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{6} } func (x *UpdateDenomAliasProposal) GetTitle() string { @@ -7143,7 +6273,7 @@ type MsgRegisterCoin struct { func (x *MsgRegisterCoin) Reset() { *x = MsgRegisterCoin{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[7] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7157,7 +6287,7 @@ func (*MsgRegisterCoin) ProtoMessage() {} // Deprecated: Use MsgRegisterCoin.ProtoReflect.Descriptor instead. func (*MsgRegisterCoin) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{7} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{7} } func (x *MsgRegisterCoin) GetAuthority() string { @@ -7174,42 +6304,6 @@ func (x *MsgRegisterCoin) GetMetadata() *v1beta11.Metadata { return nil } -// Deprecated: Do not use. -type MsgRegisterCoinResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pair *ERC20Token `protobuf:"bytes,1,opt,name=pair,proto3" json:"pair,omitempty"` -} - -func (x *MsgRegisterCoinResponse) Reset() { - *x = MsgRegisterCoinResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgRegisterCoinResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgRegisterCoinResponse) ProtoMessage() {} - -// Deprecated: Use MsgRegisterCoinResponse.ProtoReflect.Descriptor instead. -func (*MsgRegisterCoinResponse) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{8} -} - -func (x *MsgRegisterCoinResponse) GetPair() *ERC20Token { - if x != nil { - return x.Pair - } - return nil -} - // Deprecated: Do not use. type MsgRegisterERC20 struct { state protoimpl.MessageState @@ -7224,7 +6318,7 @@ type MsgRegisterERC20 struct { func (x *MsgRegisterERC20) Reset() { *x = MsgRegisterERC20{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[9] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7238,7 +6332,7 @@ func (*MsgRegisterERC20) ProtoMessage() {} // Deprecated: Use MsgRegisterERC20.ProtoReflect.Descriptor instead. func (*MsgRegisterERC20) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{9} + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{8} } func (x *MsgRegisterERC20) GetAuthority() string { @@ -7263,42 +6357,7 @@ func (x *MsgRegisterERC20) GetAliases() []string { } // Deprecated: Do not use. -type MsgRegisterERC20Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pair *ERC20Token `protobuf:"bytes,1,opt,name=pair,proto3" json:"pair,omitempty"` -} - -func (x *MsgRegisterERC20Response) Reset() { - *x = MsgRegisterERC20Response{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgRegisterERC20Response) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgRegisterERC20Response) ProtoMessage() {} - -// Deprecated: Use MsgRegisterERC20Response.ProtoReflect.Descriptor instead. -func (*MsgRegisterERC20Response) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{10} -} - -func (x *MsgRegisterERC20Response) GetPair() *ERC20Token { - if x != nil { - return x.Pair - } - return nil -} - -type LegacyParams struct { +type LegacyERC20Params struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -7308,213 +6367,203 @@ type LegacyParams struct { IbcTimeout *durationpb.Duration `protobuf:"bytes,3,opt,name=ibc_timeout,json=ibcTimeout,proto3" json:"ibc_timeout,omitempty"` } -func (x *LegacyParams) Reset() { - *x = LegacyParams{} +func (x *LegacyERC20Params) Reset() { + *x = LegacyERC20Params{} if protoimpl.UnsafeEnabled { - mi := &file_fx_erc20_v1_legacy_proto_msgTypes[11] + mi := &file_fx_erc20_v1_erc20_legacy_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *LegacyParams) String() string { +func (x *LegacyERC20Params) String() string { return protoimpl.X.MessageStringOf(x) } -func (*LegacyParams) ProtoMessage() {} +func (*LegacyERC20Params) ProtoMessage() {} -// Deprecated: Use LegacyParams.ProtoReflect.Descriptor instead. -func (*LegacyParams) Descriptor() ([]byte, []int) { - return file_fx_erc20_v1_legacy_proto_rawDescGZIP(), []int{11} +// Deprecated: Use LegacyERC20Params.ProtoReflect.Descriptor instead. +func (*LegacyERC20Params) Descriptor() ([]byte, []int) { + return file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP(), []int{9} } -func (x *LegacyParams) GetEnableErc20() bool { +func (x *LegacyERC20Params) GetEnableErc20() bool { if x != nil { return x.EnableErc20 } return false } -func (x *LegacyParams) GetEnableEvmHook() bool { +func (x *LegacyERC20Params) GetEnableEvmHook() bool { if x != nil { return x.EnableEvmHook } return false } -func (x *LegacyParams) GetIbcTimeout() *durationpb.Duration { +func (x *LegacyERC20Params) GetIbcTimeout() *durationpb.Duration { if x != nil { return x.IbcTimeout } return nil } -var File_fx_erc20_v1_legacy_proto protoreflect.FileDescriptor - -var file_fx_erc20_v1_legacy_proto_rawDesc = []byte{ - 0x0a, 0x18, 0x66, 0x78, 0x2f, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x66, 0x78, 0x2e, 0x65, - 0x72, 0x63, 0x32, 0x30, 0x2e, 0x76, 0x31, 0x1a, 0x1e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x62, 0x61, 0x6e, 0x6b, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x62, 0x61, 0x6e, - 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x62, 0x61, 0x73, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x69, - 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, - 0x6d, 0x73, 0x67, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x1a, 0x19, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x66, 0x78, 0x2f, - 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, - 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, - 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xde, 0x01, - 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x45, 0x52, 0x43, 0x32, - 0x30, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x43, 0x0a, 0x06, - 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, - 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, - 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, - 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x3a, 0x27, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x15, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x4d, - 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x45, 0x52, 0x43, 0x32, 0x30, 0x22, 0xbb, - 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x44, 0x65, 0x6e, - 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x33, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, - 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, - 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x3a, 0x27, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x15, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x4d, 0x73, 0x67, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0xa9, 0x01, 0x0a, - 0x13, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x41, - 0x6c, 0x69, 0x61, 0x73, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, - 0x6f, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x3a, 0x2e, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, - 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x19, 0x65, - 0x72, 0x63, 0x32, 0x30, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, - 0x6e, 0x6f, 0x6d, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x97, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, - 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x08, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, - 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x06, 0x18, 0x01, 0xe8, 0xa0, - 0x1f, 0x00, 0x22, 0x95, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, - 0x52, 0x43, 0x32, 0x30, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x72, 0x63, 0x32, 0x30, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x63, 0x32, - 0x30, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, - 0x73, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, - 0x65, 0x73, 0x3a, 0x06, 0x18, 0x01, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x75, 0x0a, 0x1d, 0x54, 0x6f, - 0x67, 0x67, 0x6c, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, - 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x3a, 0x06, 0x18, 0x01, 0xe8, 0xa0, 0x1f, - 0x01, 0x22, 0x86, 0x01, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x6f, - 0x6d, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, +var File_fx_erc20_v1_erc20_legacy_proto protoreflect.FileDescriptor + +var file_fx_erc20_v1_erc20_legacy_proto_rawDesc = []byte{ + 0x0a, 0x1e, 0x66, 0x78, 0x2f, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x72, + 0x63, 0x32, 0x30, 0x5f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x12, 0x0b, 0x66, 0x78, 0x2e, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2e, 0x76, 0x31, 0x1a, 0x1e, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x6e, 0x6b, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2f, 0x62, 0x61, 0x6e, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6d, 0x73, 0x67, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x73, 0x67, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, + 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, + 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xde, 0x01, 0x0a, 0x0f, 0x4d, + 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x45, 0x52, 0x43, 0x32, 0x30, 0x12, 0x29, + 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x43, 0x0a, 0x06, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, + 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, + 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x3a, 0x27, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, + 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x15, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x4d, 0x73, 0x67, 0x43, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x45, 0x52, 0x43, 0x32, 0x30, 0x22, 0xbb, 0x01, 0x0a, 0x0f, + 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, + 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, + 0x76, 0x65, 0x72, 0x12, 0x33, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, + 0x1f, 0x00, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x3a, 0x27, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, + 0xe7, 0xb0, 0x2a, 0x15, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, + 0x76, 0x65, 0x72, 0x74, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0xa9, 0x01, 0x0a, 0x13, 0x4d, 0x73, + 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x41, 0x6c, 0x69, 0x61, + 0x73, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, + 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, + 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, + 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x61, 0x6c, 0x69, 0x61, 0x73, 0x3a, 0x2e, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x19, 0x65, 0x72, 0x63, 0x32, + 0x30, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, + 0x41, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x97, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, + 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x14, 0x0a, 0x05, - 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, - 0x61, 0x73, 0x3a, 0x06, 0x18, 0x01, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0xb6, 0x01, 0x0a, 0x0f, 0x4d, - 0x73, 0x67, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x36, - 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, - 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x08, 0x6d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x2a, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x09, - 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x15, 0x65, 0x72, - 0x63, 0x32, 0x30, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, - 0x6f, 0x69, 0x6e, 0x22, 0x50, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, - 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, - 0x0a, 0x04, 0x70, 0x61, 0x69, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, - 0x78, 0x2e, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x52, 0x43, 0x32, 0x30, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x04, 0x70, 0x61, 0x69, - 0x72, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xb5, 0x01, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x52, 0x43, 0x32, 0x30, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, - 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, - 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, - 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x72, 0x63, 0x32, 0x30, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x63, 0x32, 0x30, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, - 0x3a, 0x2b, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, - 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x16, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x4d, 0x73, 0x67, - 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x52, 0x43, 0x32, 0x30, 0x22, 0x51, 0x0a, - 0x18, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x52, 0x43, 0x32, - 0x30, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x70, 0x61, 0x69, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, 0x78, 0x2e, 0x65, 0x72, 0x63, - 0x32, 0x30, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x52, 0x43, 0x32, 0x30, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x04, 0x70, 0x61, 0x69, 0x72, 0x3a, 0x02, 0x18, 0x01, - 0x22, 0xfb, 0x01, 0x0a, 0x0c, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x12, 0x3a, 0x0a, 0x0c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x72, 0x63, 0x32, - 0x30, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x17, 0xf2, 0xde, 0x1f, 0x13, 0x79, 0x61, 0x6d, - 0x6c, 0x3a, 0x22, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x72, 0x63, 0x32, 0x30, 0x22, - 0x52, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x72, 0x63, 0x32, 0x30, 0x12, 0x53, 0x0a, - 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x76, 0x6d, 0x5f, 0x68, 0x6f, 0x6f, 0x6b, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x2b, 0xe2, 0xde, 0x1f, 0x0d, 0x45, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x45, 0x56, 0x4d, 0x48, 0x6f, 0x6f, 0x6b, 0xf2, 0xde, 0x1f, 0x16, 0x79, 0x61, 0x6d, - 0x6c, 0x3a, 0x22, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x76, 0x6d, 0x5f, 0x68, 0x6f, - 0x6f, 0x6b, 0x22, 0x52, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x76, 0x6d, 0x48, 0x6f, - 0x6f, 0x6b, 0x12, 0x5a, 0x0a, 0x0b, 0x69, 0x62, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x42, 0x1e, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x12, 0x79, 0x61, 0x6d, 0x6c, - 0x3a, 0x22, 0x69, 0x62, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22, 0x98, 0xdf, - 0x1f, 0x01, 0x52, 0x0a, 0x69, 0x62, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x42, 0x92, - 0x01, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2e, - 0x76, 0x31, 0x42, 0x0b, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x24, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, - 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x76, 0x31, 0x3b, - 0x65, 0x72, 0x63, 0x32, 0x30, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, 0x45, 0x58, 0xaa, 0x02, 0x0b, - 0x46, 0x78, 0x2e, 0x45, 0x72, 0x63, 0x32, 0x30, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0b, 0x46, 0x78, - 0x5c, 0x45, 0x72, 0x63, 0x32, 0x30, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x17, 0x46, 0x78, 0x5c, 0x45, - 0x72, 0x63, 0x32, 0x30, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0xea, 0x02, 0x0d, 0x46, 0x78, 0x3a, 0x3a, 0x45, 0x72, 0x63, 0x32, 0x30, 0x3a, - 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x06, 0x18, 0x01, 0xe8, 0xa0, 0x1f, 0x00, 0x22, + 0x95, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x52, 0x43, 0x32, + 0x30, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x72, 0x63, 0x32, 0x30, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x63, 0x32, 0x30, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x3a, + 0x06, 0x18, 0x01, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x75, 0x0a, 0x1d, 0x54, 0x6f, 0x67, 0x67, 0x6c, + 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x3a, 0x06, 0x18, 0x01, 0xe8, 0xa0, 0x1f, 0x01, 0x22, 0x86, + 0x01, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x41, 0x6c, + 0x69, 0x61, 0x73, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, + 0x61, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x3a, + 0x06, 0x18, 0x01, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0xb6, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x52, + 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, 0x12, 0x36, 0x0a, 0x09, 0x61, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, + 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x12, 0x3f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, + 0x61, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x3a, 0x2a, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, + 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x15, 0x65, 0x72, 0x63, 0x32, 0x30, + 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x69, 0x6e, + 0x22, 0xb5, 0x01, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, + 0x45, 0x52, 0x43, 0x32, 0x30, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, + 0x0c, 0x65, 0x72, 0x63, 0x32, 0x30, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x63, 0x32, 0x30, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x3a, 0x2b, 0x18, 0x01, 0x82, + 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, + 0x2a, 0x16, 0x65, 0x72, 0x63, 0x32, 0x30, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x65, 0x72, 0x45, 0x52, 0x43, 0x32, 0x30, 0x22, 0x84, 0x02, 0x0a, 0x11, 0x4c, 0x65, 0x67, + 0x61, 0x63, 0x79, 0x45, 0x52, 0x43, 0x32, 0x30, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x3a, + 0x0a, 0x0c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x72, 0x63, 0x32, 0x30, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x42, 0x17, 0xf2, 0xde, 0x1f, 0x13, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x72, 0x63, 0x32, 0x30, 0x22, 0x52, 0x0b, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x72, 0x63, 0x32, 0x30, 0x12, 0x53, 0x0a, 0x0f, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x76, 0x6d, 0x5f, 0x68, 0x6f, 0x6f, 0x6b, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x42, 0x2b, 0xe2, 0xde, 0x1f, 0x0d, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x45, + 0x56, 0x4d, 0x48, 0x6f, 0x6f, 0x6b, 0xf2, 0xde, 0x1f, 0x16, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x76, 0x6d, 0x5f, 0x68, 0x6f, 0x6f, 0x6b, 0x22, + 0x52, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x76, 0x6d, 0x48, 0x6f, 0x6f, 0x6b, 0x12, + 0x5a, 0x0a, 0x0b, 0x69, 0x62, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, + 0x1e, 0xc8, 0xde, 0x1f, 0x00, 0xf2, 0xde, 0x1f, 0x12, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x69, + 0x62, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22, 0x98, 0xdf, 0x1f, 0x01, 0x52, + 0x0a, 0x69, 0x62, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x3a, 0x02, 0x18, 0x01, 0x42, + 0x97, 0x01, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x65, 0x72, 0x63, 0x32, 0x30, + 0x2e, 0x76, 0x31, 0x42, 0x10, 0x45, 0x72, 0x63, 0x32, 0x30, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x24, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, + 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x65, 0x72, 0x63, + 0x32, 0x30, 0x2f, 0x76, 0x31, 0x3b, 0x65, 0x72, 0x63, 0x32, 0x30, 0x76, 0x31, 0xa2, 0x02, 0x03, + 0x46, 0x45, 0x58, 0xaa, 0x02, 0x0b, 0x46, 0x78, 0x2e, 0x45, 0x72, 0x63, 0x32, 0x30, 0x2e, 0x56, + 0x31, 0xca, 0x02, 0x0b, 0x46, 0x78, 0x5c, 0x45, 0x72, 0x63, 0x32, 0x30, 0x5c, 0x56, 0x31, 0xe2, + 0x02, 0x17, 0x46, 0x78, 0x5c, 0x45, 0x72, 0x63, 0x32, 0x30, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, + 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0d, 0x46, 0x78, 0x3a, 0x3a, + 0x45, 0x72, 0x63, 0x32, 0x30, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( - file_fx_erc20_v1_legacy_proto_rawDescOnce sync.Once - file_fx_erc20_v1_legacy_proto_rawDescData = file_fx_erc20_v1_legacy_proto_rawDesc + file_fx_erc20_v1_erc20_legacy_proto_rawDescOnce sync.Once + file_fx_erc20_v1_erc20_legacy_proto_rawDescData = file_fx_erc20_v1_erc20_legacy_proto_rawDesc ) -func file_fx_erc20_v1_legacy_proto_rawDescGZIP() []byte { - file_fx_erc20_v1_legacy_proto_rawDescOnce.Do(func() { - file_fx_erc20_v1_legacy_proto_rawDescData = protoimpl.X.CompressGZIP(file_fx_erc20_v1_legacy_proto_rawDescData) +func file_fx_erc20_v1_erc20_legacy_proto_rawDescGZIP() []byte { + file_fx_erc20_v1_erc20_legacy_proto_rawDescOnce.Do(func() { + file_fx_erc20_v1_erc20_legacy_proto_rawDescData = protoimpl.X.CompressGZIP(file_fx_erc20_v1_erc20_legacy_proto_rawDescData) }) - return file_fx_erc20_v1_legacy_proto_rawDescData + return file_fx_erc20_v1_erc20_legacy_proto_rawDescData } -var file_fx_erc20_v1_legacy_proto_msgTypes = make([]protoimpl.MessageInfo, 12) -var file_fx_erc20_v1_legacy_proto_goTypes = []interface{}{ +var file_fx_erc20_v1_erc20_legacy_proto_msgTypes = make([]protoimpl.MessageInfo, 10) +var file_fx_erc20_v1_erc20_legacy_proto_goTypes = []interface{}{ (*MsgConvertERC20)(nil), // 0: fx.erc20.v1.MsgConvertERC20 (*MsgConvertDenom)(nil), // 1: fx.erc20.v1.MsgConvertDenom (*MsgUpdateDenomAlias)(nil), // 2: fx.erc20.v1.MsgUpdateDenomAlias @@ -7523,37 +6572,31 @@ var file_fx_erc20_v1_legacy_proto_goTypes = []interface{}{ (*ToggleTokenConversionProposal)(nil), // 5: fx.erc20.v1.ToggleTokenConversionProposal (*UpdateDenomAliasProposal)(nil), // 6: fx.erc20.v1.UpdateDenomAliasProposal (*MsgRegisterCoin)(nil), // 7: fx.erc20.v1.MsgRegisterCoin - (*MsgRegisterCoinResponse)(nil), // 8: fx.erc20.v1.MsgRegisterCoinResponse - (*MsgRegisterERC20)(nil), // 9: fx.erc20.v1.MsgRegisterERC20 - (*MsgRegisterERC20Response)(nil), // 10: fx.erc20.v1.MsgRegisterERC20Response - (*LegacyParams)(nil), // 11: fx.erc20.v1.LegacyParams - (*v1beta1.Coin)(nil), // 12: cosmos.base.v1beta1.Coin - (*v1beta11.Metadata)(nil), // 13: cosmos.bank.v1beta1.Metadata - (*ERC20Token)(nil), // 14: fx.erc20.v1.ERC20Token - (*durationpb.Duration)(nil), // 15: google.protobuf.Duration -} -var file_fx_erc20_v1_legacy_proto_depIdxs = []int32{ - 12, // 0: fx.erc20.v1.MsgConvertDenom.coin:type_name -> cosmos.base.v1beta1.Coin - 13, // 1: fx.erc20.v1.RegisterCoinProposal.metadata:type_name -> cosmos.bank.v1beta1.Metadata - 13, // 2: fx.erc20.v1.MsgRegisterCoin.metadata:type_name -> cosmos.bank.v1beta1.Metadata - 14, // 3: fx.erc20.v1.MsgRegisterCoinResponse.pair:type_name -> fx.erc20.v1.ERC20Token - 14, // 4: fx.erc20.v1.MsgRegisterERC20Response.pair:type_name -> fx.erc20.v1.ERC20Token - 15, // 5: fx.erc20.v1.LegacyParams.ibc_timeout:type_name -> google.protobuf.Duration - 6, // [6:6] is the sub-list for method output_type - 6, // [6:6] is the sub-list for method input_type - 6, // [6:6] is the sub-list for extension type_name - 6, // [6:6] is the sub-list for extension extendee - 0, // [0:6] is the sub-list for field type_name -} - -func init() { file_fx_erc20_v1_legacy_proto_init() } -func file_fx_erc20_v1_legacy_proto_init() { - if File_fx_erc20_v1_legacy_proto != nil { + (*MsgRegisterERC20)(nil), // 8: fx.erc20.v1.MsgRegisterERC20 + (*LegacyERC20Params)(nil), // 9: fx.erc20.v1.LegacyERC20Params + (*v1beta1.Coin)(nil), // 10: cosmos.base.v1beta1.Coin + (*v1beta11.Metadata)(nil), // 11: cosmos.bank.v1beta1.Metadata + (*durationpb.Duration)(nil), // 12: google.protobuf.Duration +} +var file_fx_erc20_v1_erc20_legacy_proto_depIdxs = []int32{ + 10, // 0: fx.erc20.v1.MsgConvertDenom.coin:type_name -> cosmos.base.v1beta1.Coin + 11, // 1: fx.erc20.v1.RegisterCoinProposal.metadata:type_name -> cosmos.bank.v1beta1.Metadata + 11, // 2: fx.erc20.v1.MsgRegisterCoin.metadata:type_name -> cosmos.bank.v1beta1.Metadata + 12, // 3: fx.erc20.v1.LegacyERC20Params.ibc_timeout:type_name -> google.protobuf.Duration + 4, // [4:4] is the sub-list for method output_type + 4, // [4:4] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_fx_erc20_v1_erc20_legacy_proto_init() } +func file_fx_erc20_v1_erc20_legacy_proto_init() { + if File_fx_erc20_v1_erc20_legacy_proto != nil { return } - file_fx_erc20_v1_types_proto_init() if !protoimpl.UnsafeEnabled { - file_fx_erc20_v1_legacy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgConvertERC20); i { case 0: return &v.state @@ -7565,7 +6608,7 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgConvertDenom); i { case 0: return &v.state @@ -7577,7 +6620,7 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateDenomAlias); i { case 0: return &v.state @@ -7589,7 +6632,7 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RegisterCoinProposal); i { case 0: return &v.state @@ -7601,7 +6644,7 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RegisterERC20Proposal); i { case 0: return &v.state @@ -7613,7 +6656,7 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ToggleTokenConversionProposal); i { case 0: return &v.state @@ -7625,7 +6668,7 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateDenomAliasProposal); i { case 0: return &v.state @@ -7637,7 +6680,7 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgRegisterCoin); i { case 0: return &v.state @@ -7649,19 +6692,7 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgRegisterCoinResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_erc20_v1_legacy_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgRegisterERC20); i { case 0: return &v.state @@ -7673,20 +6704,8 @@ func file_fx_erc20_v1_legacy_proto_init() { return nil } } - file_fx_erc20_v1_legacy_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgRegisterERC20Response); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_erc20_v1_legacy_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LegacyParams); i { + file_fx_erc20_v1_erc20_legacy_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LegacyERC20Params); i { case 0: return &v.state case 1: @@ -7702,18 +6721,18 @@ func file_fx_erc20_v1_legacy_proto_init() { out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_fx_erc20_v1_legacy_proto_rawDesc, + RawDescriptor: file_fx_erc20_v1_erc20_legacy_proto_rawDesc, NumEnums: 0, - NumMessages: 12, + NumMessages: 10, NumExtensions: 0, NumServices: 0, }, - GoTypes: file_fx_erc20_v1_legacy_proto_goTypes, - DependencyIndexes: file_fx_erc20_v1_legacy_proto_depIdxs, - MessageInfos: file_fx_erc20_v1_legacy_proto_msgTypes, + GoTypes: file_fx_erc20_v1_erc20_legacy_proto_goTypes, + DependencyIndexes: file_fx_erc20_v1_erc20_legacy_proto_depIdxs, + MessageInfos: file_fx_erc20_v1_erc20_legacy_proto_msgTypes, }.Build() - File_fx_erc20_v1_legacy_proto = out.File - file_fx_erc20_v1_legacy_proto_rawDesc = nil - file_fx_erc20_v1_legacy_proto_goTypes = nil - file_fx_erc20_v1_legacy_proto_depIdxs = nil + File_fx_erc20_v1_erc20_legacy_proto = out.File + file_fx_erc20_v1_erc20_legacy_proto_rawDesc = nil + file_fx_erc20_v1_erc20_legacy_proto_goTypes = nil + file_fx_erc20_v1_erc20_legacy_proto_depIdxs = nil } diff --git a/api/fx/gov/v1/gov_legacy.pulsar.go b/api/fx/gov/v1/gov_legacy.pulsar.go index 07d9a3a0..8127d855 100644 --- a/api/fx/gov/v1/gov_legacy.pulsar.go +++ b/api/fx/gov/v1/gov_legacy.pulsar.go @@ -1190,7 +1190,7 @@ func (x *fastReflection_MsgUpdateParams) Set(fd protoreflect.FieldDescriptor, va case "fx.gov.v1.MsgUpdateParams.authority": x.Authority = value.Interface().(string) case "fx.gov.v1.MsgUpdateParams.params": - x.Params = value.Message().Interface().(*LegacyParams) + x.Params = value.Message().Interface().(*LegacyGovParams) default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.MsgUpdateParams")) @@ -1213,7 +1213,7 @@ func (x *fastReflection_MsgUpdateParams) Mutable(fd protoreflect.FieldDescriptor switch fd.FullName() { case "fx.gov.v1.MsgUpdateParams.params": if x.Params == nil { - x.Params = new(LegacyParams) + x.Params = new(LegacyGovParams) } return protoreflect.ValueOfMessage(x.Params.ProtoReflect()) case "fx.gov.v1.MsgUpdateParams.authority": @@ -1234,7 +1234,7 @@ func (x *fastReflection_MsgUpdateParams) NewField(fd protoreflect.FieldDescripto case "fx.gov.v1.MsgUpdateParams.authority": return protoreflect.ValueOfString("") case "fx.gov.v1.MsgUpdateParams.params": - m := new(LegacyParams) + m := new(LegacyGovParams) return protoreflect.ValueOfMessage(m.ProtoReflect()) default: if fd.IsExtension() { @@ -1474,7 +1474,7 @@ func (x *fastReflection_MsgUpdateParams) ProtoMethods() *protoiface.Methods { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } if x.Params == nil { - x.Params = &LegacyParams{} + x.Params = &LegacyGovParams{} } if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err @@ -1515,99 +1515,99 @@ func (x *fastReflection_MsgUpdateParams) ProtoMethods() *protoiface.Methods { } } -var _ protoreflect.List = (*_LegacyParams_2_list)(nil) +var _ protoreflect.List = (*_LegacyGovParams_2_list)(nil) -type _LegacyParams_2_list struct { +type _LegacyGovParams_2_list struct { list *[]*v1beta1.Coin } -func (x *_LegacyParams_2_list) Len() int { +func (x *_LegacyGovParams_2_list) Len() int { if x.list == nil { return 0 } return len(*x.list) } -func (x *_LegacyParams_2_list) Get(i int) protoreflect.Value { +func (x *_LegacyGovParams_2_list) Get(i int) protoreflect.Value { return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) } -func (x *_LegacyParams_2_list) Set(i int, value protoreflect.Value) { +func (x *_LegacyGovParams_2_list) Set(i int, value protoreflect.Value) { valueUnwrapped := value.Message() concreteValue := valueUnwrapped.Interface().(*v1beta1.Coin) (*x.list)[i] = concreteValue } -func (x *_LegacyParams_2_list) Append(value protoreflect.Value) { +func (x *_LegacyGovParams_2_list) Append(value protoreflect.Value) { valueUnwrapped := value.Message() concreteValue := valueUnwrapped.Interface().(*v1beta1.Coin) *x.list = append(*x.list, concreteValue) } -func (x *_LegacyParams_2_list) AppendMutable() protoreflect.Value { +func (x *_LegacyGovParams_2_list) AppendMutable() protoreflect.Value { v := new(v1beta1.Coin) *x.list = append(*x.list, v) return protoreflect.ValueOfMessage(v.ProtoReflect()) } -func (x *_LegacyParams_2_list) Truncate(n int) { +func (x *_LegacyGovParams_2_list) Truncate(n int) { for i := n; i < len(*x.list); i++ { (*x.list)[i] = nil } *x.list = (*x.list)[:n] } -func (x *_LegacyParams_2_list) NewElement() protoreflect.Value { +func (x *_LegacyGovParams_2_list) NewElement() protoreflect.Value { v := new(v1beta1.Coin) return protoreflect.ValueOfMessage(v.ProtoReflect()) } -func (x *_LegacyParams_2_list) IsValid() bool { +func (x *_LegacyGovParams_2_list) IsValid() bool { return x.list != nil } var ( - md_LegacyParams protoreflect.MessageDescriptor - fd_LegacyParams_msg_type protoreflect.FieldDescriptor - fd_LegacyParams_min_deposit protoreflect.FieldDescriptor - fd_LegacyParams_min_initial_deposit protoreflect.FieldDescriptor - fd_LegacyParams_voting_period protoreflect.FieldDescriptor - fd_LegacyParams_quorum protoreflect.FieldDescriptor - fd_LegacyParams_max_deposit_period protoreflect.FieldDescriptor - fd_LegacyParams_threshold protoreflect.FieldDescriptor - fd_LegacyParams_veto_threshold protoreflect.FieldDescriptor - fd_LegacyParams_min_initial_deposit_ratio protoreflect.FieldDescriptor - fd_LegacyParams_burn_vote_quorum protoreflect.FieldDescriptor - fd_LegacyParams_burn_proposal_deposit_prevote protoreflect.FieldDescriptor - fd_LegacyParams_burn_vote_veto protoreflect.FieldDescriptor + md_LegacyGovParams protoreflect.MessageDescriptor + fd_LegacyGovParams_msg_type protoreflect.FieldDescriptor + fd_LegacyGovParams_min_deposit protoreflect.FieldDescriptor + fd_LegacyGovParams_min_initial_deposit protoreflect.FieldDescriptor + fd_LegacyGovParams_voting_period protoreflect.FieldDescriptor + fd_LegacyGovParams_quorum protoreflect.FieldDescriptor + fd_LegacyGovParams_max_deposit_period protoreflect.FieldDescriptor + fd_LegacyGovParams_threshold protoreflect.FieldDescriptor + fd_LegacyGovParams_veto_threshold protoreflect.FieldDescriptor + fd_LegacyGovParams_min_initial_deposit_ratio protoreflect.FieldDescriptor + fd_LegacyGovParams_burn_vote_quorum protoreflect.FieldDescriptor + fd_LegacyGovParams_burn_proposal_deposit_prevote protoreflect.FieldDescriptor + fd_LegacyGovParams_burn_vote_veto protoreflect.FieldDescriptor ) func init() { file_fx_gov_v1_gov_legacy_proto_init() - md_LegacyParams = File_fx_gov_v1_gov_legacy_proto.Messages().ByName("LegacyParams") - fd_LegacyParams_msg_type = md_LegacyParams.Fields().ByName("msg_type") - fd_LegacyParams_min_deposit = md_LegacyParams.Fields().ByName("min_deposit") - fd_LegacyParams_min_initial_deposit = md_LegacyParams.Fields().ByName("min_initial_deposit") - fd_LegacyParams_voting_period = md_LegacyParams.Fields().ByName("voting_period") - fd_LegacyParams_quorum = md_LegacyParams.Fields().ByName("quorum") - fd_LegacyParams_max_deposit_period = md_LegacyParams.Fields().ByName("max_deposit_period") - fd_LegacyParams_threshold = md_LegacyParams.Fields().ByName("threshold") - fd_LegacyParams_veto_threshold = md_LegacyParams.Fields().ByName("veto_threshold") - fd_LegacyParams_min_initial_deposit_ratio = md_LegacyParams.Fields().ByName("min_initial_deposit_ratio") - fd_LegacyParams_burn_vote_quorum = md_LegacyParams.Fields().ByName("burn_vote_quorum") - fd_LegacyParams_burn_proposal_deposit_prevote = md_LegacyParams.Fields().ByName("burn_proposal_deposit_prevote") - fd_LegacyParams_burn_vote_veto = md_LegacyParams.Fields().ByName("burn_vote_veto") + md_LegacyGovParams = File_fx_gov_v1_gov_legacy_proto.Messages().ByName("LegacyGovParams") + fd_LegacyGovParams_msg_type = md_LegacyGovParams.Fields().ByName("msg_type") + fd_LegacyGovParams_min_deposit = md_LegacyGovParams.Fields().ByName("min_deposit") + fd_LegacyGovParams_min_initial_deposit = md_LegacyGovParams.Fields().ByName("min_initial_deposit") + fd_LegacyGovParams_voting_period = md_LegacyGovParams.Fields().ByName("voting_period") + fd_LegacyGovParams_quorum = md_LegacyGovParams.Fields().ByName("quorum") + fd_LegacyGovParams_max_deposit_period = md_LegacyGovParams.Fields().ByName("max_deposit_period") + fd_LegacyGovParams_threshold = md_LegacyGovParams.Fields().ByName("threshold") + fd_LegacyGovParams_veto_threshold = md_LegacyGovParams.Fields().ByName("veto_threshold") + fd_LegacyGovParams_min_initial_deposit_ratio = md_LegacyGovParams.Fields().ByName("min_initial_deposit_ratio") + fd_LegacyGovParams_burn_vote_quorum = md_LegacyGovParams.Fields().ByName("burn_vote_quorum") + fd_LegacyGovParams_burn_proposal_deposit_prevote = md_LegacyGovParams.Fields().ByName("burn_proposal_deposit_prevote") + fd_LegacyGovParams_burn_vote_veto = md_LegacyGovParams.Fields().ByName("burn_vote_veto") } -var _ protoreflect.Message = (*fastReflection_LegacyParams)(nil) +var _ protoreflect.Message = (*fastReflection_LegacyGovParams)(nil) -type fastReflection_LegacyParams LegacyParams +type fastReflection_LegacyGovParams LegacyGovParams -func (x *LegacyParams) ProtoReflect() protoreflect.Message { - return (*fastReflection_LegacyParams)(x) +func (x *LegacyGovParams) ProtoReflect() protoreflect.Message { + return (*fastReflection_LegacyGovParams)(x) } -func (x *LegacyParams) slowProtoReflect() protoreflect.Message { +func (x *LegacyGovParams) slowProtoReflect() protoreflect.Message { mi := &file_fx_gov_v1_gov_legacy_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1619,43 +1619,43 @@ func (x *LegacyParams) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_LegacyParams_messageType fastReflection_LegacyParams_messageType -var _ protoreflect.MessageType = fastReflection_LegacyParams_messageType{} +var _fastReflection_LegacyGovParams_messageType fastReflection_LegacyGovParams_messageType +var _ protoreflect.MessageType = fastReflection_LegacyGovParams_messageType{} -type fastReflection_LegacyParams_messageType struct{} +type fastReflection_LegacyGovParams_messageType struct{} -func (x fastReflection_LegacyParams_messageType) Zero() protoreflect.Message { - return (*fastReflection_LegacyParams)(nil) +func (x fastReflection_LegacyGovParams_messageType) Zero() protoreflect.Message { + return (*fastReflection_LegacyGovParams)(nil) } -func (x fastReflection_LegacyParams_messageType) New() protoreflect.Message { - return new(fastReflection_LegacyParams) +func (x fastReflection_LegacyGovParams_messageType) New() protoreflect.Message { + return new(fastReflection_LegacyGovParams) } -func (x fastReflection_LegacyParams_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_LegacyParams +func (x fastReflection_LegacyGovParams_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_LegacyGovParams } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_LegacyParams) Descriptor() protoreflect.MessageDescriptor { - return md_LegacyParams +func (x *fastReflection_LegacyGovParams) Descriptor() protoreflect.MessageDescriptor { + return md_LegacyGovParams } // 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_LegacyParams) Type() protoreflect.MessageType { - return _fastReflection_LegacyParams_messageType +func (x *fastReflection_LegacyGovParams) Type() protoreflect.MessageType { + return _fastReflection_LegacyGovParams_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_LegacyParams) New() protoreflect.Message { - return new(fastReflection_LegacyParams) +func (x *fastReflection_LegacyGovParams) New() protoreflect.Message { + return new(fastReflection_LegacyGovParams) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_LegacyParams) Interface() protoreflect.ProtoMessage { - return (*LegacyParams)(x) +func (x *fastReflection_LegacyGovParams) Interface() protoreflect.ProtoMessage { + return (*LegacyGovParams)(x) } // Range iterates over every populated field in an undefined order, @@ -1663,76 +1663,76 @@ func (x *fastReflection_LegacyParams) Interface() protoreflect.ProtoMessage { // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_LegacyParams) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +func (x *fastReflection_LegacyGovParams) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { if x.MsgType != "" { value := protoreflect.ValueOfString(x.MsgType) - if !f(fd_LegacyParams_msg_type, value) { + if !f(fd_LegacyGovParams_msg_type, value) { return } } if len(x.MinDeposit) != 0 { - value := protoreflect.ValueOfList(&_LegacyParams_2_list{list: &x.MinDeposit}) - if !f(fd_LegacyParams_min_deposit, value) { + value := protoreflect.ValueOfList(&_LegacyGovParams_2_list{list: &x.MinDeposit}) + if !f(fd_LegacyGovParams_min_deposit, value) { return } } if x.MinInitialDeposit != nil { value := protoreflect.ValueOfMessage(x.MinInitialDeposit.ProtoReflect()) - if !f(fd_LegacyParams_min_initial_deposit, value) { + if !f(fd_LegacyGovParams_min_initial_deposit, value) { return } } if x.VotingPeriod != nil { value := protoreflect.ValueOfMessage(x.VotingPeriod.ProtoReflect()) - if !f(fd_LegacyParams_voting_period, value) { + if !f(fd_LegacyGovParams_voting_period, value) { return } } if x.Quorum != "" { value := protoreflect.ValueOfString(x.Quorum) - if !f(fd_LegacyParams_quorum, value) { + if !f(fd_LegacyGovParams_quorum, value) { return } } if x.MaxDepositPeriod != nil { value := protoreflect.ValueOfMessage(x.MaxDepositPeriod.ProtoReflect()) - if !f(fd_LegacyParams_max_deposit_period, value) { + if !f(fd_LegacyGovParams_max_deposit_period, value) { return } } if x.Threshold != "" { value := protoreflect.ValueOfString(x.Threshold) - if !f(fd_LegacyParams_threshold, value) { + if !f(fd_LegacyGovParams_threshold, value) { return } } if x.VetoThreshold != "" { value := protoreflect.ValueOfString(x.VetoThreshold) - if !f(fd_LegacyParams_veto_threshold, value) { + if !f(fd_LegacyGovParams_veto_threshold, value) { return } } if x.MinInitialDepositRatio != "" { value := protoreflect.ValueOfString(x.MinInitialDepositRatio) - if !f(fd_LegacyParams_min_initial_deposit_ratio, value) { + if !f(fd_LegacyGovParams_min_initial_deposit_ratio, value) { return } } if x.BurnVoteQuorum != false { value := protoreflect.ValueOfBool(x.BurnVoteQuorum) - if !f(fd_LegacyParams_burn_vote_quorum, value) { + if !f(fd_LegacyGovParams_burn_vote_quorum, value) { return } } if x.BurnProposalDepositPrevote != false { value := protoreflect.ValueOfBool(x.BurnProposalDepositPrevote) - if !f(fd_LegacyParams_burn_proposal_deposit_prevote, value) { + if !f(fd_LegacyGovParams_burn_proposal_deposit_prevote, value) { return } } if x.BurnVoteVeto != false { value := protoreflect.ValueOfBool(x.BurnVoteVeto) - if !f(fd_LegacyParams_burn_vote_veto, value) { + if !f(fd_LegacyGovParams_burn_vote_veto, value) { return } } @@ -1749,37 +1749,37 @@ func (x *fastReflection_LegacyParams) Range(f func(protoreflect.FieldDescriptor, // 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_LegacyParams) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_LegacyGovParams) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.gov.v1.LegacyParams.msg_type": + case "fx.gov.v1.LegacyGovParams.msg_type": return x.MsgType != "" - case "fx.gov.v1.LegacyParams.min_deposit": + case "fx.gov.v1.LegacyGovParams.min_deposit": return len(x.MinDeposit) != 0 - case "fx.gov.v1.LegacyParams.min_initial_deposit": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit": return x.MinInitialDeposit != nil - case "fx.gov.v1.LegacyParams.voting_period": + case "fx.gov.v1.LegacyGovParams.voting_period": return x.VotingPeriod != nil - case "fx.gov.v1.LegacyParams.quorum": + case "fx.gov.v1.LegacyGovParams.quorum": return x.Quorum != "" - case "fx.gov.v1.LegacyParams.max_deposit_period": + case "fx.gov.v1.LegacyGovParams.max_deposit_period": return x.MaxDepositPeriod != nil - case "fx.gov.v1.LegacyParams.threshold": + case "fx.gov.v1.LegacyGovParams.threshold": return x.Threshold != "" - case "fx.gov.v1.LegacyParams.veto_threshold": + case "fx.gov.v1.LegacyGovParams.veto_threshold": return x.VetoThreshold != "" - case "fx.gov.v1.LegacyParams.min_initial_deposit_ratio": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit_ratio": return x.MinInitialDepositRatio != "" - case "fx.gov.v1.LegacyParams.burn_vote_quorum": + case "fx.gov.v1.LegacyGovParams.burn_vote_quorum": return x.BurnVoteQuorum != false - case "fx.gov.v1.LegacyParams.burn_proposal_deposit_prevote": + case "fx.gov.v1.LegacyGovParams.burn_proposal_deposit_prevote": return x.BurnProposalDepositPrevote != false - case "fx.gov.v1.LegacyParams.burn_vote_veto": + case "fx.gov.v1.LegacyGovParams.burn_vote_veto": return x.BurnVoteVeto != false default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyGovParams")) } - panic(fmt.Errorf("message fx.gov.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gov.v1.LegacyGovParams does not contain field %s", fd.FullName())) } } @@ -1789,37 +1789,37 @@ func (x *fastReflection_LegacyParams) Has(fd protoreflect.FieldDescriptor) bool // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_LegacyParams) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_LegacyGovParams) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.gov.v1.LegacyParams.msg_type": + case "fx.gov.v1.LegacyGovParams.msg_type": x.MsgType = "" - case "fx.gov.v1.LegacyParams.min_deposit": + case "fx.gov.v1.LegacyGovParams.min_deposit": x.MinDeposit = nil - case "fx.gov.v1.LegacyParams.min_initial_deposit": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit": x.MinInitialDeposit = nil - case "fx.gov.v1.LegacyParams.voting_period": + case "fx.gov.v1.LegacyGovParams.voting_period": x.VotingPeriod = nil - case "fx.gov.v1.LegacyParams.quorum": + case "fx.gov.v1.LegacyGovParams.quorum": x.Quorum = "" - case "fx.gov.v1.LegacyParams.max_deposit_period": + case "fx.gov.v1.LegacyGovParams.max_deposit_period": x.MaxDepositPeriod = nil - case "fx.gov.v1.LegacyParams.threshold": + case "fx.gov.v1.LegacyGovParams.threshold": x.Threshold = "" - case "fx.gov.v1.LegacyParams.veto_threshold": + case "fx.gov.v1.LegacyGovParams.veto_threshold": x.VetoThreshold = "" - case "fx.gov.v1.LegacyParams.min_initial_deposit_ratio": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit_ratio": x.MinInitialDepositRatio = "" - case "fx.gov.v1.LegacyParams.burn_vote_quorum": + case "fx.gov.v1.LegacyGovParams.burn_vote_quorum": x.BurnVoteQuorum = false - case "fx.gov.v1.LegacyParams.burn_proposal_deposit_prevote": + case "fx.gov.v1.LegacyGovParams.burn_proposal_deposit_prevote": x.BurnProposalDepositPrevote = false - case "fx.gov.v1.LegacyParams.burn_vote_veto": + case "fx.gov.v1.LegacyGovParams.burn_vote_veto": x.BurnVoteVeto = false default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyGovParams")) } - panic(fmt.Errorf("message fx.gov.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gov.v1.LegacyGovParams does not contain field %s", fd.FullName())) } } @@ -1829,52 +1829,52 @@ func (x *fastReflection_LegacyParams) Clear(fd protoreflect.FieldDescriptor) { // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_LegacyParams) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_LegacyGovParams) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.gov.v1.LegacyParams.msg_type": + case "fx.gov.v1.LegacyGovParams.msg_type": value := x.MsgType return protoreflect.ValueOfString(value) - case "fx.gov.v1.LegacyParams.min_deposit": + case "fx.gov.v1.LegacyGovParams.min_deposit": if len(x.MinDeposit) == 0 { - return protoreflect.ValueOfList(&_LegacyParams_2_list{}) + return protoreflect.ValueOfList(&_LegacyGovParams_2_list{}) } - listValue := &_LegacyParams_2_list{list: &x.MinDeposit} + listValue := &_LegacyGovParams_2_list{list: &x.MinDeposit} return protoreflect.ValueOfList(listValue) - case "fx.gov.v1.LegacyParams.min_initial_deposit": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit": value := x.MinInitialDeposit return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "fx.gov.v1.LegacyParams.voting_period": + case "fx.gov.v1.LegacyGovParams.voting_period": value := x.VotingPeriod return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "fx.gov.v1.LegacyParams.quorum": + case "fx.gov.v1.LegacyGovParams.quorum": value := x.Quorum return protoreflect.ValueOfString(value) - case "fx.gov.v1.LegacyParams.max_deposit_period": + case "fx.gov.v1.LegacyGovParams.max_deposit_period": value := x.MaxDepositPeriod return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "fx.gov.v1.LegacyParams.threshold": + case "fx.gov.v1.LegacyGovParams.threshold": value := x.Threshold return protoreflect.ValueOfString(value) - case "fx.gov.v1.LegacyParams.veto_threshold": + case "fx.gov.v1.LegacyGovParams.veto_threshold": value := x.VetoThreshold return protoreflect.ValueOfString(value) - case "fx.gov.v1.LegacyParams.min_initial_deposit_ratio": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit_ratio": value := x.MinInitialDepositRatio return protoreflect.ValueOfString(value) - case "fx.gov.v1.LegacyParams.burn_vote_quorum": + case "fx.gov.v1.LegacyGovParams.burn_vote_quorum": value := x.BurnVoteQuorum return protoreflect.ValueOfBool(value) - case "fx.gov.v1.LegacyParams.burn_proposal_deposit_prevote": + case "fx.gov.v1.LegacyGovParams.burn_proposal_deposit_prevote": value := x.BurnProposalDepositPrevote return protoreflect.ValueOfBool(value) - case "fx.gov.v1.LegacyParams.burn_vote_veto": + case "fx.gov.v1.LegacyGovParams.burn_vote_veto": value := x.BurnVoteVeto return protoreflect.ValueOfBool(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyGovParams")) } - panic(fmt.Errorf("message fx.gov.v1.LegacyParams does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.gov.v1.LegacyGovParams does not contain field %s", descriptor.FullName())) } } @@ -1888,39 +1888,39 @@ func (x *fastReflection_LegacyParams) Get(descriptor protoreflect.FieldDescripto // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_LegacyParams) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_LegacyGovParams) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.gov.v1.LegacyParams.msg_type": + case "fx.gov.v1.LegacyGovParams.msg_type": x.MsgType = value.Interface().(string) - case "fx.gov.v1.LegacyParams.min_deposit": + case "fx.gov.v1.LegacyGovParams.min_deposit": lv := value.List() - clv := lv.(*_LegacyParams_2_list) + clv := lv.(*_LegacyGovParams_2_list) x.MinDeposit = *clv.list - case "fx.gov.v1.LegacyParams.min_initial_deposit": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit": x.MinInitialDeposit = value.Message().Interface().(*v1beta1.Coin) - case "fx.gov.v1.LegacyParams.voting_period": + case "fx.gov.v1.LegacyGovParams.voting_period": x.VotingPeriod = value.Message().Interface().(*durationpb.Duration) - case "fx.gov.v1.LegacyParams.quorum": + case "fx.gov.v1.LegacyGovParams.quorum": x.Quorum = value.Interface().(string) - case "fx.gov.v1.LegacyParams.max_deposit_period": + case "fx.gov.v1.LegacyGovParams.max_deposit_period": x.MaxDepositPeriod = value.Message().Interface().(*durationpb.Duration) - case "fx.gov.v1.LegacyParams.threshold": + case "fx.gov.v1.LegacyGovParams.threshold": x.Threshold = value.Interface().(string) - case "fx.gov.v1.LegacyParams.veto_threshold": + case "fx.gov.v1.LegacyGovParams.veto_threshold": x.VetoThreshold = value.Interface().(string) - case "fx.gov.v1.LegacyParams.min_initial_deposit_ratio": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit_ratio": x.MinInitialDepositRatio = value.Interface().(string) - case "fx.gov.v1.LegacyParams.burn_vote_quorum": + case "fx.gov.v1.LegacyGovParams.burn_vote_quorum": x.BurnVoteQuorum = value.Bool() - case "fx.gov.v1.LegacyParams.burn_proposal_deposit_prevote": + case "fx.gov.v1.LegacyGovParams.burn_proposal_deposit_prevote": x.BurnProposalDepositPrevote = value.Bool() - case "fx.gov.v1.LegacyParams.burn_vote_veto": + case "fx.gov.v1.LegacyGovParams.burn_vote_veto": x.BurnVoteVeto = value.Bool() default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyGovParams")) } - panic(fmt.Errorf("message fx.gov.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gov.v1.LegacyGovParams does not contain field %s", fd.FullName())) } } @@ -1934,101 +1934,101 @@ func (x *fastReflection_LegacyParams) Set(fd protoreflect.FieldDescriptor, value // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_LegacyParams) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_LegacyGovParams) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gov.v1.LegacyParams.min_deposit": + case "fx.gov.v1.LegacyGovParams.min_deposit": if x.MinDeposit == nil { x.MinDeposit = []*v1beta1.Coin{} } - value := &_LegacyParams_2_list{list: &x.MinDeposit} + value := &_LegacyGovParams_2_list{list: &x.MinDeposit} return protoreflect.ValueOfList(value) - case "fx.gov.v1.LegacyParams.min_initial_deposit": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit": if x.MinInitialDeposit == nil { x.MinInitialDeposit = new(v1beta1.Coin) } return protoreflect.ValueOfMessage(x.MinInitialDeposit.ProtoReflect()) - case "fx.gov.v1.LegacyParams.voting_period": + case "fx.gov.v1.LegacyGovParams.voting_period": if x.VotingPeriod == nil { x.VotingPeriod = new(durationpb.Duration) } return protoreflect.ValueOfMessage(x.VotingPeriod.ProtoReflect()) - case "fx.gov.v1.LegacyParams.max_deposit_period": + case "fx.gov.v1.LegacyGovParams.max_deposit_period": if x.MaxDepositPeriod == nil { x.MaxDepositPeriod = new(durationpb.Duration) } return protoreflect.ValueOfMessage(x.MaxDepositPeriod.ProtoReflect()) - case "fx.gov.v1.LegacyParams.msg_type": - panic(fmt.Errorf("field msg_type of message fx.gov.v1.LegacyParams is not mutable")) - case "fx.gov.v1.LegacyParams.quorum": - panic(fmt.Errorf("field quorum of message fx.gov.v1.LegacyParams is not mutable")) - case "fx.gov.v1.LegacyParams.threshold": - panic(fmt.Errorf("field threshold of message fx.gov.v1.LegacyParams is not mutable")) - case "fx.gov.v1.LegacyParams.veto_threshold": - panic(fmt.Errorf("field veto_threshold of message fx.gov.v1.LegacyParams is not mutable")) - case "fx.gov.v1.LegacyParams.min_initial_deposit_ratio": - panic(fmt.Errorf("field min_initial_deposit_ratio of message fx.gov.v1.LegacyParams is not mutable")) - case "fx.gov.v1.LegacyParams.burn_vote_quorum": - panic(fmt.Errorf("field burn_vote_quorum of message fx.gov.v1.LegacyParams is not mutable")) - case "fx.gov.v1.LegacyParams.burn_proposal_deposit_prevote": - panic(fmt.Errorf("field burn_proposal_deposit_prevote of message fx.gov.v1.LegacyParams is not mutable")) - case "fx.gov.v1.LegacyParams.burn_vote_veto": - panic(fmt.Errorf("field burn_vote_veto of message fx.gov.v1.LegacyParams is not mutable")) + case "fx.gov.v1.LegacyGovParams.msg_type": + panic(fmt.Errorf("field msg_type of message fx.gov.v1.LegacyGovParams is not mutable")) + case "fx.gov.v1.LegacyGovParams.quorum": + panic(fmt.Errorf("field quorum of message fx.gov.v1.LegacyGovParams is not mutable")) + case "fx.gov.v1.LegacyGovParams.threshold": + panic(fmt.Errorf("field threshold of message fx.gov.v1.LegacyGovParams is not mutable")) + case "fx.gov.v1.LegacyGovParams.veto_threshold": + panic(fmt.Errorf("field veto_threshold of message fx.gov.v1.LegacyGovParams is not mutable")) + case "fx.gov.v1.LegacyGovParams.min_initial_deposit_ratio": + panic(fmt.Errorf("field min_initial_deposit_ratio of message fx.gov.v1.LegacyGovParams is not mutable")) + case "fx.gov.v1.LegacyGovParams.burn_vote_quorum": + panic(fmt.Errorf("field burn_vote_quorum of message fx.gov.v1.LegacyGovParams is not mutable")) + case "fx.gov.v1.LegacyGovParams.burn_proposal_deposit_prevote": + panic(fmt.Errorf("field burn_proposal_deposit_prevote of message fx.gov.v1.LegacyGovParams is not mutable")) + case "fx.gov.v1.LegacyGovParams.burn_vote_veto": + panic(fmt.Errorf("field burn_vote_veto of message fx.gov.v1.LegacyGovParams is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyGovParams")) } - panic(fmt.Errorf("message fx.gov.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gov.v1.LegacyGovParams 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_LegacyParams) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_LegacyGovParams) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gov.v1.LegacyParams.msg_type": + case "fx.gov.v1.LegacyGovParams.msg_type": return protoreflect.ValueOfString("") - case "fx.gov.v1.LegacyParams.min_deposit": + case "fx.gov.v1.LegacyGovParams.min_deposit": list := []*v1beta1.Coin{} - return protoreflect.ValueOfList(&_LegacyParams_2_list{list: &list}) - case "fx.gov.v1.LegacyParams.min_initial_deposit": + return protoreflect.ValueOfList(&_LegacyGovParams_2_list{list: &list}) + case "fx.gov.v1.LegacyGovParams.min_initial_deposit": m := new(v1beta1.Coin) return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "fx.gov.v1.LegacyParams.voting_period": + case "fx.gov.v1.LegacyGovParams.voting_period": m := new(durationpb.Duration) return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "fx.gov.v1.LegacyParams.quorum": + case "fx.gov.v1.LegacyGovParams.quorum": return protoreflect.ValueOfString("") - case "fx.gov.v1.LegacyParams.max_deposit_period": + case "fx.gov.v1.LegacyGovParams.max_deposit_period": m := new(durationpb.Duration) return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "fx.gov.v1.LegacyParams.threshold": + case "fx.gov.v1.LegacyGovParams.threshold": return protoreflect.ValueOfString("") - case "fx.gov.v1.LegacyParams.veto_threshold": + case "fx.gov.v1.LegacyGovParams.veto_threshold": return protoreflect.ValueOfString("") - case "fx.gov.v1.LegacyParams.min_initial_deposit_ratio": + case "fx.gov.v1.LegacyGovParams.min_initial_deposit_ratio": return protoreflect.ValueOfString("") - case "fx.gov.v1.LegacyParams.burn_vote_quorum": + case "fx.gov.v1.LegacyGovParams.burn_vote_quorum": return protoreflect.ValueOfBool(false) - case "fx.gov.v1.LegacyParams.burn_proposal_deposit_prevote": + case "fx.gov.v1.LegacyGovParams.burn_proposal_deposit_prevote": return protoreflect.ValueOfBool(false) - case "fx.gov.v1.LegacyParams.burn_vote_veto": + case "fx.gov.v1.LegacyGovParams.burn_vote_veto": return protoreflect.ValueOfBool(false) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyParams")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gov.v1.LegacyGovParams")) } - panic(fmt.Errorf("message fx.gov.v1.LegacyParams does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gov.v1.LegacyGovParams 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_LegacyParams) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_LegacyGovParams) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.gov.v1.LegacyParams", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.gov.v1.LegacyGovParams", d.FullName())) } panic("unreachable") } @@ -2036,7 +2036,7 @@ func (x *fastReflection_LegacyParams) WhichOneof(d protoreflect.OneofDescriptor) // 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_LegacyParams) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_LegacyGovParams) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -2047,7 +2047,7 @@ func (x *fastReflection_LegacyParams) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_LegacyParams) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_LegacyGovParams) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -2059,7 +2059,7 @@ func (x *fastReflection_LegacyParams) SetUnknown(fields protoreflect.RawFields) // 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_LegacyParams) IsValid() bool { +func (x *fastReflection_LegacyGovParams) IsValid() bool { return x != nil } @@ -2069,9 +2069,9 @@ func (x *fastReflection_LegacyParams) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_LegacyGovParams) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*LegacyParams) + x := input.Message.Interface().(*LegacyGovParams) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2140,7 +2140,7 @@ func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*LegacyParams) + x := input.Message.Interface().(*LegacyGovParams) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2293,7 +2293,7 @@ func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*LegacyParams) + x := input.Message.Interface().(*LegacyGovParams) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2325,10 +2325,10 @@ func (x *fastReflection_LegacyParams) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: LegacyParams: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: LegacyGovParams: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: LegacyParams: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: LegacyGovParams: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -4555,8 +4555,8 @@ type MsgUpdateParams struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"` - Params *LegacyParams `protobuf:"bytes,2,opt,name=params,proto3" json:"params,omitempty"` + Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"` + Params *LegacyGovParams `protobuf:"bytes,2,opt,name=params,proto3" json:"params,omitempty"` } func (x *MsgUpdateParams) Reset() { @@ -4586,7 +4586,7 @@ func (x *MsgUpdateParams) GetAuthority() string { return "" } -func (x *MsgUpdateParams) GetParams() *LegacyParams { +func (x *MsgUpdateParams) GetParams() *LegacyGovParams { if x != nil { return x.Params } @@ -4594,7 +4594,7 @@ func (x *MsgUpdateParams) GetParams() *LegacyParams { } // Deprecated: Do not use. -type LegacyParams struct { +type LegacyGovParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4618,8 +4618,8 @@ type LegacyParams struct { BurnVoteVeto bool `protobuf:"varint,12,opt,name=burn_vote_veto,json=burnVoteVeto,proto3" json:"burn_vote_veto,omitempty"` } -func (x *LegacyParams) Reset() { - *x = LegacyParams{} +func (x *LegacyGovParams) Reset() { + *x = LegacyGovParams{} if protoimpl.UnsafeEnabled { mi := &file_fx_gov_v1_gov_legacy_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4627,95 +4627,95 @@ func (x *LegacyParams) Reset() { } } -func (x *LegacyParams) String() string { +func (x *LegacyGovParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*LegacyParams) ProtoMessage() {} +func (*LegacyGovParams) ProtoMessage() {} -// Deprecated: Use LegacyParams.ProtoReflect.Descriptor instead. -func (*LegacyParams) Descriptor() ([]byte, []int) { +// Deprecated: Use LegacyGovParams.ProtoReflect.Descriptor instead. +func (*LegacyGovParams) Descriptor() ([]byte, []int) { return file_fx_gov_v1_gov_legacy_proto_rawDescGZIP(), []int{3} } -func (x *LegacyParams) GetMsgType() string { +func (x *LegacyGovParams) GetMsgType() string { if x != nil { return x.MsgType } return "" } -func (x *LegacyParams) GetMinDeposit() []*v1beta1.Coin { +func (x *LegacyGovParams) GetMinDeposit() []*v1beta1.Coin { if x != nil { return x.MinDeposit } return nil } -func (x *LegacyParams) GetMinInitialDeposit() *v1beta1.Coin { +func (x *LegacyGovParams) GetMinInitialDeposit() *v1beta1.Coin { if x != nil { return x.MinInitialDeposit } return nil } -func (x *LegacyParams) GetVotingPeriod() *durationpb.Duration { +func (x *LegacyGovParams) GetVotingPeriod() *durationpb.Duration { if x != nil { return x.VotingPeriod } return nil } -func (x *LegacyParams) GetQuorum() string { +func (x *LegacyGovParams) GetQuorum() string { if x != nil { return x.Quorum } return "" } -func (x *LegacyParams) GetMaxDepositPeriod() *durationpb.Duration { +func (x *LegacyGovParams) GetMaxDepositPeriod() *durationpb.Duration { if x != nil { return x.MaxDepositPeriod } return nil } -func (x *LegacyParams) GetThreshold() string { +func (x *LegacyGovParams) GetThreshold() string { if x != nil { return x.Threshold } return "" } -func (x *LegacyParams) GetVetoThreshold() string { +func (x *LegacyGovParams) GetVetoThreshold() string { if x != nil { return x.VetoThreshold } return "" } -func (x *LegacyParams) GetMinInitialDepositRatio() string { +func (x *LegacyGovParams) GetMinInitialDepositRatio() string { if x != nil { return x.MinInitialDepositRatio } return "" } -func (x *LegacyParams) GetBurnVoteQuorum() bool { +func (x *LegacyGovParams) GetBurnVoteQuorum() bool { if x != nil { return x.BurnVoteQuorum } return false } -func (x *LegacyParams) GetBurnProposalDepositPrevote() bool { +func (x *LegacyGovParams) GetBurnProposalDepositPrevote() bool { if x != nil { return x.BurnProposalDepositPrevote } return false } -func (x *LegacyParams) GetBurnVoteVeto() bool { +func (x *LegacyGovParams) GetBurnVoteVeto() bool { if x != nil { return x.BurnVoteVeto } @@ -4934,144 +4934,144 @@ var file_fx_gov_v1_gov_legacy_proto_rawDesc = []byte{ 0x6d, 0x73, 0x3a, 0x2b, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x16, 0x67, 0x6f, 0x76, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x47, 0x46, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, - 0x92, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, + 0x95, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x35, 0x0a, 0x06, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x66, 0x78, - 0x2e, 0x67, 0x6f, 0x76, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x3a, 0x10, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x22, 0xb7, 0x06, 0x0a, 0x0c, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x59, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, - 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, - 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xea, 0xde, 0x1f, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, - 0x0a, 0x6d, 0x69, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x70, 0x0a, 0x13, 0x6d, - 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, - 0x6f, 0x69, 0x6e, 0x42, 0x25, 0xc8, 0xde, 0x1f, 0x00, 0xea, 0xde, 0x1f, 0x1d, 0x6d, 0x69, 0x6e, - 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x11, 0x6d, 0x69, 0x6e, 0x49, - 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x44, 0x0a, - 0x0d, 0x76, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, - 0x04, 0x98, 0xdf, 0x1f, 0x01, 0x52, 0x0c, 0x76, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72, - 0x69, 0x6f, 0x64, 0x12, 0x2c, 0x0a, 0x06, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x14, 0xea, 0xde, 0x1f, 0x10, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x2c, - 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x06, 0x71, 0x75, 0x6f, 0x72, 0x75, - 0x6d, 0x12, 0x6d, 0x0a, 0x12, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x24, 0xea, 0xde, 0x1f, 0x1c, 0x6d, 0x61, - 0x78, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x98, 0xdf, 0x1f, 0x01, 0x52, 0x10, - 0x6d, 0x61, 0x78, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x12, 0x35, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x17, 0xea, 0xde, 0x1f, 0x13, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, - 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x09, 0x74, 0x68, - 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x43, 0x0a, 0x0e, 0x76, 0x65, 0x74, 0x6f, 0x5f, - 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x1c, 0xea, 0xde, 0x1f, 0x18, 0x76, 0x65, 0x74, 0x6f, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, - 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x0d, 0x76, - 0x65, 0x74, 0x6f, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x49, 0x0a, 0x19, - 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x0e, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, - 0x16, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x75, 0x72, 0x6e, 0x5f, - 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x51, 0x75, 0x6f, 0x72, 0x75, - 0x6d, 0x12, 0x41, 0x0a, 0x1d, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, - 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x6f, - 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x62, 0x75, 0x72, 0x6e, 0x50, 0x72, - 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x50, 0x72, 0x65, - 0x76, 0x6f, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, - 0x65, 0x5f, 0x76, 0x65, 0x74, 0x6f, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x62, 0x75, - 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x56, 0x65, 0x74, 0x6f, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xdb, - 0x06, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x73, 0x67, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x59, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xea, 0xde, 0x1f, 0x15, 0x6d, 0x69, - 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, - 0x70, 0x74, 0x79, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, - 0x70, 0x0a, 0x13, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x25, 0xc8, 0xde, 0x1f, 0x00, 0xea, 0xde, 0x1f, - 0x1d, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x11, - 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x12, 0x44, 0x0a, 0x0d, 0x76, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, 0x72, 0x69, - 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x42, 0x04, 0x98, 0xdf, 0x1f, 0x01, 0x52, 0x0c, 0x76, 0x6f, 0x74, 0x69, 0x6e, - 0x67, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x3a, 0x0a, 0x06, 0x71, 0x75, 0x6f, 0x72, 0x75, - 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x22, 0xea, 0xde, 0x1f, 0x10, 0x71, 0x75, 0x6f, - 0x72, 0x75, 0x6d, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0xd2, 0xb4, 0x2d, - 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x06, 0x71, 0x75, 0x6f, - 0x72, 0x75, 0x6d, 0x12, 0x6d, 0x0a, 0x12, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x24, 0xea, 0xde, 0x1f, 0x1c, - 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, - 0x6f, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x98, 0xdf, 0x1f, 0x01, - 0x52, 0x10, 0x6d, 0x61, 0x78, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x50, 0x65, 0x72, 0x69, - 0x6f, 0x64, 0x12, 0x43, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xea, 0xde, 0x1f, 0x13, 0x74, 0x68, 0x72, 0x65, 0x73, - 0x68, 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0xd2, 0xb4, - 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x09, 0x74, 0x68, - 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x51, 0x0a, 0x0e, 0x76, 0x65, 0x74, 0x6f, 0x5f, - 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x2a, 0xea, 0xde, 0x1f, 0x18, 0x76, 0x65, 0x74, 0x6f, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, - 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0xd2, 0xb4, 0x2d, - 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x0d, 0x76, 0x65, 0x74, - 0x6f, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x49, 0x0a, 0x19, 0x6d, 0x69, - 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xd2, - 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x16, 0x6d, - 0x69, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x52, 0x61, 0x74, 0x69, 0x6f, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, - 0x74, 0x65, 0x5f, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x12, - 0x41, 0x0a, 0x1d, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, - 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x6f, 0x74, 0x65, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x62, 0x75, 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, - 0x6f, 0x73, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x50, 0x72, 0x65, 0x76, 0x6f, - 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, - 0x76, 0x65, 0x74, 0x6f, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x62, 0x75, 0x72, 0x6e, - 0x56, 0x6f, 0x74, 0x65, 0x56, 0x65, 0x74, 0x6f, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xd1, 0x01, 0x0a, - 0x09, 0x45, 0x47, 0x46, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x76, 0x0a, 0x15, 0x65, 0x67, - 0x66, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, - 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x27, 0xc8, 0xde, 0x1f, 0x00, 0xea, 0xde, 0x1f, 0x1f, 0x65, 0x67, - 0x66, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, - 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x13, 0x65, - 0x67, 0x66, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, - 0x6c, 0x64, 0x12, 0x48, 0x0a, 0x0b, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xea, 0xde, 0x1f, 0x15, 0x63, 0x6c, 0x61, - 0x69, 0x6d, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, - 0x74, 0x79, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, - 0x52, 0x0a, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x3a, 0x02, 0x18, 0x01, - 0x42, 0x87, 0x01, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x6f, 0x76, 0x2e, - 0x76, 0x31, 0x42, 0x0e, 0x47, 0x6f, 0x76, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x20, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, - 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x6f, 0x76, 0x2f, 0x76, 0x31, - 0x3b, 0x67, 0x6f, 0x76, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, 0x47, 0x58, 0xaa, 0x02, 0x09, 0x46, - 0x78, 0x2e, 0x47, 0x6f, 0x76, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x09, 0x46, 0x78, 0x5c, 0x47, 0x6f, - 0x76, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x15, 0x46, 0x78, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, - 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0b, 0x46, - 0x78, 0x3a, 0x3a, 0x47, 0x6f, 0x76, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, + 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x38, 0x0a, 0x06, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x66, 0x78, + 0x2e, 0x67, 0x6f, 0x76, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x47, 0x6f, + 0x76, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x10, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0xba, 0x06, 0x0a, 0x0f, 0x4c, 0x65, 0x67, 0x61, + 0x63, 0x79, 0x47, 0x6f, 0x76, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, + 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, + 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x59, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xea, 0xde, 0x1f, 0x15, + 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x2c, 0x6f, 0x6d, 0x69, 0x74, + 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x12, 0x70, 0x0a, 0x13, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, + 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, + 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x25, 0xc8, 0xde, 0x1f, 0x00, 0xea, + 0xde, 0x1f, 0x1d, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, + 0x52, 0x11, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x12, 0x44, 0x0a, 0x0d, 0x76, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x04, 0x98, 0xdf, 0x1f, 0x01, 0x52, 0x0c, 0x76, 0x6f, 0x74, + 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x2c, 0x0a, 0x06, 0x71, 0x75, 0x6f, + 0x72, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xea, 0xde, 0x1f, 0x10, 0x71, + 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, + 0x06, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x12, 0x6d, 0x0a, 0x12, 0x6d, 0x61, 0x78, 0x5f, 0x64, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x24, + 0xea, 0xde, 0x1f, 0x1c, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, + 0x98, 0xdf, 0x1f, 0x01, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x35, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, + 0x6f, 0x6c, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0xea, 0xde, 0x1f, 0x13, 0x74, + 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, + 0x74, 0x79, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x43, 0x0a, + 0x0e, 0x76, 0x65, 0x74, 0x6f, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xea, 0xde, 0x1f, 0x18, 0x76, 0x65, 0x74, 0x6f, 0x5f, + 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0x52, 0x0d, 0x76, 0x65, 0x74, 0x6f, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, + 0x6c, 0x64, 0x12, 0x49, 0x0a, 0x19, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x16, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, + 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x12, 0x28, 0x0a, + 0x10, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, 0x6f, 0x72, 0x75, + 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, + 0x65, 0x51, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x12, 0x41, 0x0a, 0x1d, 0x62, 0x75, 0x72, 0x6e, 0x5f, + 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x5f, 0x70, 0x72, 0x65, 0x76, 0x6f, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, + 0x62, 0x75, 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x50, 0x72, 0x65, 0x76, 0x6f, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x75, + 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x74, 0x6f, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0c, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x56, 0x65, 0x74, 0x6f, + 0x3a, 0x02, 0x18, 0x01, 0x22, 0xdb, 0x06, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, + 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x59, 0x0a, 0x0b, 0x6d, 0x69, + 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, + 0xea, 0xde, 0x1f, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x2c, + 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x44, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x70, 0x0a, 0x13, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, + 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x25, 0xc8, + 0xde, 0x1f, 0x00, 0xea, 0xde, 0x1f, 0x1d, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, + 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, + 0x6d, 0x70, 0x74, 0x79, 0x52, 0x11, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, + 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x44, 0x0a, 0x0d, 0x76, 0x6f, 0x74, 0x69, 0x6e, + 0x67, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x04, 0x98, 0xdf, 0x1f, 0x01, 0x52, + 0x0c, 0x76, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x3a, 0x0a, + 0x06, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x22, 0xea, + 0xde, 0x1f, 0x10, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, + 0x63, 0x52, 0x06, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x12, 0x6d, 0x0a, 0x12, 0x6d, 0x61, 0x78, + 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x42, 0x24, 0xea, 0xde, 0x1f, 0x1c, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, + 0x74, 0x79, 0x98, 0xdf, 0x1f, 0x01, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x44, 0x65, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x43, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, + 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xea, 0xde, 0x1f, + 0x13, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, + 0x6d, 0x70, 0x74, 0x79, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, + 0x65, 0x63, 0x52, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x51, 0x0a, + 0x0e, 0x76, 0x65, 0x74, 0x6f, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xea, 0xde, 0x1f, 0x18, 0x76, 0x65, 0x74, 0x6f, 0x5f, + 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, + 0x63, 0x52, 0x0d, 0x76, 0x65, 0x74, 0x6f, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, + 0x12, 0x49, 0x0a, 0x19, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, + 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x0e, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x44, 0x65, 0x63, 0x52, 0x16, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x12, 0x28, 0x0a, 0x10, 0x62, + 0x75, 0x72, 0x6e, 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x71, 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x51, + 0x75, 0x6f, 0x72, 0x75, 0x6d, 0x12, 0x41, 0x0a, 0x1d, 0x62, 0x75, 0x72, 0x6e, 0x5f, 0x70, 0x72, + 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x70, + 0x72, 0x65, 0x76, 0x6f, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x62, 0x75, + 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x50, 0x72, 0x65, 0x76, 0x6f, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x62, 0x75, 0x72, 0x6e, + 0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x74, 0x6f, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0c, 0x62, 0x75, 0x72, 0x6e, 0x56, 0x6f, 0x74, 0x65, 0x56, 0x65, 0x74, 0x6f, 0x3a, 0x02, + 0x18, 0x01, 0x22, 0xd1, 0x01, 0x0a, 0x09, 0x45, 0x47, 0x46, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x12, 0x76, 0x0a, 0x15, 0x65, 0x67, 0x66, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, + 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x27, 0xc8, 0xde, 0x1f, 0x00, + 0xea, 0xde, 0x1f, 0x1f, 0x65, 0x67, 0x66, 0x5f, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, + 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x2c, 0x6f, 0x6d, 0x69, 0x74, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0x52, 0x13, 0x65, 0x67, 0x66, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x54, + 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x48, 0x0a, 0x0b, 0x63, 0x6c, 0x61, 0x69, + 0x6d, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xea, + 0xde, 0x1f, 0x15, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x2c, 0x6f, + 0x6d, 0x69, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x0a, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x61, 0x74, + 0x69, 0x6f, 0x3a, 0x02, 0x18, 0x01, 0x42, 0x87, 0x01, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x2e, 0x66, + 0x78, 0x2e, 0x67, 0x6f, 0x76, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x47, 0x6f, 0x76, 0x4c, 0x65, 0x67, + 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x20, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, + 0x67, 0x6f, 0x76, 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x6f, 0x76, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, + 0x47, 0x58, 0xaa, 0x02, 0x09, 0x46, 0x78, 0x2e, 0x47, 0x6f, 0x76, 0x2e, 0x56, 0x31, 0xca, 0x02, + 0x09, 0x46, 0x78, 0x5c, 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x15, 0x46, 0x78, 0x5c, + 0x47, 0x6f, 0x76, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0xea, 0x02, 0x0b, 0x46, 0x78, 0x3a, 0x3a, 0x47, 0x6f, 0x76, 0x3a, 0x3a, 0x56, 0x31, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -5091,7 +5091,7 @@ var file_fx_gov_v1_gov_legacy_proto_goTypes = []interface{}{ (*MsgUpdateFXParams)(nil), // 0: fx.gov.v1.MsgUpdateFXParams (*MsgUpdateEGFParams)(nil), // 1: fx.gov.v1.MsgUpdateEGFParams (*MsgUpdateParams)(nil), // 2: fx.gov.v1.MsgUpdateParams - (*LegacyParams)(nil), // 3: fx.gov.v1.LegacyParams + (*LegacyGovParams)(nil), // 3: fx.gov.v1.LegacyGovParams (*Params)(nil), // 4: fx.gov.v1.Params (*EGFParams)(nil), // 5: fx.gov.v1.EGFParams (*v1beta1.Coin)(nil), // 6: cosmos.base.v1beta1.Coin @@ -5100,11 +5100,11 @@ var file_fx_gov_v1_gov_legacy_proto_goTypes = []interface{}{ var file_fx_gov_v1_gov_legacy_proto_depIdxs = []int32{ 4, // 0: fx.gov.v1.MsgUpdateFXParams.params:type_name -> fx.gov.v1.Params 5, // 1: fx.gov.v1.MsgUpdateEGFParams.params:type_name -> fx.gov.v1.EGFParams - 3, // 2: fx.gov.v1.MsgUpdateParams.params:type_name -> fx.gov.v1.LegacyParams - 6, // 3: fx.gov.v1.LegacyParams.min_deposit:type_name -> cosmos.base.v1beta1.Coin - 6, // 4: fx.gov.v1.LegacyParams.min_initial_deposit:type_name -> cosmos.base.v1beta1.Coin - 7, // 5: fx.gov.v1.LegacyParams.voting_period:type_name -> google.protobuf.Duration - 7, // 6: fx.gov.v1.LegacyParams.max_deposit_period:type_name -> google.protobuf.Duration + 3, // 2: fx.gov.v1.MsgUpdateParams.params:type_name -> fx.gov.v1.LegacyGovParams + 6, // 3: fx.gov.v1.LegacyGovParams.min_deposit:type_name -> cosmos.base.v1beta1.Coin + 6, // 4: fx.gov.v1.LegacyGovParams.min_initial_deposit:type_name -> cosmos.base.v1beta1.Coin + 7, // 5: fx.gov.v1.LegacyGovParams.voting_period:type_name -> google.protobuf.Duration + 7, // 6: fx.gov.v1.LegacyGovParams.max_deposit_period:type_name -> google.protobuf.Duration 6, // 7: fx.gov.v1.Params.min_deposit:type_name -> cosmos.base.v1beta1.Coin 6, // 8: fx.gov.v1.Params.min_initial_deposit:type_name -> cosmos.base.v1beta1.Coin 7, // 9: fx.gov.v1.Params.voting_period:type_name -> google.protobuf.Duration @@ -5160,7 +5160,7 @@ func file_fx_gov_v1_gov_legacy_proto_init() { } } file_fx_gov_v1_gov_legacy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LegacyParams); i { + switch v := v.(*LegacyGovParams); i { case 0: return &v.state case 1: diff --git a/api/fx/gravity/crosschain/v1/crosschain_legacy.pulsar.go b/api/fx/gravity/crosschain/v1/crosschain_legacy.pulsar.go new file mode 100644 index 00000000..63b086c7 --- /dev/null +++ b/api/fx/gravity/crosschain/v1/crosschain_legacy.pulsar.go @@ -0,0 +1,6647 @@ +// Code generated by protoc-gen-go-pulsar. DO NOT EDIT. +package crosschainv1 + +import ( + _ "cosmossdk.io/api/amino" + v1beta1 "cosmossdk.io/api/cosmos/base/v1beta1" + _ "cosmossdk.io/api/cosmos/msg/v1" + fmt "fmt" + _ "github.com/cosmos/cosmos-proto" + runtime "github.com/cosmos/cosmos-proto/runtime" + _ "github.com/cosmos/gogoproto/gogoproto" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoiface "google.golang.org/protobuf/runtime/protoiface" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + io "io" + reflect "reflect" + sync "sync" +) + +var ( + md_InitCrossChainParamsProposal protoreflect.MessageDescriptor + fd_InitCrossChainParamsProposal_title protoreflect.FieldDescriptor + fd_InitCrossChainParamsProposal_description protoreflect.FieldDescriptor + fd_InitCrossChainParamsProposal_params protoreflect.FieldDescriptor + fd_InitCrossChainParamsProposal_chain_name protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() + md_InitCrossChainParamsProposal = File_fx_gravity_crosschain_v1_crosschain_legacy_proto.Messages().ByName("InitCrossChainParamsProposal") + fd_InitCrossChainParamsProposal_title = md_InitCrossChainParamsProposal.Fields().ByName("title") + fd_InitCrossChainParamsProposal_description = md_InitCrossChainParamsProposal.Fields().ByName("description") + fd_InitCrossChainParamsProposal_params = md_InitCrossChainParamsProposal.Fields().ByName("params") + fd_InitCrossChainParamsProposal_chain_name = md_InitCrossChainParamsProposal.Fields().ByName("chain_name") +} + +var _ protoreflect.Message = (*fastReflection_InitCrossChainParamsProposal)(nil) + +type fastReflection_InitCrossChainParamsProposal InitCrossChainParamsProposal + +func (x *InitCrossChainParamsProposal) ProtoReflect() protoreflect.Message { + return (*fastReflection_InitCrossChainParamsProposal)(x) +} + +func (x *InitCrossChainParamsProposal) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[0] + 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_InitCrossChainParamsProposal_messageType fastReflection_InitCrossChainParamsProposal_messageType +var _ protoreflect.MessageType = fastReflection_InitCrossChainParamsProposal_messageType{} + +type fastReflection_InitCrossChainParamsProposal_messageType struct{} + +func (x fastReflection_InitCrossChainParamsProposal_messageType) Zero() protoreflect.Message { + return (*fastReflection_InitCrossChainParamsProposal)(nil) +} +func (x fastReflection_InitCrossChainParamsProposal_messageType) New() protoreflect.Message { + return new(fastReflection_InitCrossChainParamsProposal) +} +func (x fastReflection_InitCrossChainParamsProposal_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_InitCrossChainParamsProposal +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_InitCrossChainParamsProposal) Descriptor() protoreflect.MessageDescriptor { + return md_InitCrossChainParamsProposal +} + +// 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_InitCrossChainParamsProposal) Type() protoreflect.MessageType { + return _fastReflection_InitCrossChainParamsProposal_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_InitCrossChainParamsProposal) New() protoreflect.Message { + return new(fastReflection_InitCrossChainParamsProposal) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_InitCrossChainParamsProposal) Interface() protoreflect.ProtoMessage { + return (*InitCrossChainParamsProposal)(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_InitCrossChainParamsProposal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Title != "" { + value := protoreflect.ValueOfString(x.Title) + if !f(fd_InitCrossChainParamsProposal_title, value) { + return + } + } + if x.Description != "" { + value := protoreflect.ValueOfString(x.Description) + if !f(fd_InitCrossChainParamsProposal_description, value) { + return + } + } + if x.Params != nil { + value := protoreflect.ValueOfMessage(x.Params.ProtoReflect()) + if !f(fd_InitCrossChainParamsProposal_params, value) { + return + } + } + if x.ChainName != "" { + value := protoreflect.ValueOfString(x.ChainName) + if !f(fd_InitCrossChainParamsProposal_chain_name, 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_InitCrossChainParamsProposal) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": + return x.Title != "" + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": + return x.Description != "" + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": + return x.Params != nil + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": + return x.ChainName != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": + x.Title = "" + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": + x.Description = "" + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": + x.Params = nil + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": + x.ChainName = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": + value := x.Title + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": + value := x.Description + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": + value := x.Params + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": + value := x.ChainName + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": + x.Title = value.Interface().(string) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": + x.Description = value.Interface().(string) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": + x.Params = value.Message().Interface().(*ForkParams) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": + x.ChainName = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": + if x.Params == nil { + x.Params = new(ForkParams) + } + return protoreflect.ValueOfMessage(x.Params.ProtoReflect()) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": + panic(fmt.Errorf("field title of message fx.gravity.crosschain.v1.InitCrossChainParamsProposal is not mutable")) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": + panic(fmt.Errorf("field description of message fx.gravity.crosschain.v1.InitCrossChainParamsProposal is not mutable")) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": + panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.InitCrossChainParamsProposal is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": + m := new(ForkParams) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.InitCrossChainParamsProposal", 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_InitCrossChainParamsProposal) 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_InitCrossChainParamsProposal) 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_InitCrossChainParamsProposal) 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_InitCrossChainParamsProposal) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*InitCrossChainParamsProposal) + 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.Title) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Description) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Params != nil { + l = options.Size(x.Params) + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ChainName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*InitCrossChainParamsProposal) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.ChainName) > 0 { + i -= len(x.ChainName) + copy(dAtA[i:], x.ChainName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) + i-- + dAtA[i] = 0x22 + } + if x.Params != nil { + encoded, err := options.Marshal(x.Params) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x1a + } + if len(x.Description) > 0 { + i -= len(x.Description) + copy(dAtA[i:], x.Description) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Description))) + i-- + dAtA[i] = 0x12 + } + if len(x.Title) > 0 { + i -= len(x.Title) + copy(dAtA[i:], x.Title) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Title))) + 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().(*InitCrossChainParamsProposal) + 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: InitCrossChainParamsProposal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: InitCrossChainParamsProposal: 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 Title", 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.Title = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Description", 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.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Params == nil { + x.Params = &ForkParams{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var _ protoreflect.List = (*_ForkParams_9_list)(nil) + +type _ForkParams_9_list struct { + list *[]string +} + +func (x *_ForkParams_9_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_ForkParams_9_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfString((*x.list)[i]) +} + +func (x *_ForkParams_9_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.String() + concreteValue := valueUnwrapped + (*x.list)[i] = concreteValue +} + +func (x *_ForkParams_9_list) Append(value protoreflect.Value) { + valueUnwrapped := value.String() + concreteValue := valueUnwrapped + *x.list = append(*x.list, concreteValue) +} + +func (x *_ForkParams_9_list) AppendMutable() protoreflect.Value { + panic(fmt.Errorf("AppendMutable can not be called on message ForkParams at list field Oracles as it is not of Message kind")) +} + +func (x *_ForkParams_9_list) Truncate(n int) { + *x.list = (*x.list)[:n] +} + +func (x *_ForkParams_9_list) NewElement() protoreflect.Value { + v := "" + return protoreflect.ValueOfString(v) +} + +func (x *_ForkParams_9_list) IsValid() bool { + return x.list != nil +} + +var ( + md_ForkParams protoreflect.MessageDescriptor + fd_ForkParams_gravity_id protoreflect.FieldDescriptor + fd_ForkParams_average_block_time protoreflect.FieldDescriptor + fd_ForkParams_external_batch_timeout protoreflect.FieldDescriptor + fd_ForkParams_average_external_block_time protoreflect.FieldDescriptor + fd_ForkParams_signed_window protoreflect.FieldDescriptor + fd_ForkParams_slash_fraction protoreflect.FieldDescriptor + fd_ForkParams_oracle_set_update_power_change_percent protoreflect.FieldDescriptor + fd_ForkParams_ibc_transfer_timeout_height protoreflect.FieldDescriptor + fd_ForkParams_oracles protoreflect.FieldDescriptor + fd_ForkParams_delegate_threshold protoreflect.FieldDescriptor + fd_ForkParams_delegate_multiple protoreflect.FieldDescriptor + fd_ForkParams_bridge_call_timeout protoreflect.FieldDescriptor + fd_ForkParams_bridge_call_max_gas_limit protoreflect.FieldDescriptor + fd_ForkParams_enable_send_to_external_pending protoreflect.FieldDescriptor + fd_ForkParams_enable_bridge_call_pending protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() + md_ForkParams = File_fx_gravity_crosschain_v1_crosschain_legacy_proto.Messages().ByName("ForkParams") + fd_ForkParams_gravity_id = md_ForkParams.Fields().ByName("gravity_id") + fd_ForkParams_average_block_time = md_ForkParams.Fields().ByName("average_block_time") + fd_ForkParams_external_batch_timeout = md_ForkParams.Fields().ByName("external_batch_timeout") + fd_ForkParams_average_external_block_time = md_ForkParams.Fields().ByName("average_external_block_time") + fd_ForkParams_signed_window = md_ForkParams.Fields().ByName("signed_window") + fd_ForkParams_slash_fraction = md_ForkParams.Fields().ByName("slash_fraction") + fd_ForkParams_oracle_set_update_power_change_percent = md_ForkParams.Fields().ByName("oracle_set_update_power_change_percent") + fd_ForkParams_ibc_transfer_timeout_height = md_ForkParams.Fields().ByName("ibc_transfer_timeout_height") + fd_ForkParams_oracles = md_ForkParams.Fields().ByName("oracles") + fd_ForkParams_delegate_threshold = md_ForkParams.Fields().ByName("delegate_threshold") + fd_ForkParams_delegate_multiple = md_ForkParams.Fields().ByName("delegate_multiple") + fd_ForkParams_bridge_call_timeout = md_ForkParams.Fields().ByName("bridge_call_timeout") + fd_ForkParams_bridge_call_max_gas_limit = md_ForkParams.Fields().ByName("bridge_call_max_gas_limit") + fd_ForkParams_enable_send_to_external_pending = md_ForkParams.Fields().ByName("enable_send_to_external_pending") + fd_ForkParams_enable_bridge_call_pending = md_ForkParams.Fields().ByName("enable_bridge_call_pending") +} + +var _ protoreflect.Message = (*fastReflection_ForkParams)(nil) + +type fastReflection_ForkParams ForkParams + +func (x *ForkParams) ProtoReflect() protoreflect.Message { + return (*fastReflection_ForkParams)(x) +} + +func (x *ForkParams) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[1] + 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_ForkParams_messageType fastReflection_ForkParams_messageType +var _ protoreflect.MessageType = fastReflection_ForkParams_messageType{} + +type fastReflection_ForkParams_messageType struct{} + +func (x fastReflection_ForkParams_messageType) Zero() protoreflect.Message { + return (*fastReflection_ForkParams)(nil) +} +func (x fastReflection_ForkParams_messageType) New() protoreflect.Message { + return new(fastReflection_ForkParams) +} +func (x fastReflection_ForkParams_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_ForkParams +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_ForkParams) Descriptor() protoreflect.MessageDescriptor { + return md_ForkParams +} + +// 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_ForkParams) Type() protoreflect.MessageType { + return _fastReflection_ForkParams_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_ForkParams) New() protoreflect.Message { + return new(fastReflection_ForkParams) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_ForkParams) Interface() protoreflect.ProtoMessage { + return (*ForkParams)(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_ForkParams) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.GravityId != "" { + value := protoreflect.ValueOfString(x.GravityId) + if !f(fd_ForkParams_gravity_id, value) { + return + } + } + if x.AverageBlockTime != uint64(0) { + value := protoreflect.ValueOfUint64(x.AverageBlockTime) + if !f(fd_ForkParams_average_block_time, value) { + return + } + } + if x.ExternalBatchTimeout != uint64(0) { + value := protoreflect.ValueOfUint64(x.ExternalBatchTimeout) + if !f(fd_ForkParams_external_batch_timeout, value) { + return + } + } + if x.AverageExternalBlockTime != uint64(0) { + value := protoreflect.ValueOfUint64(x.AverageExternalBlockTime) + if !f(fd_ForkParams_average_external_block_time, value) { + return + } + } + if x.SignedWindow != uint64(0) { + value := protoreflect.ValueOfUint64(x.SignedWindow) + if !f(fd_ForkParams_signed_window, value) { + return + } + } + if len(x.SlashFraction) != 0 { + value := protoreflect.ValueOfBytes(x.SlashFraction) + if !f(fd_ForkParams_slash_fraction, value) { + return + } + } + if len(x.OracleSetUpdatePowerChangePercent) != 0 { + value := protoreflect.ValueOfBytes(x.OracleSetUpdatePowerChangePercent) + if !f(fd_ForkParams_oracle_set_update_power_change_percent, value) { + return + } + } + if x.IbcTransferTimeoutHeight != uint64(0) { + value := protoreflect.ValueOfUint64(x.IbcTransferTimeoutHeight) + if !f(fd_ForkParams_ibc_transfer_timeout_height, value) { + return + } + } + if len(x.Oracles) != 0 { + value := protoreflect.ValueOfList(&_ForkParams_9_list{list: &x.Oracles}) + if !f(fd_ForkParams_oracles, value) { + return + } + } + if x.DelegateThreshold != nil { + value := protoreflect.ValueOfMessage(x.DelegateThreshold.ProtoReflect()) + if !f(fd_ForkParams_delegate_threshold, value) { + return + } + } + if x.DelegateMultiple != int64(0) { + value := protoreflect.ValueOfInt64(x.DelegateMultiple) + if !f(fd_ForkParams_delegate_multiple, value) { + return + } + } + if x.BridgeCallTimeout != uint64(0) { + value := protoreflect.ValueOfUint64(x.BridgeCallTimeout) + if !f(fd_ForkParams_bridge_call_timeout, value) { + return + } + } + if x.BridgeCallMaxGasLimit != uint64(0) { + value := protoreflect.ValueOfUint64(x.BridgeCallMaxGasLimit) + if !f(fd_ForkParams_bridge_call_max_gas_limit, value) { + return + } + } + if x.EnableSendToExternalPending != false { + value := protoreflect.ValueOfBool(x.EnableSendToExternalPending) + if !f(fd_ForkParams_enable_send_to_external_pending, value) { + return + } + } + if x.EnableBridgeCallPending != false { + value := protoreflect.ValueOfBool(x.EnableBridgeCallPending) + if !f(fd_ForkParams_enable_bridge_call_pending, 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_ForkParams) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.ForkParams.gravity_id": + return x.GravityId != "" + case "fx.gravity.crosschain.v1.ForkParams.average_block_time": + return x.AverageBlockTime != uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.external_batch_timeout": + return x.ExternalBatchTimeout != uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.average_external_block_time": + return x.AverageExternalBlockTime != uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.signed_window": + return x.SignedWindow != uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.slash_fraction": + return len(x.SlashFraction) != 0 + case "fx.gravity.crosschain.v1.ForkParams.oracle_set_update_power_change_percent": + return len(x.OracleSetUpdatePowerChangePercent) != 0 + case "fx.gravity.crosschain.v1.ForkParams.ibc_transfer_timeout_height": + return x.IbcTransferTimeoutHeight != uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.oracles": + return len(x.Oracles) != 0 + case "fx.gravity.crosschain.v1.ForkParams.delegate_threshold": + return x.DelegateThreshold != nil + case "fx.gravity.crosschain.v1.ForkParams.delegate_multiple": + return x.DelegateMultiple != int64(0) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_timeout": + return x.BridgeCallTimeout != uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_max_gas_limit": + return x.BridgeCallMaxGasLimit != uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.enable_send_to_external_pending": + return x.EnableSendToExternalPending != false + case "fx.gravity.crosschain.v1.ForkParams.enable_bridge_call_pending": + return x.EnableBridgeCallPending != false + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.ForkParams")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.ForkParams 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_ForkParams) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.ForkParams.gravity_id": + x.GravityId = "" + case "fx.gravity.crosschain.v1.ForkParams.average_block_time": + x.AverageBlockTime = uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.external_batch_timeout": + x.ExternalBatchTimeout = uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.average_external_block_time": + x.AverageExternalBlockTime = uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.signed_window": + x.SignedWindow = uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.slash_fraction": + x.SlashFraction = nil + case "fx.gravity.crosschain.v1.ForkParams.oracle_set_update_power_change_percent": + x.OracleSetUpdatePowerChangePercent = nil + case "fx.gravity.crosschain.v1.ForkParams.ibc_transfer_timeout_height": + x.IbcTransferTimeoutHeight = uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.oracles": + x.Oracles = nil + case "fx.gravity.crosschain.v1.ForkParams.delegate_threshold": + x.DelegateThreshold = nil + case "fx.gravity.crosschain.v1.ForkParams.delegate_multiple": + x.DelegateMultiple = int64(0) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_timeout": + x.BridgeCallTimeout = uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_max_gas_limit": + x.BridgeCallMaxGasLimit = uint64(0) + case "fx.gravity.crosschain.v1.ForkParams.enable_send_to_external_pending": + x.EnableSendToExternalPending = false + case "fx.gravity.crosschain.v1.ForkParams.enable_bridge_call_pending": + x.EnableBridgeCallPending = false + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.ForkParams")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.ForkParams 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_ForkParams) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.ForkParams.gravity_id": + value := x.GravityId + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.ForkParams.average_block_time": + value := x.AverageBlockTime + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.ForkParams.external_batch_timeout": + value := x.ExternalBatchTimeout + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.ForkParams.average_external_block_time": + value := x.AverageExternalBlockTime + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.ForkParams.signed_window": + value := x.SignedWindow + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.ForkParams.slash_fraction": + value := x.SlashFraction + return protoreflect.ValueOfBytes(value) + case "fx.gravity.crosschain.v1.ForkParams.oracle_set_update_power_change_percent": + value := x.OracleSetUpdatePowerChangePercent + return protoreflect.ValueOfBytes(value) + case "fx.gravity.crosschain.v1.ForkParams.ibc_transfer_timeout_height": + value := x.IbcTransferTimeoutHeight + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.ForkParams.oracles": + if len(x.Oracles) == 0 { + return protoreflect.ValueOfList(&_ForkParams_9_list{}) + } + listValue := &_ForkParams_9_list{list: &x.Oracles} + return protoreflect.ValueOfList(listValue) + case "fx.gravity.crosschain.v1.ForkParams.delegate_threshold": + value := x.DelegateThreshold + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "fx.gravity.crosschain.v1.ForkParams.delegate_multiple": + value := x.DelegateMultiple + return protoreflect.ValueOfInt64(value) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_timeout": + value := x.BridgeCallTimeout + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_max_gas_limit": + value := x.BridgeCallMaxGasLimit + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.ForkParams.enable_send_to_external_pending": + value := x.EnableSendToExternalPending + return protoreflect.ValueOfBool(value) + case "fx.gravity.crosschain.v1.ForkParams.enable_bridge_call_pending": + value := x.EnableBridgeCallPending + return protoreflect.ValueOfBool(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.ForkParams")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.ForkParams 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_ForkParams) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.ForkParams.gravity_id": + x.GravityId = value.Interface().(string) + case "fx.gravity.crosschain.v1.ForkParams.average_block_time": + x.AverageBlockTime = value.Uint() + case "fx.gravity.crosschain.v1.ForkParams.external_batch_timeout": + x.ExternalBatchTimeout = value.Uint() + case "fx.gravity.crosschain.v1.ForkParams.average_external_block_time": + x.AverageExternalBlockTime = value.Uint() + case "fx.gravity.crosschain.v1.ForkParams.signed_window": + x.SignedWindow = value.Uint() + case "fx.gravity.crosschain.v1.ForkParams.slash_fraction": + x.SlashFraction = value.Bytes() + case "fx.gravity.crosschain.v1.ForkParams.oracle_set_update_power_change_percent": + x.OracleSetUpdatePowerChangePercent = value.Bytes() + case "fx.gravity.crosschain.v1.ForkParams.ibc_transfer_timeout_height": + x.IbcTransferTimeoutHeight = value.Uint() + case "fx.gravity.crosschain.v1.ForkParams.oracles": + lv := value.List() + clv := lv.(*_ForkParams_9_list) + x.Oracles = *clv.list + case "fx.gravity.crosschain.v1.ForkParams.delegate_threshold": + x.DelegateThreshold = value.Message().Interface().(*v1beta1.Coin) + case "fx.gravity.crosschain.v1.ForkParams.delegate_multiple": + x.DelegateMultiple = value.Int() + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_timeout": + x.BridgeCallTimeout = value.Uint() + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_max_gas_limit": + x.BridgeCallMaxGasLimit = value.Uint() + case "fx.gravity.crosschain.v1.ForkParams.enable_send_to_external_pending": + x.EnableSendToExternalPending = value.Bool() + case "fx.gravity.crosschain.v1.ForkParams.enable_bridge_call_pending": + x.EnableBridgeCallPending = value.Bool() + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.ForkParams")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.ForkParams 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_ForkParams) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.ForkParams.oracles": + if x.Oracles == nil { + x.Oracles = []string{} + } + value := &_ForkParams_9_list{list: &x.Oracles} + return protoreflect.ValueOfList(value) + case "fx.gravity.crosschain.v1.ForkParams.delegate_threshold": + if x.DelegateThreshold == nil { + x.DelegateThreshold = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.DelegateThreshold.ProtoReflect()) + case "fx.gravity.crosschain.v1.ForkParams.gravity_id": + panic(fmt.Errorf("field gravity_id of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.average_block_time": + panic(fmt.Errorf("field average_block_time of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.external_batch_timeout": + panic(fmt.Errorf("field external_batch_timeout of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.average_external_block_time": + panic(fmt.Errorf("field average_external_block_time of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.signed_window": + panic(fmt.Errorf("field signed_window of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.slash_fraction": + panic(fmt.Errorf("field slash_fraction of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.oracle_set_update_power_change_percent": + panic(fmt.Errorf("field oracle_set_update_power_change_percent of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.ibc_transfer_timeout_height": + panic(fmt.Errorf("field ibc_transfer_timeout_height of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.delegate_multiple": + panic(fmt.Errorf("field delegate_multiple of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_timeout": + panic(fmt.Errorf("field bridge_call_timeout of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_max_gas_limit": + panic(fmt.Errorf("field bridge_call_max_gas_limit of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.enable_send_to_external_pending": + panic(fmt.Errorf("field enable_send_to_external_pending of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + case "fx.gravity.crosschain.v1.ForkParams.enable_bridge_call_pending": + panic(fmt.Errorf("field enable_bridge_call_pending of message fx.gravity.crosschain.v1.ForkParams is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.ForkParams")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.ForkParams 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_ForkParams) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.ForkParams.gravity_id": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.ForkParams.average_block_time": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.ForkParams.external_batch_timeout": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.ForkParams.average_external_block_time": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.ForkParams.signed_window": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.ForkParams.slash_fraction": + return protoreflect.ValueOfBytes(nil) + case "fx.gravity.crosschain.v1.ForkParams.oracle_set_update_power_change_percent": + return protoreflect.ValueOfBytes(nil) + case "fx.gravity.crosschain.v1.ForkParams.ibc_transfer_timeout_height": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.ForkParams.oracles": + list := []string{} + return protoreflect.ValueOfList(&_ForkParams_9_list{list: &list}) + case "fx.gravity.crosschain.v1.ForkParams.delegate_threshold": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "fx.gravity.crosschain.v1.ForkParams.delegate_multiple": + return protoreflect.ValueOfInt64(int64(0)) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_timeout": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.ForkParams.bridge_call_max_gas_limit": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.ForkParams.enable_send_to_external_pending": + return protoreflect.ValueOfBool(false) + case "fx.gravity.crosschain.v1.ForkParams.enable_bridge_call_pending": + return protoreflect.ValueOfBool(false) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.ForkParams")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.ForkParams 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_ForkParams) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.ForkParams", 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_ForkParams) 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_ForkParams) 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_ForkParams) 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_ForkParams) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*ForkParams) + 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.GravityId) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.AverageBlockTime != 0 { + n += 1 + runtime.Sov(uint64(x.AverageBlockTime)) + } + if x.ExternalBatchTimeout != 0 { + n += 1 + runtime.Sov(uint64(x.ExternalBatchTimeout)) + } + if x.AverageExternalBlockTime != 0 { + n += 1 + runtime.Sov(uint64(x.AverageExternalBlockTime)) + } + if x.SignedWindow != 0 { + n += 1 + runtime.Sov(uint64(x.SignedWindow)) + } + l = len(x.SlashFraction) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.OracleSetUpdatePowerChangePercent) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.IbcTransferTimeoutHeight != 0 { + n += 1 + runtime.Sov(uint64(x.IbcTransferTimeoutHeight)) + } + if len(x.Oracles) > 0 { + for _, s := range x.Oracles { + l = len(s) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + if x.DelegateThreshold != nil { + l = options.Size(x.DelegateThreshold) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.DelegateMultiple != 0 { + n += 1 + runtime.Sov(uint64(x.DelegateMultiple)) + } + if x.BridgeCallTimeout != 0 { + n += 1 + runtime.Sov(uint64(x.BridgeCallTimeout)) + } + if x.BridgeCallMaxGasLimit != 0 { + n += 1 + runtime.Sov(uint64(x.BridgeCallMaxGasLimit)) + } + if x.EnableSendToExternalPending { + n += 2 + } + if x.EnableBridgeCallPending { + 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().(*ForkParams) + 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.EnableBridgeCallPending { + i-- + if x.EnableBridgeCallPending { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x78 + } + if x.EnableSendToExternalPending { + i-- + if x.EnableSendToExternalPending { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x70 + } + if x.BridgeCallMaxGasLimit != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.BridgeCallMaxGasLimit)) + i-- + dAtA[i] = 0x68 + } + if x.BridgeCallTimeout != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.BridgeCallTimeout)) + i-- + dAtA[i] = 0x60 + } + if x.DelegateMultiple != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.DelegateMultiple)) + i-- + dAtA[i] = 0x58 + } + if x.DelegateThreshold != nil { + encoded, err := options.Marshal(x.DelegateThreshold) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x52 + } + if len(x.Oracles) > 0 { + for iNdEx := len(x.Oracles) - 1; iNdEx >= 0; iNdEx-- { + i -= len(x.Oracles[iNdEx]) + copy(dAtA[i:], x.Oracles[iNdEx]) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Oracles[iNdEx]))) + i-- + dAtA[i] = 0x4a + } + } + if x.IbcTransferTimeoutHeight != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.IbcTransferTimeoutHeight)) + i-- + dAtA[i] = 0x40 + } + if len(x.OracleSetUpdatePowerChangePercent) > 0 { + i -= len(x.OracleSetUpdatePowerChangePercent) + copy(dAtA[i:], x.OracleSetUpdatePowerChangePercent) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.OracleSetUpdatePowerChangePercent))) + i-- + dAtA[i] = 0x3a + } + if len(x.SlashFraction) > 0 { + i -= len(x.SlashFraction) + copy(dAtA[i:], x.SlashFraction) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.SlashFraction))) + i-- + dAtA[i] = 0x32 + } + if x.SignedWindow != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.SignedWindow)) + i-- + dAtA[i] = 0x28 + } + if x.AverageExternalBlockTime != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.AverageExternalBlockTime)) + i-- + dAtA[i] = 0x20 + } + if x.ExternalBatchTimeout != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.ExternalBatchTimeout)) + i-- + dAtA[i] = 0x18 + } + if x.AverageBlockTime != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.AverageBlockTime)) + i-- + dAtA[i] = 0x10 + } + if len(x.GravityId) > 0 { + i -= len(x.GravityId) + copy(dAtA[i:], x.GravityId) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.GravityId))) + 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().(*ForkParams) + 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: ForkParams: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ForkParams: 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 GravityId", 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.GravityId = 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 AverageBlockTime", wireType) + } + x.AverageBlockTime = 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.AverageBlockTime |= 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 ExternalBatchTimeout", wireType) + } + x.ExternalBatchTimeout = 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.ExternalBatchTimeout |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AverageExternalBlockTime", wireType) + } + x.AverageExternalBlockTime = 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.AverageExternalBlockTime |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field SignedWindow", wireType) + } + x.SignedWindow = 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.SignedWindow |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field SlashFraction", wireType) + } + var byteLen 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++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + byteLen + 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.SlashFraction = append(x.SlashFraction[:0], dAtA[iNdEx:postIndex]...) + if x.SlashFraction == nil { + x.SlashFraction = []byte{} + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field OracleSetUpdatePowerChangePercent", wireType) + } + var byteLen 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++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + byteLen + 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.OracleSetUpdatePowerChangePercent = append(x.OracleSetUpdatePowerChangePercent[:0], dAtA[iNdEx:postIndex]...) + if x.OracleSetUpdatePowerChangePercent == nil { + x.OracleSetUpdatePowerChangePercent = []byte{} + } + iNdEx = postIndex + case 8: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field IbcTransferTimeoutHeight", wireType) + } + x.IbcTransferTimeoutHeight = 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.IbcTransferTimeoutHeight |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 9: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Oracles", 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.Oracles = append(x.Oracles, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field DelegateThreshold", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.DelegateThreshold == nil { + x.DelegateThreshold = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.DelegateThreshold); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 11: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field DelegateMultiple", wireType) + } + x.DelegateMultiple = 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.DelegateMultiple |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 12: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BridgeCallTimeout", wireType) + } + x.BridgeCallTimeout = 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.BridgeCallTimeout |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 13: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BridgeCallMaxGasLimit", wireType) + } + x.BridgeCallMaxGasLimit = 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.BridgeCallMaxGasLimit |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 14: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EnableSendToExternalPending", 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.EnableSendToExternalPending = bool(v != 0) + case 15: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EnableBridgeCallPending", 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.EnableBridgeCallPending = 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 _ protoreflect.List = (*_UpdateChainOraclesProposal_3_list)(nil) + +type _UpdateChainOraclesProposal_3_list struct { + list *[]string +} + +func (x *_UpdateChainOraclesProposal_3_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_UpdateChainOraclesProposal_3_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfString((*x.list)[i]) +} + +func (x *_UpdateChainOraclesProposal_3_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.String() + concreteValue := valueUnwrapped + (*x.list)[i] = concreteValue +} + +func (x *_UpdateChainOraclesProposal_3_list) Append(value protoreflect.Value) { + valueUnwrapped := value.String() + concreteValue := valueUnwrapped + *x.list = append(*x.list, concreteValue) +} + +func (x *_UpdateChainOraclesProposal_3_list) AppendMutable() protoreflect.Value { + panic(fmt.Errorf("AppendMutable can not be called on message UpdateChainOraclesProposal at list field Oracles as it is not of Message kind")) +} + +func (x *_UpdateChainOraclesProposal_3_list) Truncate(n int) { + *x.list = (*x.list)[:n] +} + +func (x *_UpdateChainOraclesProposal_3_list) NewElement() protoreflect.Value { + v := "" + return protoreflect.ValueOfString(v) +} + +func (x *_UpdateChainOraclesProposal_3_list) IsValid() bool { + return x.list != nil +} + +var ( + md_UpdateChainOraclesProposal protoreflect.MessageDescriptor + fd_UpdateChainOraclesProposal_title protoreflect.FieldDescriptor + fd_UpdateChainOraclesProposal_description protoreflect.FieldDescriptor + fd_UpdateChainOraclesProposal_oracles protoreflect.FieldDescriptor + fd_UpdateChainOraclesProposal_chain_name protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() + md_UpdateChainOraclesProposal = File_fx_gravity_crosschain_v1_crosschain_legacy_proto.Messages().ByName("UpdateChainOraclesProposal") + fd_UpdateChainOraclesProposal_title = md_UpdateChainOraclesProposal.Fields().ByName("title") + fd_UpdateChainOraclesProposal_description = md_UpdateChainOraclesProposal.Fields().ByName("description") + fd_UpdateChainOraclesProposal_oracles = md_UpdateChainOraclesProposal.Fields().ByName("oracles") + fd_UpdateChainOraclesProposal_chain_name = md_UpdateChainOraclesProposal.Fields().ByName("chain_name") +} + +var _ protoreflect.Message = (*fastReflection_UpdateChainOraclesProposal)(nil) + +type fastReflection_UpdateChainOraclesProposal UpdateChainOraclesProposal + +func (x *UpdateChainOraclesProposal) ProtoReflect() protoreflect.Message { + return (*fastReflection_UpdateChainOraclesProposal)(x) +} + +func (x *UpdateChainOraclesProposal) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[2] + 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_UpdateChainOraclesProposal_messageType fastReflection_UpdateChainOraclesProposal_messageType +var _ protoreflect.MessageType = fastReflection_UpdateChainOraclesProposal_messageType{} + +type fastReflection_UpdateChainOraclesProposal_messageType struct{} + +func (x fastReflection_UpdateChainOraclesProposal_messageType) Zero() protoreflect.Message { + return (*fastReflection_UpdateChainOraclesProposal)(nil) +} +func (x fastReflection_UpdateChainOraclesProposal_messageType) New() protoreflect.Message { + return new(fastReflection_UpdateChainOraclesProposal) +} +func (x fastReflection_UpdateChainOraclesProposal_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_UpdateChainOraclesProposal +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_UpdateChainOraclesProposal) Descriptor() protoreflect.MessageDescriptor { + return md_UpdateChainOraclesProposal +} + +// 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_UpdateChainOraclesProposal) Type() protoreflect.MessageType { + return _fastReflection_UpdateChainOraclesProposal_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_UpdateChainOraclesProposal) New() protoreflect.Message { + return new(fastReflection_UpdateChainOraclesProposal) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_UpdateChainOraclesProposal) Interface() protoreflect.ProtoMessage { + return (*UpdateChainOraclesProposal)(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_UpdateChainOraclesProposal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Title != "" { + value := protoreflect.ValueOfString(x.Title) + if !f(fd_UpdateChainOraclesProposal_title, value) { + return + } + } + if x.Description != "" { + value := protoreflect.ValueOfString(x.Description) + if !f(fd_UpdateChainOraclesProposal_description, value) { + return + } + } + if len(x.Oracles) != 0 { + value := protoreflect.ValueOfList(&_UpdateChainOraclesProposal_3_list{list: &x.Oracles}) + if !f(fd_UpdateChainOraclesProposal_oracles, value) { + return + } + } + if x.ChainName != "" { + value := protoreflect.ValueOfString(x.ChainName) + if !f(fd_UpdateChainOraclesProposal_chain_name, 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_UpdateChainOraclesProposal) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": + return x.Title != "" + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": + return x.Description != "" + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": + return len(x.Oracles) != 0 + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": + return x.ChainName != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": + x.Title = "" + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": + x.Description = "" + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": + x.Oracles = nil + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": + x.ChainName = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": + value := x.Title + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": + value := x.Description + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": + if len(x.Oracles) == 0 { + return protoreflect.ValueOfList(&_UpdateChainOraclesProposal_3_list{}) + } + listValue := &_UpdateChainOraclesProposal_3_list{list: &x.Oracles} + return protoreflect.ValueOfList(listValue) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": + value := x.ChainName + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": + x.Title = value.Interface().(string) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": + x.Description = value.Interface().(string) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": + lv := value.List() + clv := lv.(*_UpdateChainOraclesProposal_3_list) + x.Oracles = *clv.list + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": + x.ChainName = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": + if x.Oracles == nil { + x.Oracles = []string{} + } + value := &_UpdateChainOraclesProposal_3_list{list: &x.Oracles} + return protoreflect.ValueOfList(value) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": + panic(fmt.Errorf("field title of message fx.gravity.crosschain.v1.UpdateChainOraclesProposal is not mutable")) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": + panic(fmt.Errorf("field description of message fx.gravity.crosschain.v1.UpdateChainOraclesProposal is not mutable")) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": + panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.UpdateChainOraclesProposal is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": + list := []string{} + return protoreflect.ValueOfList(&_UpdateChainOraclesProposal_3_list{list: &list}) + case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.UpdateChainOraclesProposal", 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_UpdateChainOraclesProposal) 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_UpdateChainOraclesProposal) 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_UpdateChainOraclesProposal) 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_UpdateChainOraclesProposal) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*UpdateChainOraclesProposal) + 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.Title) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Description) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if len(x.Oracles) > 0 { + for _, s := range x.Oracles { + l = len(s) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + l = len(x.ChainName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*UpdateChainOraclesProposal) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.ChainName) > 0 { + i -= len(x.ChainName) + copy(dAtA[i:], x.ChainName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) + i-- + dAtA[i] = 0x22 + } + if len(x.Oracles) > 0 { + for iNdEx := len(x.Oracles) - 1; iNdEx >= 0; iNdEx-- { + i -= len(x.Oracles[iNdEx]) + copy(dAtA[i:], x.Oracles[iNdEx]) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Oracles[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(x.Description) > 0 { + i -= len(x.Description) + copy(dAtA[i:], x.Description) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Description))) + i-- + dAtA[i] = 0x12 + } + if len(x.Title) > 0 { + i -= len(x.Title) + copy(dAtA[i:], x.Title) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Title))) + 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().(*UpdateChainOraclesProposal) + 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: UpdateChainOraclesProposal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: UpdateChainOraclesProposal: 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 Title", 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.Title = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Description", 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.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Oracles", 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.Oracles = append(x.Oracles, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgSetOrchestratorAddress protoreflect.MessageDescriptor + fd_MsgSetOrchestratorAddress_oracle_address protoreflect.FieldDescriptor + fd_MsgSetOrchestratorAddress_bridger_address protoreflect.FieldDescriptor + fd_MsgSetOrchestratorAddress_external_address protoreflect.FieldDescriptor + fd_MsgSetOrchestratorAddress_deposit protoreflect.FieldDescriptor + fd_MsgSetOrchestratorAddress_chain_name protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() + md_MsgSetOrchestratorAddress = File_fx_gravity_crosschain_v1_crosschain_legacy_proto.Messages().ByName("MsgSetOrchestratorAddress") + fd_MsgSetOrchestratorAddress_oracle_address = md_MsgSetOrchestratorAddress.Fields().ByName("oracle_address") + fd_MsgSetOrchestratorAddress_bridger_address = md_MsgSetOrchestratorAddress.Fields().ByName("bridger_address") + fd_MsgSetOrchestratorAddress_external_address = md_MsgSetOrchestratorAddress.Fields().ByName("external_address") + fd_MsgSetOrchestratorAddress_deposit = md_MsgSetOrchestratorAddress.Fields().ByName("deposit") + fd_MsgSetOrchestratorAddress_chain_name = md_MsgSetOrchestratorAddress.Fields().ByName("chain_name") +} + +var _ protoreflect.Message = (*fastReflection_MsgSetOrchestratorAddress)(nil) + +type fastReflection_MsgSetOrchestratorAddress MsgSetOrchestratorAddress + +func (x *MsgSetOrchestratorAddress) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgSetOrchestratorAddress)(x) +} + +func (x *MsgSetOrchestratorAddress) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[3] + 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_MsgSetOrchestratorAddress_messageType fastReflection_MsgSetOrchestratorAddress_messageType +var _ protoreflect.MessageType = fastReflection_MsgSetOrchestratorAddress_messageType{} + +type fastReflection_MsgSetOrchestratorAddress_messageType struct{} + +func (x fastReflection_MsgSetOrchestratorAddress_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgSetOrchestratorAddress)(nil) +} +func (x fastReflection_MsgSetOrchestratorAddress_messageType) New() protoreflect.Message { + return new(fastReflection_MsgSetOrchestratorAddress) +} +func (x fastReflection_MsgSetOrchestratorAddress_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgSetOrchestratorAddress +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgSetOrchestratorAddress) Descriptor() protoreflect.MessageDescriptor { + return md_MsgSetOrchestratorAddress +} + +// 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_MsgSetOrchestratorAddress) Type() protoreflect.MessageType { + return _fastReflection_MsgSetOrchestratorAddress_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgSetOrchestratorAddress) New() protoreflect.Message { + return new(fastReflection_MsgSetOrchestratorAddress) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgSetOrchestratorAddress) Interface() protoreflect.ProtoMessage { + return (*MsgSetOrchestratorAddress)(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_MsgSetOrchestratorAddress) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.OracleAddress != "" { + value := protoreflect.ValueOfString(x.OracleAddress) + if !f(fd_MsgSetOrchestratorAddress_oracle_address, value) { + return + } + } + if x.BridgerAddress != "" { + value := protoreflect.ValueOfString(x.BridgerAddress) + if !f(fd_MsgSetOrchestratorAddress_bridger_address, value) { + return + } + } + if x.ExternalAddress != "" { + value := protoreflect.ValueOfString(x.ExternalAddress) + if !f(fd_MsgSetOrchestratorAddress_external_address, value) { + return + } + } + if x.Deposit != nil { + value := protoreflect.ValueOfMessage(x.Deposit.ProtoReflect()) + if !f(fd_MsgSetOrchestratorAddress_deposit, value) { + return + } + } + if x.ChainName != "" { + value := protoreflect.ValueOfString(x.ChainName) + if !f(fd_MsgSetOrchestratorAddress_chain_name, 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_MsgSetOrchestratorAddress) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": + return x.OracleAddress != "" + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": + return x.BridgerAddress != "" + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": + return x.ExternalAddress != "" + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": + return x.Deposit != nil + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": + return x.ChainName != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": + x.OracleAddress = "" + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": + x.BridgerAddress = "" + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": + x.ExternalAddress = "" + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": + x.Deposit = nil + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": + x.ChainName = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": + value := x.OracleAddress + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": + value := x.BridgerAddress + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": + value := x.ExternalAddress + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": + value := x.Deposit + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": + value := x.ChainName + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": + x.OracleAddress = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": + x.BridgerAddress = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": + x.ExternalAddress = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": + x.Deposit = value.Message().Interface().(*v1beta1.Coin) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": + x.ChainName = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": + if x.Deposit == nil { + x.Deposit = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.Deposit.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": + panic(fmt.Errorf("field oracle_address of message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress is not mutable")) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": + panic(fmt.Errorf("field bridger_address of message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress is not mutable")) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": + panic(fmt.Errorf("field external_address of message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress is not mutable")) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": + panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgSetOrchestratorAddress", 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgSetOrchestratorAddress) + 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.OracleAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.BridgerAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ExternalAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Deposit != nil { + l = options.Size(x.Deposit) + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ChainName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgSetOrchestratorAddress) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.ChainName) > 0 { + i -= len(x.ChainName) + copy(dAtA[i:], x.ChainName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) + i-- + dAtA[i] = 0x2a + } + if x.Deposit != nil { + encoded, err := options.Marshal(x.Deposit) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x22 + } + if len(x.ExternalAddress) > 0 { + i -= len(x.ExternalAddress) + copy(dAtA[i:], x.ExternalAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ExternalAddress))) + i-- + dAtA[i] = 0x1a + } + if len(x.BridgerAddress) > 0 { + i -= len(x.BridgerAddress) + copy(dAtA[i:], x.BridgerAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.BridgerAddress))) + i-- + dAtA[i] = 0x12 + } + if len(x.OracleAddress) > 0 { + i -= len(x.OracleAddress) + copy(dAtA[i:], x.OracleAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.OracleAddress))) + 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().(*MsgSetOrchestratorAddress) + 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: MsgSetOrchestratorAddress: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSetOrchestratorAddress: 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 OracleAddress", 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.OracleAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BridgerAddress", 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.BridgerAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ExternalAddress", 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.ExternalAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Deposit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Deposit == nil { + x.Deposit = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Deposit); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgAddOracleDeposit protoreflect.MessageDescriptor + fd_MsgAddOracleDeposit_oracle_address protoreflect.FieldDescriptor + fd_MsgAddOracleDeposit_amount protoreflect.FieldDescriptor + fd_MsgAddOracleDeposit_chain_name protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() + md_MsgAddOracleDeposit = File_fx_gravity_crosschain_v1_crosschain_legacy_proto.Messages().ByName("MsgAddOracleDeposit") + fd_MsgAddOracleDeposit_oracle_address = md_MsgAddOracleDeposit.Fields().ByName("oracle_address") + fd_MsgAddOracleDeposit_amount = md_MsgAddOracleDeposit.Fields().ByName("amount") + fd_MsgAddOracleDeposit_chain_name = md_MsgAddOracleDeposit.Fields().ByName("chain_name") +} + +var _ protoreflect.Message = (*fastReflection_MsgAddOracleDeposit)(nil) + +type fastReflection_MsgAddOracleDeposit MsgAddOracleDeposit + +func (x *MsgAddOracleDeposit) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgAddOracleDeposit)(x) +} + +func (x *MsgAddOracleDeposit) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[4] + 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_MsgAddOracleDeposit_messageType fastReflection_MsgAddOracleDeposit_messageType +var _ protoreflect.MessageType = fastReflection_MsgAddOracleDeposit_messageType{} + +type fastReflection_MsgAddOracleDeposit_messageType struct{} + +func (x fastReflection_MsgAddOracleDeposit_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgAddOracleDeposit)(nil) +} +func (x fastReflection_MsgAddOracleDeposit_messageType) New() protoreflect.Message { + return new(fastReflection_MsgAddOracleDeposit) +} +func (x fastReflection_MsgAddOracleDeposit_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgAddOracleDeposit +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgAddOracleDeposit) Descriptor() protoreflect.MessageDescriptor { + return md_MsgAddOracleDeposit +} + +// 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_MsgAddOracleDeposit) Type() protoreflect.MessageType { + return _fastReflection_MsgAddOracleDeposit_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgAddOracleDeposit) New() protoreflect.Message { + return new(fastReflection_MsgAddOracleDeposit) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgAddOracleDeposit) Interface() protoreflect.ProtoMessage { + return (*MsgAddOracleDeposit)(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_MsgAddOracleDeposit) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.OracleAddress != "" { + value := protoreflect.ValueOfString(x.OracleAddress) + if !f(fd_MsgAddOracleDeposit_oracle_address, value) { + return + } + } + if x.Amount != nil { + value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + if !f(fd_MsgAddOracleDeposit_amount, value) { + return + } + } + if x.ChainName != "" { + value := protoreflect.ValueOfString(x.ChainName) + if !f(fd_MsgAddOracleDeposit_chain_name, 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_MsgAddOracleDeposit) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": + return x.OracleAddress != "" + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": + return x.Amount != nil + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": + return x.ChainName != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": + x.OracleAddress = "" + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": + x.Amount = nil + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": + x.ChainName = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": + value := x.OracleAddress + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": + value := x.Amount + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": + value := x.ChainName + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": + x.OracleAddress = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": + x.Amount = value.Message().Interface().(*v1beta1.Coin) + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": + x.ChainName = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": + if x.Amount == nil { + x.Amount = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": + panic(fmt.Errorf("field oracle_address of message fx.gravity.crosschain.v1.MsgAddOracleDeposit is not mutable")) + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": + panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgAddOracleDeposit is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgAddOracleDeposit", 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_MsgAddOracleDeposit) 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_MsgAddOracleDeposit) 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_MsgAddOracleDeposit) 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_MsgAddOracleDeposit) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgAddOracleDeposit) + 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.OracleAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Amount != nil { + l = options.Size(x.Amount) + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ChainName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgAddOracleDeposit) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.ChainName) > 0 { + i -= len(x.ChainName) + copy(dAtA[i:], x.ChainName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) + i-- + dAtA[i] = 0x1a + } + if x.Amount != nil { + encoded, err := options.Marshal(x.Amount) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x12 + } + if len(x.OracleAddress) > 0 { + i -= len(x.OracleAddress) + copy(dAtA[i:], x.OracleAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.OracleAddress))) + 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().(*MsgAddOracleDeposit) + 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: MsgAddOracleDeposit: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgAddOracleDeposit: 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 OracleAddress", 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.OracleAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Amount == nil { + x.Amount = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgCancelSendToExternal protoreflect.MessageDescriptor + fd_MsgCancelSendToExternal_transaction_id protoreflect.FieldDescriptor + fd_MsgCancelSendToExternal_sender protoreflect.FieldDescriptor + fd_MsgCancelSendToExternal_chain_name protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() + md_MsgCancelSendToExternal = File_fx_gravity_crosschain_v1_crosschain_legacy_proto.Messages().ByName("MsgCancelSendToExternal") + fd_MsgCancelSendToExternal_transaction_id = md_MsgCancelSendToExternal.Fields().ByName("transaction_id") + fd_MsgCancelSendToExternal_sender = md_MsgCancelSendToExternal.Fields().ByName("sender") + fd_MsgCancelSendToExternal_chain_name = md_MsgCancelSendToExternal.Fields().ByName("chain_name") +} + +var _ protoreflect.Message = (*fastReflection_MsgCancelSendToExternal)(nil) + +type fastReflection_MsgCancelSendToExternal MsgCancelSendToExternal + +func (x *MsgCancelSendToExternal) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgCancelSendToExternal)(x) +} + +func (x *MsgCancelSendToExternal) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[5] + 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_MsgCancelSendToExternal_messageType fastReflection_MsgCancelSendToExternal_messageType +var _ protoreflect.MessageType = fastReflection_MsgCancelSendToExternal_messageType{} + +type fastReflection_MsgCancelSendToExternal_messageType struct{} + +func (x fastReflection_MsgCancelSendToExternal_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgCancelSendToExternal)(nil) +} +func (x fastReflection_MsgCancelSendToExternal_messageType) New() protoreflect.Message { + return new(fastReflection_MsgCancelSendToExternal) +} +func (x fastReflection_MsgCancelSendToExternal_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgCancelSendToExternal +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgCancelSendToExternal) Descriptor() protoreflect.MessageDescriptor { + return md_MsgCancelSendToExternal +} + +// 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_MsgCancelSendToExternal) Type() protoreflect.MessageType { + return _fastReflection_MsgCancelSendToExternal_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgCancelSendToExternal) New() protoreflect.Message { + return new(fastReflection_MsgCancelSendToExternal) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgCancelSendToExternal) Interface() protoreflect.ProtoMessage { + return (*MsgCancelSendToExternal)(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_MsgCancelSendToExternal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.TransactionId != uint64(0) { + value := protoreflect.ValueOfUint64(x.TransactionId) + if !f(fd_MsgCancelSendToExternal_transaction_id, value) { + return + } + } + if x.Sender != "" { + value := protoreflect.ValueOfString(x.Sender) + if !f(fd_MsgCancelSendToExternal_sender, value) { + return + } + } + if x.ChainName != "" { + value := protoreflect.ValueOfString(x.ChainName) + if !f(fd_MsgCancelSendToExternal_chain_name, 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_MsgCancelSendToExternal) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": + return x.TransactionId != uint64(0) + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": + return x.Sender != "" + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": + return x.ChainName != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": + x.TransactionId = uint64(0) + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": + x.Sender = "" + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": + x.ChainName = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": + value := x.TransactionId + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": + value := x.Sender + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": + value := x.ChainName + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": + x.TransactionId = value.Uint() + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": + x.Sender = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": + x.ChainName = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": + panic(fmt.Errorf("field transaction_id of message fx.gravity.crosschain.v1.MsgCancelSendToExternal is not mutable")) + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": + panic(fmt.Errorf("field sender of message fx.gravity.crosschain.v1.MsgCancelSendToExternal is not mutable")) + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": + panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgCancelSendToExternal is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgCancelSendToExternal", 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_MsgCancelSendToExternal) 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_MsgCancelSendToExternal) 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_MsgCancelSendToExternal) 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_MsgCancelSendToExternal) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgCancelSendToExternal) + 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.TransactionId != 0 { + n += 1 + runtime.Sov(uint64(x.TransactionId)) + } + l = len(x.Sender) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ChainName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgCancelSendToExternal) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.ChainName) > 0 { + i -= len(x.ChainName) + copy(dAtA[i:], x.ChainName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) + i-- + dAtA[i] = 0x1a + } + if len(x.Sender) > 0 { + i -= len(x.Sender) + copy(dAtA[i:], x.Sender) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) + i-- + dAtA[i] = 0x12 + } + if x.TransactionId != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.TransactionId)) + i-- + dAtA[i] = 0x8 + } + 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().(*MsgCancelSendToExternal) + 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: MsgCancelSendToExternal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgCancelSendToExternal: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TransactionId", wireType) + } + x.TransactionId = 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.TransactionId |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgRequestBatch protoreflect.MessageDescriptor + fd_MsgRequestBatch_sender protoreflect.FieldDescriptor + fd_MsgRequestBatch_denom protoreflect.FieldDescriptor + fd_MsgRequestBatch_minimum_fee protoreflect.FieldDescriptor + fd_MsgRequestBatch_fee_receive protoreflect.FieldDescriptor + fd_MsgRequestBatch_chain_name protoreflect.FieldDescriptor + fd_MsgRequestBatch_base_fee protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() + md_MsgRequestBatch = File_fx_gravity_crosschain_v1_crosschain_legacy_proto.Messages().ByName("MsgRequestBatch") + fd_MsgRequestBatch_sender = md_MsgRequestBatch.Fields().ByName("sender") + fd_MsgRequestBatch_denom = md_MsgRequestBatch.Fields().ByName("denom") + fd_MsgRequestBatch_minimum_fee = md_MsgRequestBatch.Fields().ByName("minimum_fee") + fd_MsgRequestBatch_fee_receive = md_MsgRequestBatch.Fields().ByName("fee_receive") + fd_MsgRequestBatch_chain_name = md_MsgRequestBatch.Fields().ByName("chain_name") + fd_MsgRequestBatch_base_fee = md_MsgRequestBatch.Fields().ByName("base_fee") +} + +var _ protoreflect.Message = (*fastReflection_MsgRequestBatch)(nil) + +type fastReflection_MsgRequestBatch MsgRequestBatch + +func (x *MsgRequestBatch) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgRequestBatch)(x) +} + +func (x *MsgRequestBatch) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[6] + 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_MsgRequestBatch_messageType fastReflection_MsgRequestBatch_messageType +var _ protoreflect.MessageType = fastReflection_MsgRequestBatch_messageType{} + +type fastReflection_MsgRequestBatch_messageType struct{} + +func (x fastReflection_MsgRequestBatch_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgRequestBatch)(nil) +} +func (x fastReflection_MsgRequestBatch_messageType) New() protoreflect.Message { + return new(fastReflection_MsgRequestBatch) +} +func (x fastReflection_MsgRequestBatch_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgRequestBatch +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgRequestBatch) Descriptor() protoreflect.MessageDescriptor { + return md_MsgRequestBatch +} + +// 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_MsgRequestBatch) Type() protoreflect.MessageType { + return _fastReflection_MsgRequestBatch_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgRequestBatch) New() protoreflect.Message { + return new(fastReflection_MsgRequestBatch) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgRequestBatch) Interface() protoreflect.ProtoMessage { + return (*MsgRequestBatch)(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_MsgRequestBatch) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Sender != "" { + value := protoreflect.ValueOfString(x.Sender) + if !f(fd_MsgRequestBatch_sender, value) { + return + } + } + if x.Denom != "" { + value := protoreflect.ValueOfString(x.Denom) + if !f(fd_MsgRequestBatch_denom, value) { + return + } + } + if x.MinimumFee != "" { + value := protoreflect.ValueOfString(x.MinimumFee) + if !f(fd_MsgRequestBatch_minimum_fee, value) { + return + } + } + if x.FeeReceive != "" { + value := protoreflect.ValueOfString(x.FeeReceive) + if !f(fd_MsgRequestBatch_fee_receive, value) { + return + } + } + if x.ChainName != "" { + value := protoreflect.ValueOfString(x.ChainName) + if !f(fd_MsgRequestBatch_chain_name, value) { + return + } + } + if x.BaseFee != "" { + value := protoreflect.ValueOfString(x.BaseFee) + if !f(fd_MsgRequestBatch_base_fee, 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_MsgRequestBatch) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": + return x.Sender != "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": + return x.Denom != "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": + return x.MinimumFee != "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": + return x.FeeReceive != "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": + return x.ChainName != "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": + return x.BaseFee != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": + x.Sender = "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": + x.Denom = "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": + x.MinimumFee = "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": + x.FeeReceive = "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": + x.ChainName = "" + case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": + x.BaseFee = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": + value := x.Sender + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": + value := x.Denom + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": + value := x.MinimumFee + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": + value := x.FeeReceive + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": + value := x.ChainName + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": + value := x.BaseFee + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": + x.Sender = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": + x.Denom = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": + x.MinimumFee = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": + x.FeeReceive = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": + x.ChainName = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": + x.BaseFee = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": + panic(fmt.Errorf("field sender of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": + panic(fmt.Errorf("field denom of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": + panic(fmt.Errorf("field minimum_fee of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": + panic(fmt.Errorf("field fee_receive of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": + panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": + panic(fmt.Errorf("field base_fee of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgRequestBatch", 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_MsgRequestBatch) 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_MsgRequestBatch) 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_MsgRequestBatch) 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_MsgRequestBatch) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgRequestBatch) + 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.Sender) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Denom) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.MinimumFee) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.FeeReceive) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ChainName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.BaseFee) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgRequestBatch) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.BaseFee) > 0 { + i -= len(x.BaseFee) + copy(dAtA[i:], x.BaseFee) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.BaseFee))) + i-- + dAtA[i] = 0x32 + } + if len(x.ChainName) > 0 { + i -= len(x.ChainName) + copy(dAtA[i:], x.ChainName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) + i-- + dAtA[i] = 0x2a + } + if len(x.FeeReceive) > 0 { + i -= len(x.FeeReceive) + copy(dAtA[i:], x.FeeReceive) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.FeeReceive))) + i-- + dAtA[i] = 0x22 + } + if len(x.MinimumFee) > 0 { + i -= len(x.MinimumFee) + copy(dAtA[i:], x.MinimumFee) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.MinimumFee))) + i-- + dAtA[i] = 0x1a + } + if len(x.Denom) > 0 { + i -= len(x.Denom) + copy(dAtA[i:], x.Denom) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Denom))) + i-- + dAtA[i] = 0x12 + } + if len(x.Sender) > 0 { + i -= len(x.Sender) + copy(dAtA[i:], x.Sender) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) + 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().(*MsgRequestBatch) + 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: MsgRequestBatch: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRequestBatch: 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 Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Denom", 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.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field MinimumFee", 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.MinimumFee = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field FeeReceive", 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.FeeReceive = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BaseFee", 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.BaseFee = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgIncreaseBridgeFee protoreflect.MessageDescriptor + fd_MsgIncreaseBridgeFee_chain_name protoreflect.FieldDescriptor + fd_MsgIncreaseBridgeFee_transaction_id protoreflect.FieldDescriptor + fd_MsgIncreaseBridgeFee_sender protoreflect.FieldDescriptor + fd_MsgIncreaseBridgeFee_add_bridge_fee protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() + md_MsgIncreaseBridgeFee = File_fx_gravity_crosschain_v1_crosschain_legacy_proto.Messages().ByName("MsgIncreaseBridgeFee") + fd_MsgIncreaseBridgeFee_chain_name = md_MsgIncreaseBridgeFee.Fields().ByName("chain_name") + fd_MsgIncreaseBridgeFee_transaction_id = md_MsgIncreaseBridgeFee.Fields().ByName("transaction_id") + fd_MsgIncreaseBridgeFee_sender = md_MsgIncreaseBridgeFee.Fields().ByName("sender") + fd_MsgIncreaseBridgeFee_add_bridge_fee = md_MsgIncreaseBridgeFee.Fields().ByName("add_bridge_fee") +} + +var _ protoreflect.Message = (*fastReflection_MsgIncreaseBridgeFee)(nil) + +type fastReflection_MsgIncreaseBridgeFee MsgIncreaseBridgeFee + +func (x *MsgIncreaseBridgeFee) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgIncreaseBridgeFee)(x) +} + +func (x *MsgIncreaseBridgeFee) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[7] + 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_MsgIncreaseBridgeFee_messageType fastReflection_MsgIncreaseBridgeFee_messageType +var _ protoreflect.MessageType = fastReflection_MsgIncreaseBridgeFee_messageType{} + +type fastReflection_MsgIncreaseBridgeFee_messageType struct{} + +func (x fastReflection_MsgIncreaseBridgeFee_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgIncreaseBridgeFee)(nil) +} +func (x fastReflection_MsgIncreaseBridgeFee_messageType) New() protoreflect.Message { + return new(fastReflection_MsgIncreaseBridgeFee) +} +func (x fastReflection_MsgIncreaseBridgeFee_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgIncreaseBridgeFee +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgIncreaseBridgeFee) Descriptor() protoreflect.MessageDescriptor { + return md_MsgIncreaseBridgeFee +} + +// 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_MsgIncreaseBridgeFee) Type() protoreflect.MessageType { + return _fastReflection_MsgIncreaseBridgeFee_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgIncreaseBridgeFee) New() protoreflect.Message { + return new(fastReflection_MsgIncreaseBridgeFee) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgIncreaseBridgeFee) Interface() protoreflect.ProtoMessage { + return (*MsgIncreaseBridgeFee)(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_MsgIncreaseBridgeFee) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.ChainName != "" { + value := protoreflect.ValueOfString(x.ChainName) + if !f(fd_MsgIncreaseBridgeFee_chain_name, value) { + return + } + } + if x.TransactionId != uint64(0) { + value := protoreflect.ValueOfUint64(x.TransactionId) + if !f(fd_MsgIncreaseBridgeFee_transaction_id, value) { + return + } + } + if x.Sender != "" { + value := protoreflect.ValueOfString(x.Sender) + if !f(fd_MsgIncreaseBridgeFee_sender, value) { + return + } + } + if x.AddBridgeFee != nil { + value := protoreflect.ValueOfMessage(x.AddBridgeFee.ProtoReflect()) + if !f(fd_MsgIncreaseBridgeFee_add_bridge_fee, 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_MsgIncreaseBridgeFee) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": + return x.ChainName != "" + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": + return x.TransactionId != uint64(0) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": + return x.Sender != "" + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": + return x.AddBridgeFee != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": + x.ChainName = "" + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": + x.TransactionId = uint64(0) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": + x.Sender = "" + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": + x.AddBridgeFee = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": + value := x.ChainName + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": + value := x.TransactionId + return protoreflect.ValueOfUint64(value) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": + value := x.Sender + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": + value := x.AddBridgeFee + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": + x.ChainName = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": + x.TransactionId = value.Uint() + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": + x.Sender = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": + x.AddBridgeFee = value.Message().Interface().(*v1beta1.Coin) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": + if x.AddBridgeFee == nil { + x.AddBridgeFee = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.AddBridgeFee.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": + panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee is not mutable")) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": + panic(fmt.Errorf("field transaction_id of message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee is not mutable")) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": + panic(fmt.Errorf("field sender of message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgIncreaseBridgeFee", 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_MsgIncreaseBridgeFee) 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_MsgIncreaseBridgeFee) 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_MsgIncreaseBridgeFee) 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_MsgIncreaseBridgeFee) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgIncreaseBridgeFee) + 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.ChainName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.TransactionId != 0 { + n += 1 + runtime.Sov(uint64(x.TransactionId)) + } + l = len(x.Sender) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.AddBridgeFee != nil { + l = options.Size(x.AddBridgeFee) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgIncreaseBridgeFee) + 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.AddBridgeFee != nil { + encoded, err := options.Marshal(x.AddBridgeFee) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x22 + } + if len(x.Sender) > 0 { + i -= len(x.Sender) + copy(dAtA[i:], x.Sender) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) + i-- + dAtA[i] = 0x1a + } + if x.TransactionId != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.TransactionId)) + i-- + dAtA[i] = 0x10 + } + if len(x.ChainName) > 0 { + i -= len(x.ChainName) + copy(dAtA[i:], x.ChainName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) + 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().(*MsgIncreaseBridgeFee) + 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: MsgIncreaseBridgeFee: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgIncreaseBridgeFee: 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 ChainName", 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.ChainName = 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 TransactionId", wireType) + } + x.TransactionId = 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.TransactionId |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AddBridgeFee", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.AddBridgeFee == nil { + x.AddBridgeFee = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.AddBridgeFee); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.27.0 +// protoc (unknown) +// source: fx/gravity/crosschain/v1/crosschain_legacy.proto + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// Deprecated: after block 5713000 +type InitCrossChainParamsProposal struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` + Params *ForkParams `protobuf:"bytes,3,opt,name=params,proto3" json:"params,omitempty"` + ChainName string `protobuf:"bytes,4,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (x *InitCrossChainParamsProposal) Reset() { + *x = InitCrossChainParamsProposal{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InitCrossChainParamsProposal) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InitCrossChainParamsProposal) ProtoMessage() {} + +// Deprecated: Use InitCrossChainParamsProposal.ProtoReflect.Descriptor instead. +func (*InitCrossChainParamsProposal) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP(), []int{0} +} + +func (x *InitCrossChainParamsProposal) GetTitle() string { + if x != nil { + return x.Title + } + return "" +} + +func (x *InitCrossChainParamsProposal) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *InitCrossChainParamsProposal) GetParams() *ForkParams { + if x != nil { + return x.Params + } + return nil +} + +func (x *InitCrossChainParamsProposal) GetChainName() string { + if x != nil { + return x.ChainName + } + return "" +} + +type ForkParams struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GravityId string `protobuf:"bytes,1,opt,name=gravity_id,json=gravityId,proto3" json:"gravity_id,omitempty"` + AverageBlockTime uint64 `protobuf:"varint,2,opt,name=average_block_time,json=averageBlockTime,proto3" json:"average_block_time,omitempty"` + ExternalBatchTimeout uint64 `protobuf:"varint,3,opt,name=external_batch_timeout,json=externalBatchTimeout,proto3" json:"external_batch_timeout,omitempty"` + AverageExternalBlockTime uint64 `protobuf:"varint,4,opt,name=average_external_block_time,json=averageExternalBlockTime,proto3" json:"average_external_block_time,omitempty"` + SignedWindow uint64 `protobuf:"varint,5,opt,name=signed_window,json=signedWindow,proto3" json:"signed_window,omitempty"` + SlashFraction []byte `protobuf:"bytes,6,opt,name=slash_fraction,json=slashFraction,proto3" json:"slash_fraction,omitempty"` + OracleSetUpdatePowerChangePercent []byte `protobuf:"bytes,7,opt,name=oracle_set_update_power_change_percent,json=oracleSetUpdatePowerChangePercent,proto3" json:"oracle_set_update_power_change_percent,omitempty"` + IbcTransferTimeoutHeight uint64 `protobuf:"varint,8,opt,name=ibc_transfer_timeout_height,json=ibcTransferTimeoutHeight,proto3" json:"ibc_transfer_timeout_height,omitempty"` + // Deprecated: after block 5713000 + Oracles []string `protobuf:"bytes,9,rep,name=oracles,proto3" json:"oracles,omitempty"` + DelegateThreshold *v1beta1.Coin `protobuf:"bytes,10,opt,name=delegate_threshold,json=delegateThreshold,proto3" json:"delegate_threshold,omitempty"` + DelegateMultiple int64 `protobuf:"varint,11,opt,name=delegate_multiple,json=delegateMultiple,proto3" json:"delegate_multiple,omitempty"` + BridgeCallTimeout uint64 `protobuf:"varint,12,opt,name=bridge_call_timeout,json=bridgeCallTimeout,proto3" json:"bridge_call_timeout,omitempty"` + BridgeCallMaxGasLimit uint64 `protobuf:"varint,13,opt,name=bridge_call_max_gas_limit,json=bridgeCallMaxGasLimit,proto3" json:"bridge_call_max_gas_limit,omitempty"` + // Deprecated: do not use + EnableSendToExternalPending bool `protobuf:"varint,14,opt,name=enable_send_to_external_pending,json=enableSendToExternalPending,proto3" json:"enable_send_to_external_pending,omitempty"` + // Deprecated: do not use + EnableBridgeCallPending bool `protobuf:"varint,15,opt,name=enable_bridge_call_pending,json=enableBridgeCallPending,proto3" json:"enable_bridge_call_pending,omitempty"` +} + +func (x *ForkParams) Reset() { + *x = ForkParams{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ForkParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ForkParams) ProtoMessage() {} + +// Deprecated: Use ForkParams.ProtoReflect.Descriptor instead. +func (*ForkParams) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP(), []int{1} +} + +func (x *ForkParams) GetGravityId() string { + if x != nil { + return x.GravityId + } + return "" +} + +func (x *ForkParams) GetAverageBlockTime() uint64 { + if x != nil { + return x.AverageBlockTime + } + return 0 +} + +func (x *ForkParams) GetExternalBatchTimeout() uint64 { + if x != nil { + return x.ExternalBatchTimeout + } + return 0 +} + +func (x *ForkParams) GetAverageExternalBlockTime() uint64 { + if x != nil { + return x.AverageExternalBlockTime + } + return 0 +} + +func (x *ForkParams) GetSignedWindow() uint64 { + if x != nil { + return x.SignedWindow + } + return 0 +} + +func (x *ForkParams) GetSlashFraction() []byte { + if x != nil { + return x.SlashFraction + } + return nil +} + +func (x *ForkParams) GetOracleSetUpdatePowerChangePercent() []byte { + if x != nil { + return x.OracleSetUpdatePowerChangePercent + } + return nil +} + +func (x *ForkParams) GetIbcTransferTimeoutHeight() uint64 { + if x != nil { + return x.IbcTransferTimeoutHeight + } + return 0 +} + +func (x *ForkParams) GetOracles() []string { + if x != nil { + return x.Oracles + } + return nil +} + +func (x *ForkParams) GetDelegateThreshold() *v1beta1.Coin { + if x != nil { + return x.DelegateThreshold + } + return nil +} + +func (x *ForkParams) GetDelegateMultiple() int64 { + if x != nil { + return x.DelegateMultiple + } + return 0 +} + +func (x *ForkParams) GetBridgeCallTimeout() uint64 { + if x != nil { + return x.BridgeCallTimeout + } + return 0 +} + +func (x *ForkParams) GetBridgeCallMaxGasLimit() uint64 { + if x != nil { + return x.BridgeCallMaxGasLimit + } + return 0 +} + +func (x *ForkParams) GetEnableSendToExternalPending() bool { + if x != nil { + return x.EnableSendToExternalPending + } + return false +} + +func (x *ForkParams) GetEnableBridgeCallPending() bool { + if x != nil { + return x.EnableBridgeCallPending + } + return false +} + +// Deprecated: Do not use. +type UpdateChainOraclesProposal struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // the title of the update proposal + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` + // the description of the proposal + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` + Oracles []string `protobuf:"bytes,3,rep,name=oracles,proto3" json:"oracles,omitempty"` + ChainName string `protobuf:"bytes,4,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (x *UpdateChainOraclesProposal) Reset() { + *x = UpdateChainOraclesProposal{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateChainOraclesProposal) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateChainOraclesProposal) ProtoMessage() {} + +// Deprecated: Use UpdateChainOraclesProposal.ProtoReflect.Descriptor instead. +func (*UpdateChainOraclesProposal) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP(), []int{2} +} + +func (x *UpdateChainOraclesProposal) GetTitle() string { + if x != nil { + return x.Title + } + return "" +} + +func (x *UpdateChainOraclesProposal) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *UpdateChainOraclesProposal) GetOracles() []string { + if x != nil { + return x.Oracles + } + return nil +} + +func (x *UpdateChainOraclesProposal) GetChainName() string { + if x != nil { + return x.ChainName + } + return "" +} + +// Deprecated: after block 5713000 +type MsgSetOrchestratorAddress struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OracleAddress string `protobuf:"bytes,1,opt,name=oracle_address,json=oracleAddress,proto3" json:"oracle_address,omitempty"` + BridgerAddress string `protobuf:"bytes,2,opt,name=bridger_address,json=bridgerAddress,proto3" json:"bridger_address,omitempty"` + ExternalAddress string `protobuf:"bytes,3,opt,name=external_address,json=externalAddress,proto3" json:"external_address,omitempty"` + Deposit *v1beta1.Coin `protobuf:"bytes,4,opt,name=deposit,proto3" json:"deposit,omitempty"` + ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (x *MsgSetOrchestratorAddress) Reset() { + *x = MsgSetOrchestratorAddress{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgSetOrchestratorAddress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgSetOrchestratorAddress) ProtoMessage() {} + +// Deprecated: Use MsgSetOrchestratorAddress.ProtoReflect.Descriptor instead. +func (*MsgSetOrchestratorAddress) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP(), []int{3} +} + +func (x *MsgSetOrchestratorAddress) GetOracleAddress() string { + if x != nil { + return x.OracleAddress + } + return "" +} + +func (x *MsgSetOrchestratorAddress) GetBridgerAddress() string { + if x != nil { + return x.BridgerAddress + } + return "" +} + +func (x *MsgSetOrchestratorAddress) GetExternalAddress() string { + if x != nil { + return x.ExternalAddress + } + return "" +} + +func (x *MsgSetOrchestratorAddress) GetDeposit() *v1beta1.Coin { + if x != nil { + return x.Deposit + } + return nil +} + +func (x *MsgSetOrchestratorAddress) GetChainName() string { + if x != nil { + return x.ChainName + } + return "" +} + +// Deprecated: after block 5713000 +type MsgAddOracleDeposit struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OracleAddress string `protobuf:"bytes,1,opt,name=oracle_address,json=oracleAddress,proto3" json:"oracle_address,omitempty"` + Amount *v1beta1.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` + ChainName string `protobuf:"bytes,3,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (x *MsgAddOracleDeposit) Reset() { + *x = MsgAddOracleDeposit{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgAddOracleDeposit) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgAddOracleDeposit) ProtoMessage() {} + +// Deprecated: Use MsgAddOracleDeposit.ProtoReflect.Descriptor instead. +func (*MsgAddOracleDeposit) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP(), []int{4} +} + +func (x *MsgAddOracleDeposit) GetOracleAddress() string { + if x != nil { + return x.OracleAddress + } + return "" +} + +func (x *MsgAddOracleDeposit) GetAmount() *v1beta1.Coin { + if x != nil { + return x.Amount + } + return nil +} + +func (x *MsgAddOracleDeposit) GetChainName() string { + if x != nil { + return x.ChainName + } + return "" +} + +// Deprecated: Do not use. +type MsgCancelSendToExternal struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TransactionId uint64 `protobuf:"varint,1,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` + Sender string `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"` + ChainName string `protobuf:"bytes,3,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (x *MsgCancelSendToExternal) Reset() { + *x = MsgCancelSendToExternal{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgCancelSendToExternal) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgCancelSendToExternal) ProtoMessage() {} + +// Deprecated: Use MsgCancelSendToExternal.ProtoReflect.Descriptor instead. +func (*MsgCancelSendToExternal) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP(), []int{5} +} + +func (x *MsgCancelSendToExternal) GetTransactionId() uint64 { + if x != nil { + return x.TransactionId + } + return 0 +} + +func (x *MsgCancelSendToExternal) GetSender() string { + if x != nil { + return x.Sender + } + return "" +} + +func (x *MsgCancelSendToExternal) GetChainName() string { + if x != nil { + return x.ChainName + } + return "" +} + +// Deprecated: Do not use. +type MsgRequestBatch struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` + MinimumFee string `protobuf:"bytes,3,opt,name=minimum_fee,json=minimumFee,proto3" json:"minimum_fee,omitempty"` + FeeReceive string `protobuf:"bytes,4,opt,name=fee_receive,json=feeReceive,proto3" json:"fee_receive,omitempty"` + ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` + BaseFee string `protobuf:"bytes,6,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"` +} + +func (x *MsgRequestBatch) Reset() { + *x = MsgRequestBatch{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgRequestBatch) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgRequestBatch) ProtoMessage() {} + +// Deprecated: Use MsgRequestBatch.ProtoReflect.Descriptor instead. +func (*MsgRequestBatch) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP(), []int{6} +} + +func (x *MsgRequestBatch) GetSender() string { + if x != nil { + return x.Sender + } + return "" +} + +func (x *MsgRequestBatch) GetDenom() string { + if x != nil { + return x.Denom + } + return "" +} + +func (x *MsgRequestBatch) GetMinimumFee() string { + if x != nil { + return x.MinimumFee + } + return "" +} + +func (x *MsgRequestBatch) GetFeeReceive() string { + if x != nil { + return x.FeeReceive + } + return "" +} + +func (x *MsgRequestBatch) GetChainName() string { + if x != nil { + return x.ChainName + } + return "" +} + +func (x *MsgRequestBatch) GetBaseFee() string { + if x != nil { + return x.BaseFee + } + return "" +} + +// Deprecated: Do not use. +type MsgIncreaseBridgeFee struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ChainName string `protobuf:"bytes,1,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` + TransactionId uint64 `protobuf:"varint,2,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` + Sender string `protobuf:"bytes,3,opt,name=sender,proto3" json:"sender,omitempty"` + AddBridgeFee *v1beta1.Coin `protobuf:"bytes,4,opt,name=add_bridge_fee,json=addBridgeFee,proto3" json:"add_bridge_fee,omitempty"` +} + +func (x *MsgIncreaseBridgeFee) Reset() { + *x = MsgIncreaseBridgeFee{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgIncreaseBridgeFee) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgIncreaseBridgeFee) ProtoMessage() {} + +// Deprecated: Use MsgIncreaseBridgeFee.ProtoReflect.Descriptor instead. +func (*MsgIncreaseBridgeFee) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP(), []int{7} +} + +func (x *MsgIncreaseBridgeFee) GetChainName() string { + if x != nil { + return x.ChainName + } + return "" +} + +func (x *MsgIncreaseBridgeFee) GetTransactionId() uint64 { + if x != nil { + return x.TransactionId + } + return 0 +} + +func (x *MsgIncreaseBridgeFee) GetSender() string { + if x != nil { + return x.Sender + } + return "" +} + +func (x *MsgIncreaseBridgeFee) GetAddBridgeFee() *v1beta1.Coin { + if x != nil { + return x.AddBridgeFee + } + return nil +} + +var File_fx_gravity_crosschain_v1_crosschain_legacy_proto protoreflect.FileDescriptor + +var file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDesc = []byte{ + 0x0a, 0x30, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x18, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x1a, 0x14, 0x67, 0x6f, + 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x1a, 0x1e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x1a, 0x17, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6d, 0x73, 0x67, 0x2f, 0x76, + 0x31, 0x2f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, + 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc1, 0x01, 0x0a, 0x1c, 0x49, 0x6e, + 0x69, 0x74, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x3c, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, + 0x72, 0x6b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, + 0x0c, 0x88, 0xa0, 0x1f, 0x00, 0x98, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0xa3, 0x07, + 0x0a, 0x0a, 0x46, 0x6f, 0x72, 0x6b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x61, + 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x65, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x6f, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x65, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, + 0x3d, 0x0a, 0x1b, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x18, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x45, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x23, + 0x0a, 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x57, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x12, 0x58, 0x0a, 0x0e, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x5f, 0x66, 0x72, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x31, 0xc8, 0xde, 0x1f, + 0x00, 0xda, 0xde, 0x1f, 0x1b, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, + 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x65, 0x63, + 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x0d, + 0x73, 0x6c, 0x61, 0x73, 0x68, 0x46, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x84, 0x01, + 0x0a, 0x26, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x31, + 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x1b, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, + 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, + 0x44, 0x65, 0x63, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, + 0x63, 0x52, 0x21, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x65, 0x72, + 0x63, 0x65, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x1b, 0x69, 0x62, 0x63, 0x5f, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x18, 0x69, 0x62, 0x63, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x12, 0x1e, 0x0a, 0x07, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x09, + 0x20, 0x03, 0x28, 0x09, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x01, 0x52, 0x07, 0x6f, 0x72, 0x61, 0x63, + 0x6c, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x12, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x5f, + 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, + 0x52, 0x11, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, + 0x6f, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x5f, + 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, + 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, + 0x12, 0x2e, 0x0a, 0x13, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x12, 0x38, 0x0a, 0x19, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, + 0x6d, 0x61, 0x78, 0x5f, 0x67, 0x61, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x15, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x4d, + 0x61, 0x78, 0x47, 0x61, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x44, 0x0a, 0x1f, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x65, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x1b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x54, + 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x12, 0x3b, 0x0a, 0x1a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x62, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x04, 0x80, + 0xdc, 0x20, 0x00, 0x22, 0x9d, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, + 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, + 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, + 0x61, 0x6d, 0x65, 0x3a, 0x0e, 0x18, 0x01, 0x88, 0xa0, 0x1f, 0x00, 0x98, 0xa0, 0x1f, 0x00, 0xe8, + 0xa0, 0x1f, 0x00, 0x22, 0xae, 0x02, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x4f, 0x72, + 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x39, 0x0a, 0x07, + 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x07, + 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x3c, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x24, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x65, + 0x74, 0x4f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x22, 0xcc, 0x01, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x4f, + 0x72, 0x61, 0x63, 0x6c, 0x65, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x25, 0x0a, 0x0e, + 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, + 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, + 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x36, 0x82, 0xe7, 0xb0, + 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x8a, 0xe7, 0xb0, 0x2a, 0x1e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, + 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x44, 0x65, 0x70, 0x6f, + 0x73, 0x69, 0x74, 0x22, 0xad, 0x01, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x43, 0x61, 0x6e, 0x63, 0x65, + 0x6c, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, + 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1d, + 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x34, 0x18, + 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, + 0x22, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x43, + 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x22, 0xc3, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, + 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x4c, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, + 0x5f, 0x66, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, + 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, + 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, + 0x46, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, + 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, + 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, + 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x3a, 0x2c, 0x18, 0x01, 0x82, + 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1a, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x22, 0xee, 0x01, 0x0a, 0x14, 0x4d, 0x73, + 0x67, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x46, + 0x65, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x12, 0x45, 0x0a, 0x0e, 0x61, 0x64, 0x64, 0x5f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x66, + 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, + 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x0c, 0x61, 0x64, 0x64, 0x42, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x46, 0x65, 0x65, 0x3a, 0x31, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x06, + 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1f, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, + 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x46, 0x65, 0x65, 0x42, 0xf0, 0x01, 0x0a, 0x1c, 0x63, + 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x15, 0x43, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x36, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, + 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x3b, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, + 0x47, 0x43, 0xaa, 0x02, 0x18, 0x46, 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x18, + 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x24, 0x46, 0x78, 0x5c, 0x47, 0x72, + 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, + 0x02, 0x1b, 0x46, 0x78, 0x3a, 0x3a, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x43, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescOnce sync.Once + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescData = file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDesc +) + +func file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescGZIP() []byte { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescOnce.Do(func() { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescData = protoimpl.X.CompressGZIP(file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescData) + }) + return file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDescData +} + +var file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes = make([]protoimpl.MessageInfo, 8) +var file_fx_gravity_crosschain_v1_crosschain_legacy_proto_goTypes = []interface{}{ + (*InitCrossChainParamsProposal)(nil), // 0: fx.gravity.crosschain.v1.InitCrossChainParamsProposal + (*ForkParams)(nil), // 1: fx.gravity.crosschain.v1.ForkParams + (*UpdateChainOraclesProposal)(nil), // 2: fx.gravity.crosschain.v1.UpdateChainOraclesProposal + (*MsgSetOrchestratorAddress)(nil), // 3: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress + (*MsgAddOracleDeposit)(nil), // 4: fx.gravity.crosschain.v1.MsgAddOracleDeposit + (*MsgCancelSendToExternal)(nil), // 5: fx.gravity.crosschain.v1.MsgCancelSendToExternal + (*MsgRequestBatch)(nil), // 6: fx.gravity.crosschain.v1.MsgRequestBatch + (*MsgIncreaseBridgeFee)(nil), // 7: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee + (*v1beta1.Coin)(nil), // 8: cosmos.base.v1beta1.Coin +} +var file_fx_gravity_crosschain_v1_crosschain_legacy_proto_depIdxs = []int32{ + 1, // 0: fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params:type_name -> fx.gravity.crosschain.v1.ForkParams + 8, // 1: fx.gravity.crosschain.v1.ForkParams.delegate_threshold:type_name -> cosmos.base.v1beta1.Coin + 8, // 2: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit:type_name -> cosmos.base.v1beta1.Coin + 8, // 3: fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount:type_name -> cosmos.base.v1beta1.Coin + 8, // 4: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee:type_name -> cosmos.base.v1beta1.Coin + 5, // [5:5] is the sub-list for method output_type + 5, // [5:5] is the sub-list for method input_type + 5, // [5:5] is the sub-list for extension type_name + 5, // [5:5] is the sub-list for extension extendee + 0, // [0:5] is the sub-list for field type_name +} + +func init() { file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() } +func file_fx_gravity_crosschain_v1_crosschain_legacy_proto_init() { + if File_fx_gravity_crosschain_v1_crosschain_legacy_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InitCrossChainParamsProposal); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ForkParams); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateChainOraclesProposal); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgSetOrchestratorAddress); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgAddOracleDeposit); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgCancelSendToExternal); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgRequestBatch); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgIncreaseBridgeFee); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDesc, + NumEnums: 0, + NumMessages: 8, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_fx_gravity_crosschain_v1_crosschain_legacy_proto_goTypes, + DependencyIndexes: file_fx_gravity_crosschain_v1_crosschain_legacy_proto_depIdxs, + MessageInfos: file_fx_gravity_crosschain_v1_crosschain_legacy_proto_msgTypes, + }.Build() + File_fx_gravity_crosschain_v1_crosschain_legacy_proto = out.File + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_rawDesc = nil + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_goTypes = nil + file_fx_gravity_crosschain_v1_crosschain_legacy_proto_depIdxs = nil +} diff --git a/api/fx/gravity/crosschain/v1/legacy.pulsar.go b/api/fx/gravity/crosschain/v1/legacy.pulsar.go deleted file mode 100644 index ba91198e..00000000 --- a/api/fx/gravity/crosschain/v1/legacy.pulsar.go +++ /dev/null @@ -1,11122 +0,0 @@ -// Code generated by protoc-gen-go-pulsar. DO NOT EDIT. -package crosschainv1 - -import ( - _ "cosmossdk.io/api/amino" - v1beta1 "cosmossdk.io/api/cosmos/base/v1beta1" - _ "cosmossdk.io/api/cosmos/msg/v1" - fmt "fmt" - _ "github.com/cosmos/cosmos-proto" - runtime "github.com/cosmos/cosmos-proto/runtime" - _ "github.com/cosmos/gogoproto/gogoproto" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoiface "google.golang.org/protobuf/runtime/protoiface" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - io "io" - reflect "reflect" - sync "sync" -) - -var ( - md_InitCrossChainParamsProposal protoreflect.MessageDescriptor - fd_InitCrossChainParamsProposal_title protoreflect.FieldDescriptor - fd_InitCrossChainParamsProposal_description protoreflect.FieldDescriptor - fd_InitCrossChainParamsProposal_params protoreflect.FieldDescriptor - fd_InitCrossChainParamsProposal_chain_name protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_InitCrossChainParamsProposal = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("InitCrossChainParamsProposal") - fd_InitCrossChainParamsProposal_title = md_InitCrossChainParamsProposal.Fields().ByName("title") - fd_InitCrossChainParamsProposal_description = md_InitCrossChainParamsProposal.Fields().ByName("description") - fd_InitCrossChainParamsProposal_params = md_InitCrossChainParamsProposal.Fields().ByName("params") - fd_InitCrossChainParamsProposal_chain_name = md_InitCrossChainParamsProposal.Fields().ByName("chain_name") -} - -var _ protoreflect.Message = (*fastReflection_InitCrossChainParamsProposal)(nil) - -type fastReflection_InitCrossChainParamsProposal InitCrossChainParamsProposal - -func (x *InitCrossChainParamsProposal) ProtoReflect() protoreflect.Message { - return (*fastReflection_InitCrossChainParamsProposal)(x) -} - -func (x *InitCrossChainParamsProposal) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[0] - 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_InitCrossChainParamsProposal_messageType fastReflection_InitCrossChainParamsProposal_messageType -var _ protoreflect.MessageType = fastReflection_InitCrossChainParamsProposal_messageType{} - -type fastReflection_InitCrossChainParamsProposal_messageType struct{} - -func (x fastReflection_InitCrossChainParamsProposal_messageType) Zero() protoreflect.Message { - return (*fastReflection_InitCrossChainParamsProposal)(nil) -} -func (x fastReflection_InitCrossChainParamsProposal_messageType) New() protoreflect.Message { - return new(fastReflection_InitCrossChainParamsProposal) -} -func (x fastReflection_InitCrossChainParamsProposal_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_InitCrossChainParamsProposal -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_InitCrossChainParamsProposal) Descriptor() protoreflect.MessageDescriptor { - return md_InitCrossChainParamsProposal -} - -// 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_InitCrossChainParamsProposal) Type() protoreflect.MessageType { - return _fastReflection_InitCrossChainParamsProposal_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_InitCrossChainParamsProposal) New() protoreflect.Message { - return new(fastReflection_InitCrossChainParamsProposal) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_InitCrossChainParamsProposal) Interface() protoreflect.ProtoMessage { - return (*InitCrossChainParamsProposal)(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_InitCrossChainParamsProposal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Title != "" { - value := protoreflect.ValueOfString(x.Title) - if !f(fd_InitCrossChainParamsProposal_title, value) { - return - } - } - if x.Description != "" { - value := protoreflect.ValueOfString(x.Description) - if !f(fd_InitCrossChainParamsProposal_description, value) { - return - } - } - if x.Params != nil { - value := protoreflect.ValueOfMessage(x.Params.ProtoReflect()) - if !f(fd_InitCrossChainParamsProposal_params, value) { - return - } - } - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_InitCrossChainParamsProposal_chain_name, 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_InitCrossChainParamsProposal) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": - return x.Title != "" - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": - return x.Description != "" - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": - return x.Params != nil - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": - return x.ChainName != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": - x.Title = "" - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": - x.Description = "" - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": - x.Params = nil - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": - x.ChainName = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": - value := x.Title - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": - value := x.Description - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": - value := x.Params - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": - x.Title = value.Interface().(string) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": - x.Description = value.Interface().(string) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": - x.Params = value.Message().Interface().(*Params) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": - x.ChainName = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": - if x.Params == nil { - x.Params = new(Params) - } - return protoreflect.ValueOfMessage(x.Params.ProtoReflect()) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": - panic(fmt.Errorf("field title of message fx.gravity.crosschain.v1.InitCrossChainParamsProposal is not mutable")) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": - panic(fmt.Errorf("field description of message fx.gravity.crosschain.v1.InitCrossChainParamsProposal is not mutable")) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.InitCrossChainParamsProposal is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.title": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.description": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params": - m := new(Params) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "fx.gravity.crosschain.v1.InitCrossChainParamsProposal.chain_name": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.InitCrossChainParamsProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.InitCrossChainParamsProposal 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_InitCrossChainParamsProposal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.InitCrossChainParamsProposal", 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_InitCrossChainParamsProposal) 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_InitCrossChainParamsProposal) 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_InitCrossChainParamsProposal) 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_InitCrossChainParamsProposal) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*InitCrossChainParamsProposal) - 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.Title) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Description) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.Params != nil { - l = options.Size(x.Params) - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*InitCrossChainParamsProposal) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - i-- - dAtA[i] = 0x22 - } - if x.Params != nil { - encoded, err := options.Marshal(x.Params) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x1a - } - if len(x.Description) > 0 { - i -= len(x.Description) - copy(dAtA[i:], x.Description) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Description))) - i-- - dAtA[i] = 0x12 - } - if len(x.Title) > 0 { - i -= len(x.Title) - copy(dAtA[i:], x.Title) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Title))) - 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().(*InitCrossChainParamsProposal) - 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: InitCrossChainParamsProposal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: InitCrossChainParamsProposal: 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 Title", 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.Title = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Description", 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.Description = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.Params == nil { - x.Params = &Params{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Params); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var _ protoreflect.List = (*_UpdateChainOraclesProposal_3_list)(nil) - -type _UpdateChainOraclesProposal_3_list struct { - list *[]string -} - -func (x *_UpdateChainOraclesProposal_3_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_UpdateChainOraclesProposal_3_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfString((*x.list)[i]) -} - -func (x *_UpdateChainOraclesProposal_3_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.String() - concreteValue := valueUnwrapped - (*x.list)[i] = concreteValue -} - -func (x *_UpdateChainOraclesProposal_3_list) Append(value protoreflect.Value) { - valueUnwrapped := value.String() - concreteValue := valueUnwrapped - *x.list = append(*x.list, concreteValue) -} - -func (x *_UpdateChainOraclesProposal_3_list) AppendMutable() protoreflect.Value { - panic(fmt.Errorf("AppendMutable can not be called on message UpdateChainOraclesProposal at list field Oracles as it is not of Message kind")) -} - -func (x *_UpdateChainOraclesProposal_3_list) Truncate(n int) { - *x.list = (*x.list)[:n] -} - -func (x *_UpdateChainOraclesProposal_3_list) NewElement() protoreflect.Value { - v := "" - return protoreflect.ValueOfString(v) -} - -func (x *_UpdateChainOraclesProposal_3_list) IsValid() bool { - return x.list != nil -} - -var ( - md_UpdateChainOraclesProposal protoreflect.MessageDescriptor - fd_UpdateChainOraclesProposal_title protoreflect.FieldDescriptor - fd_UpdateChainOraclesProposal_description protoreflect.FieldDescriptor - fd_UpdateChainOraclesProposal_oracles protoreflect.FieldDescriptor - fd_UpdateChainOraclesProposal_chain_name protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_UpdateChainOraclesProposal = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("UpdateChainOraclesProposal") - fd_UpdateChainOraclesProposal_title = md_UpdateChainOraclesProposal.Fields().ByName("title") - fd_UpdateChainOraclesProposal_description = md_UpdateChainOraclesProposal.Fields().ByName("description") - fd_UpdateChainOraclesProposal_oracles = md_UpdateChainOraclesProposal.Fields().ByName("oracles") - fd_UpdateChainOraclesProposal_chain_name = md_UpdateChainOraclesProposal.Fields().ByName("chain_name") -} - -var _ protoreflect.Message = (*fastReflection_UpdateChainOraclesProposal)(nil) - -type fastReflection_UpdateChainOraclesProposal UpdateChainOraclesProposal - -func (x *UpdateChainOraclesProposal) ProtoReflect() protoreflect.Message { - return (*fastReflection_UpdateChainOraclesProposal)(x) -} - -func (x *UpdateChainOraclesProposal) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[1] - 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_UpdateChainOraclesProposal_messageType fastReflection_UpdateChainOraclesProposal_messageType -var _ protoreflect.MessageType = fastReflection_UpdateChainOraclesProposal_messageType{} - -type fastReflection_UpdateChainOraclesProposal_messageType struct{} - -func (x fastReflection_UpdateChainOraclesProposal_messageType) Zero() protoreflect.Message { - return (*fastReflection_UpdateChainOraclesProposal)(nil) -} -func (x fastReflection_UpdateChainOraclesProposal_messageType) New() protoreflect.Message { - return new(fastReflection_UpdateChainOraclesProposal) -} -func (x fastReflection_UpdateChainOraclesProposal_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_UpdateChainOraclesProposal -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_UpdateChainOraclesProposal) Descriptor() protoreflect.MessageDescriptor { - return md_UpdateChainOraclesProposal -} - -// 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_UpdateChainOraclesProposal) Type() protoreflect.MessageType { - return _fastReflection_UpdateChainOraclesProposal_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_UpdateChainOraclesProposal) New() protoreflect.Message { - return new(fastReflection_UpdateChainOraclesProposal) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_UpdateChainOraclesProposal) Interface() protoreflect.ProtoMessage { - return (*UpdateChainOraclesProposal)(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_UpdateChainOraclesProposal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Title != "" { - value := protoreflect.ValueOfString(x.Title) - if !f(fd_UpdateChainOraclesProposal_title, value) { - return - } - } - if x.Description != "" { - value := protoreflect.ValueOfString(x.Description) - if !f(fd_UpdateChainOraclesProposal_description, value) { - return - } - } - if len(x.Oracles) != 0 { - value := protoreflect.ValueOfList(&_UpdateChainOraclesProposal_3_list{list: &x.Oracles}) - if !f(fd_UpdateChainOraclesProposal_oracles, value) { - return - } - } - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_UpdateChainOraclesProposal_chain_name, 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_UpdateChainOraclesProposal) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": - return x.Title != "" - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": - return x.Description != "" - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": - return len(x.Oracles) != 0 - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": - return x.ChainName != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": - x.Title = "" - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": - x.Description = "" - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": - x.Oracles = nil - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": - x.ChainName = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": - value := x.Title - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": - value := x.Description - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": - if len(x.Oracles) == 0 { - return protoreflect.ValueOfList(&_UpdateChainOraclesProposal_3_list{}) - } - listValue := &_UpdateChainOraclesProposal_3_list{list: &x.Oracles} - return protoreflect.ValueOfList(listValue) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": - x.Title = value.Interface().(string) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": - x.Description = value.Interface().(string) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": - lv := value.List() - clv := lv.(*_UpdateChainOraclesProposal_3_list) - x.Oracles = *clv.list - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": - x.ChainName = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": - if x.Oracles == nil { - x.Oracles = []string{} - } - value := &_UpdateChainOraclesProposal_3_list{list: &x.Oracles} - return protoreflect.ValueOfList(value) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": - panic(fmt.Errorf("field title of message fx.gravity.crosschain.v1.UpdateChainOraclesProposal is not mutable")) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": - panic(fmt.Errorf("field description of message fx.gravity.crosschain.v1.UpdateChainOraclesProposal is not mutable")) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.UpdateChainOraclesProposal is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.title": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.description": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.oracles": - list := []string{} - return protoreflect.ValueOfList(&_UpdateChainOraclesProposal_3_list{list: &list}) - case "fx.gravity.crosschain.v1.UpdateChainOraclesProposal.chain_name": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.UpdateChainOraclesProposal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.UpdateChainOraclesProposal 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_UpdateChainOraclesProposal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.UpdateChainOraclesProposal", 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_UpdateChainOraclesProposal) 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_UpdateChainOraclesProposal) 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_UpdateChainOraclesProposal) 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_UpdateChainOraclesProposal) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*UpdateChainOraclesProposal) - 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.Title) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Description) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if len(x.Oracles) > 0 { - for _, s := range x.Oracles { - l = len(s) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - l = len(x.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*UpdateChainOraclesProposal) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - i-- - dAtA[i] = 0x22 - } - if len(x.Oracles) > 0 { - for iNdEx := len(x.Oracles) - 1; iNdEx >= 0; iNdEx-- { - i -= len(x.Oracles[iNdEx]) - copy(dAtA[i:], x.Oracles[iNdEx]) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Oracles[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(x.Description) > 0 { - i -= len(x.Description) - copy(dAtA[i:], x.Description) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Description))) - i-- - dAtA[i] = 0x12 - } - if len(x.Title) > 0 { - i -= len(x.Title) - copy(dAtA[i:], x.Title) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Title))) - 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().(*UpdateChainOraclesProposal) - 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: UpdateChainOraclesProposal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: UpdateChainOraclesProposal: 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 Title", 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.Title = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Description", 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.Description = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Oracles", 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.Oracles = append(x.Oracles, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgSetOrchestratorAddress protoreflect.MessageDescriptor - fd_MsgSetOrchestratorAddress_oracle_address protoreflect.FieldDescriptor - fd_MsgSetOrchestratorAddress_bridger_address protoreflect.FieldDescriptor - fd_MsgSetOrchestratorAddress_external_address protoreflect.FieldDescriptor - fd_MsgSetOrchestratorAddress_deposit protoreflect.FieldDescriptor - fd_MsgSetOrchestratorAddress_chain_name protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgSetOrchestratorAddress = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgSetOrchestratorAddress") - fd_MsgSetOrchestratorAddress_oracle_address = md_MsgSetOrchestratorAddress.Fields().ByName("oracle_address") - fd_MsgSetOrchestratorAddress_bridger_address = md_MsgSetOrchestratorAddress.Fields().ByName("bridger_address") - fd_MsgSetOrchestratorAddress_external_address = md_MsgSetOrchestratorAddress.Fields().ByName("external_address") - fd_MsgSetOrchestratorAddress_deposit = md_MsgSetOrchestratorAddress.Fields().ByName("deposit") - fd_MsgSetOrchestratorAddress_chain_name = md_MsgSetOrchestratorAddress.Fields().ByName("chain_name") -} - -var _ protoreflect.Message = (*fastReflection_MsgSetOrchestratorAddress)(nil) - -type fastReflection_MsgSetOrchestratorAddress MsgSetOrchestratorAddress - -func (x *MsgSetOrchestratorAddress) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgSetOrchestratorAddress)(x) -} - -func (x *MsgSetOrchestratorAddress) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[2] - 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_MsgSetOrchestratorAddress_messageType fastReflection_MsgSetOrchestratorAddress_messageType -var _ protoreflect.MessageType = fastReflection_MsgSetOrchestratorAddress_messageType{} - -type fastReflection_MsgSetOrchestratorAddress_messageType struct{} - -func (x fastReflection_MsgSetOrchestratorAddress_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgSetOrchestratorAddress)(nil) -} -func (x fastReflection_MsgSetOrchestratorAddress_messageType) New() protoreflect.Message { - return new(fastReflection_MsgSetOrchestratorAddress) -} -func (x fastReflection_MsgSetOrchestratorAddress_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgSetOrchestratorAddress -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgSetOrchestratorAddress) Descriptor() protoreflect.MessageDescriptor { - return md_MsgSetOrchestratorAddress -} - -// 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_MsgSetOrchestratorAddress) Type() protoreflect.MessageType { - return _fastReflection_MsgSetOrchestratorAddress_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgSetOrchestratorAddress) New() protoreflect.Message { - return new(fastReflection_MsgSetOrchestratorAddress) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgSetOrchestratorAddress) Interface() protoreflect.ProtoMessage { - return (*MsgSetOrchestratorAddress)(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_MsgSetOrchestratorAddress) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.OracleAddress != "" { - value := protoreflect.ValueOfString(x.OracleAddress) - if !f(fd_MsgSetOrchestratorAddress_oracle_address, value) { - return - } - } - if x.BridgerAddress != "" { - value := protoreflect.ValueOfString(x.BridgerAddress) - if !f(fd_MsgSetOrchestratorAddress_bridger_address, value) { - return - } - } - if x.ExternalAddress != "" { - value := protoreflect.ValueOfString(x.ExternalAddress) - if !f(fd_MsgSetOrchestratorAddress_external_address, value) { - return - } - } - if x.Deposit != nil { - value := protoreflect.ValueOfMessage(x.Deposit.ProtoReflect()) - if !f(fd_MsgSetOrchestratorAddress_deposit, value) { - return - } - } - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_MsgSetOrchestratorAddress_chain_name, 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_MsgSetOrchestratorAddress) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": - return x.OracleAddress != "" - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": - return x.BridgerAddress != "" - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": - return x.ExternalAddress != "" - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": - return x.Deposit != nil - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": - return x.ChainName != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": - x.OracleAddress = "" - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": - x.BridgerAddress = "" - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": - x.ExternalAddress = "" - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": - x.Deposit = nil - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": - x.ChainName = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": - value := x.OracleAddress - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": - value := x.BridgerAddress - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": - value := x.ExternalAddress - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": - value := x.Deposit - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": - x.OracleAddress = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": - x.BridgerAddress = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": - x.ExternalAddress = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": - x.Deposit = value.Message().Interface().(*v1beta1.Coin) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": - x.ChainName = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": - if x.Deposit == nil { - x.Deposit = new(v1beta1.Coin) - } - return protoreflect.ValueOfMessage(x.Deposit.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": - panic(fmt.Errorf("field oracle_address of message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress is not mutable")) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": - panic(fmt.Errorf("field bridger_address of message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress is not mutable")) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": - panic(fmt.Errorf("field external_address of message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress is not mutable")) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.oracle_address": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.bridger_address": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.external_address": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit": - m := new(v1beta1.Coin) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.chain_name": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgSetOrchestratorAddress", 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgSetOrchestratorAddress) - 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.OracleAddress) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.BridgerAddress) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.ExternalAddress) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.Deposit != nil { - l = options.Size(x.Deposit) - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgSetOrchestratorAddress) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - i-- - dAtA[i] = 0x2a - } - if x.Deposit != nil { - encoded, err := options.Marshal(x.Deposit) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x22 - } - if len(x.ExternalAddress) > 0 { - i -= len(x.ExternalAddress) - copy(dAtA[i:], x.ExternalAddress) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ExternalAddress))) - i-- - dAtA[i] = 0x1a - } - if len(x.BridgerAddress) > 0 { - i -= len(x.BridgerAddress) - copy(dAtA[i:], x.BridgerAddress) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.BridgerAddress))) - i-- - dAtA[i] = 0x12 - } - if len(x.OracleAddress) > 0 { - i -= len(x.OracleAddress) - copy(dAtA[i:], x.OracleAddress) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.OracleAddress))) - 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().(*MsgSetOrchestratorAddress) - 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: MsgSetOrchestratorAddress: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSetOrchestratorAddress: 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 OracleAddress", 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.OracleAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BridgerAddress", 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.BridgerAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ExternalAddress", 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.ExternalAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Deposit", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.Deposit == nil { - x.Deposit = &v1beta1.Coin{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Deposit); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgAddOracleDeposit protoreflect.MessageDescriptor - fd_MsgAddOracleDeposit_oracle_address protoreflect.FieldDescriptor - fd_MsgAddOracleDeposit_amount protoreflect.FieldDescriptor - fd_MsgAddOracleDeposit_chain_name protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgAddOracleDeposit = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgAddOracleDeposit") - fd_MsgAddOracleDeposit_oracle_address = md_MsgAddOracleDeposit.Fields().ByName("oracle_address") - fd_MsgAddOracleDeposit_amount = md_MsgAddOracleDeposit.Fields().ByName("amount") - fd_MsgAddOracleDeposit_chain_name = md_MsgAddOracleDeposit.Fields().ByName("chain_name") -} - -var _ protoreflect.Message = (*fastReflection_MsgAddOracleDeposit)(nil) - -type fastReflection_MsgAddOracleDeposit MsgAddOracleDeposit - -func (x *MsgAddOracleDeposit) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgAddOracleDeposit)(x) -} - -func (x *MsgAddOracleDeposit) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[3] - 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_MsgAddOracleDeposit_messageType fastReflection_MsgAddOracleDeposit_messageType -var _ protoreflect.MessageType = fastReflection_MsgAddOracleDeposit_messageType{} - -type fastReflection_MsgAddOracleDeposit_messageType struct{} - -func (x fastReflection_MsgAddOracleDeposit_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgAddOracleDeposit)(nil) -} -func (x fastReflection_MsgAddOracleDeposit_messageType) New() protoreflect.Message { - return new(fastReflection_MsgAddOracleDeposit) -} -func (x fastReflection_MsgAddOracleDeposit_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgAddOracleDeposit -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgAddOracleDeposit) Descriptor() protoreflect.MessageDescriptor { - return md_MsgAddOracleDeposit -} - -// 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_MsgAddOracleDeposit) Type() protoreflect.MessageType { - return _fastReflection_MsgAddOracleDeposit_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgAddOracleDeposit) New() protoreflect.Message { - return new(fastReflection_MsgAddOracleDeposit) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgAddOracleDeposit) Interface() protoreflect.ProtoMessage { - return (*MsgAddOracleDeposit)(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_MsgAddOracleDeposit) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.OracleAddress != "" { - value := protoreflect.ValueOfString(x.OracleAddress) - if !f(fd_MsgAddOracleDeposit_oracle_address, value) { - return - } - } - if x.Amount != nil { - value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) - if !f(fd_MsgAddOracleDeposit_amount, value) { - return - } - } - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_MsgAddOracleDeposit_chain_name, 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_MsgAddOracleDeposit) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": - return x.OracleAddress != "" - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": - return x.Amount != nil - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": - return x.ChainName != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": - x.OracleAddress = "" - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": - x.Amount = nil - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": - x.ChainName = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": - value := x.OracleAddress - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": - value := x.Amount - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": - x.OracleAddress = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": - x.Amount = value.Message().Interface().(*v1beta1.Coin) - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": - x.ChainName = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": - if x.Amount == nil { - x.Amount = new(v1beta1.Coin) - } - return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": - panic(fmt.Errorf("field oracle_address of message fx.gravity.crosschain.v1.MsgAddOracleDeposit is not mutable")) - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgAddOracleDeposit is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.oracle_address": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount": - m := new(v1beta1.Coin) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgAddOracleDeposit.chain_name": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgAddOracleDeposit")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgAddOracleDeposit 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_MsgAddOracleDeposit) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgAddOracleDeposit", 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_MsgAddOracleDeposit) 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_MsgAddOracleDeposit) 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_MsgAddOracleDeposit) 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_MsgAddOracleDeposit) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgAddOracleDeposit) - 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.OracleAddress) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.Amount != nil { - l = options.Size(x.Amount) - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgAddOracleDeposit) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - i-- - dAtA[i] = 0x1a - } - if x.Amount != nil { - encoded, err := options.Marshal(x.Amount) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x12 - } - if len(x.OracleAddress) > 0 { - i -= len(x.OracleAddress) - copy(dAtA[i:], x.OracleAddress) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.OracleAddress))) - 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().(*MsgAddOracleDeposit) - 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: MsgAddOracleDeposit: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgAddOracleDeposit: 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 OracleAddress", 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.OracleAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.Amount == nil { - x.Amount = &v1beta1.Coin{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgSendToExternal protoreflect.MessageDescriptor - fd_MsgSendToExternal_sender protoreflect.FieldDescriptor - fd_MsgSendToExternal_dest protoreflect.FieldDescriptor - fd_MsgSendToExternal_amount protoreflect.FieldDescriptor - fd_MsgSendToExternal_bridge_fee protoreflect.FieldDescriptor - fd_MsgSendToExternal_chain_name protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgSendToExternal = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgSendToExternal") - fd_MsgSendToExternal_sender = md_MsgSendToExternal.Fields().ByName("sender") - fd_MsgSendToExternal_dest = md_MsgSendToExternal.Fields().ByName("dest") - fd_MsgSendToExternal_amount = md_MsgSendToExternal.Fields().ByName("amount") - fd_MsgSendToExternal_bridge_fee = md_MsgSendToExternal.Fields().ByName("bridge_fee") - fd_MsgSendToExternal_chain_name = md_MsgSendToExternal.Fields().ByName("chain_name") -} - -var _ protoreflect.Message = (*fastReflection_MsgSendToExternal)(nil) - -type fastReflection_MsgSendToExternal MsgSendToExternal - -func (x *MsgSendToExternal) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgSendToExternal)(x) -} - -func (x *MsgSendToExternal) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[4] - 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_MsgSendToExternal_messageType fastReflection_MsgSendToExternal_messageType -var _ protoreflect.MessageType = fastReflection_MsgSendToExternal_messageType{} - -type fastReflection_MsgSendToExternal_messageType struct{} - -func (x fastReflection_MsgSendToExternal_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgSendToExternal)(nil) -} -func (x fastReflection_MsgSendToExternal_messageType) New() protoreflect.Message { - return new(fastReflection_MsgSendToExternal) -} -func (x fastReflection_MsgSendToExternal_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgSendToExternal -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgSendToExternal) Descriptor() protoreflect.MessageDescriptor { - return md_MsgSendToExternal -} - -// 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_MsgSendToExternal) Type() protoreflect.MessageType { - return _fastReflection_MsgSendToExternal_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgSendToExternal) New() protoreflect.Message { - return new(fastReflection_MsgSendToExternal) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgSendToExternal) Interface() protoreflect.ProtoMessage { - return (*MsgSendToExternal)(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_MsgSendToExternal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Sender != "" { - value := protoreflect.ValueOfString(x.Sender) - if !f(fd_MsgSendToExternal_sender, value) { - return - } - } - if x.Dest != "" { - value := protoreflect.ValueOfString(x.Dest) - if !f(fd_MsgSendToExternal_dest, value) { - return - } - } - if x.Amount != nil { - value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) - if !f(fd_MsgSendToExternal_amount, value) { - return - } - } - if x.BridgeFee != nil { - value := protoreflect.ValueOfMessage(x.BridgeFee.ProtoReflect()) - if !f(fd_MsgSendToExternal_bridge_fee, value) { - return - } - } - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_MsgSendToExternal_chain_name, 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_MsgSendToExternal) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": - return x.Sender != "" - case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": - return x.Dest != "" - case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": - return x.Amount != nil - case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": - return x.BridgeFee != nil - case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": - return x.ChainName != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": - x.Sender = "" - case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": - x.Dest = "" - case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": - x.Amount = nil - case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": - x.BridgeFee = nil - case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": - x.ChainName = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": - value := x.Sender - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": - value := x.Dest - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": - value := x.Amount - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": - value := x.BridgeFee - return protoreflect.ValueOfMessage(value.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": - x.Sender = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": - x.Dest = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": - x.Amount = value.Message().Interface().(*v1beta1.Coin) - case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": - x.BridgeFee = value.Message().Interface().(*v1beta1.Coin) - case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": - x.ChainName = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": - if x.Amount == nil { - x.Amount = new(v1beta1.Coin) - } - return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": - if x.BridgeFee == nil { - x.BridgeFee = new(v1beta1.Coin) - } - return protoreflect.ValueOfMessage(x.BridgeFee.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": - panic(fmt.Errorf("field sender of message fx.gravity.crosschain.v1.MsgSendToExternal is not mutable")) - case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": - panic(fmt.Errorf("field dest of message fx.gravity.crosschain.v1.MsgSendToExternal is not mutable")) - case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgSendToExternal is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": - m := new(v1beta1.Coin) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": - m := new(v1beta1.Coin) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgSendToExternal", 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_MsgSendToExternal) 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_MsgSendToExternal) 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_MsgSendToExternal) 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_MsgSendToExternal) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgSendToExternal) - 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.Sender) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Dest) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.Amount != nil { - l = options.Size(x.Amount) - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.BridgeFee != nil { - l = options.Size(x.BridgeFee) - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgSendToExternal) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - i-- - dAtA[i] = 0x2a - } - if x.BridgeFee != nil { - encoded, err := options.Marshal(x.BridgeFee) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x22 - } - if x.Amount != nil { - encoded, err := options.Marshal(x.Amount) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x1a - } - if len(x.Dest) > 0 { - i -= len(x.Dest) - copy(dAtA[i:], x.Dest) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Dest))) - i-- - dAtA[i] = 0x12 - } - if len(x.Sender) > 0 { - i -= len(x.Sender) - copy(dAtA[i:], x.Sender) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) - 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().(*MsgSendToExternal) - 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: MsgSendToExternal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSendToExternal: 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 Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Dest", 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.Dest = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.Amount == nil { - x.Amount = &v1beta1.Coin{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BridgeFee", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.BridgeFee == nil { - x.BridgeFee = &v1beta1.Coin{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.BridgeFee); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgSendToExternalResponse protoreflect.MessageDescriptor - fd_MsgSendToExternalResponse_batch_nonce protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgSendToExternalResponse = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgSendToExternalResponse") - fd_MsgSendToExternalResponse_batch_nonce = md_MsgSendToExternalResponse.Fields().ByName("batch_nonce") -} - -var _ protoreflect.Message = (*fastReflection_MsgSendToExternalResponse)(nil) - -type fastReflection_MsgSendToExternalResponse MsgSendToExternalResponse - -func (x *MsgSendToExternalResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgSendToExternalResponse)(x) -} - -func (x *MsgSendToExternalResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[5] - 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_MsgSendToExternalResponse_messageType fastReflection_MsgSendToExternalResponse_messageType -var _ protoreflect.MessageType = fastReflection_MsgSendToExternalResponse_messageType{} - -type fastReflection_MsgSendToExternalResponse_messageType struct{} - -func (x fastReflection_MsgSendToExternalResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgSendToExternalResponse)(nil) -} -func (x fastReflection_MsgSendToExternalResponse_messageType) New() protoreflect.Message { - return new(fastReflection_MsgSendToExternalResponse) -} -func (x fastReflection_MsgSendToExternalResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgSendToExternalResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgSendToExternalResponse) Descriptor() protoreflect.MessageDescriptor { - return md_MsgSendToExternalResponse -} - -// 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_MsgSendToExternalResponse) Type() protoreflect.MessageType { - return _fastReflection_MsgSendToExternalResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgSendToExternalResponse) New() protoreflect.Message { - return new(fastReflection_MsgSendToExternalResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgSendToExternalResponse) Interface() protoreflect.ProtoMessage { - return (*MsgSendToExternalResponse)(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_MsgSendToExternalResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.BatchNonce != uint64(0) { - value := protoreflect.ValueOfUint64(x.BatchNonce) - if !f(fd_MsgSendToExternalResponse_batch_nonce, 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_MsgSendToExternalResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": - return x.BatchNonce != uint64(0) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": - x.BatchNonce = uint64(0) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": - value := x.BatchNonce - return protoreflect.ValueOfUint64(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": - x.BatchNonce = value.Uint() - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": - panic(fmt.Errorf("field batch_nonce of message fx.gravity.crosschain.v1.MsgSendToExternalResponse is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": - return protoreflect.ValueOfUint64(uint64(0)) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgSendToExternalResponse", 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_MsgSendToExternalResponse) 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_MsgSendToExternalResponse) 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_MsgSendToExternalResponse) 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_MsgSendToExternalResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgSendToExternalResponse) - 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.BatchNonce != 0 { - n += 1 + runtime.Sov(uint64(x.BatchNonce)) - } - 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().(*MsgSendToExternalResponse) - 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.BatchNonce != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.BatchNonce)) - i-- - dAtA[i] = 0x8 - } - 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().(*MsgSendToExternalResponse) - 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: MsgSendToExternalResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSendToExternalResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BatchNonce", wireType) - } - x.BatchNonce = 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.BatchNonce |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgCancelSendToExternal protoreflect.MessageDescriptor - fd_MsgCancelSendToExternal_transaction_id protoreflect.FieldDescriptor - fd_MsgCancelSendToExternal_sender protoreflect.FieldDescriptor - fd_MsgCancelSendToExternal_chain_name protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgCancelSendToExternal = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgCancelSendToExternal") - fd_MsgCancelSendToExternal_transaction_id = md_MsgCancelSendToExternal.Fields().ByName("transaction_id") - fd_MsgCancelSendToExternal_sender = md_MsgCancelSendToExternal.Fields().ByName("sender") - fd_MsgCancelSendToExternal_chain_name = md_MsgCancelSendToExternal.Fields().ByName("chain_name") -} - -var _ protoreflect.Message = (*fastReflection_MsgCancelSendToExternal)(nil) - -type fastReflection_MsgCancelSendToExternal MsgCancelSendToExternal - -func (x *MsgCancelSendToExternal) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgCancelSendToExternal)(x) -} - -func (x *MsgCancelSendToExternal) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[6] - 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_MsgCancelSendToExternal_messageType fastReflection_MsgCancelSendToExternal_messageType -var _ protoreflect.MessageType = fastReflection_MsgCancelSendToExternal_messageType{} - -type fastReflection_MsgCancelSendToExternal_messageType struct{} - -func (x fastReflection_MsgCancelSendToExternal_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgCancelSendToExternal)(nil) -} -func (x fastReflection_MsgCancelSendToExternal_messageType) New() protoreflect.Message { - return new(fastReflection_MsgCancelSendToExternal) -} -func (x fastReflection_MsgCancelSendToExternal_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgCancelSendToExternal -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgCancelSendToExternal) Descriptor() protoreflect.MessageDescriptor { - return md_MsgCancelSendToExternal -} - -// 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_MsgCancelSendToExternal) Type() protoreflect.MessageType { - return _fastReflection_MsgCancelSendToExternal_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgCancelSendToExternal) New() protoreflect.Message { - return new(fastReflection_MsgCancelSendToExternal) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgCancelSendToExternal) Interface() protoreflect.ProtoMessage { - return (*MsgCancelSendToExternal)(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_MsgCancelSendToExternal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.TransactionId != uint64(0) { - value := protoreflect.ValueOfUint64(x.TransactionId) - if !f(fd_MsgCancelSendToExternal_transaction_id, value) { - return - } - } - if x.Sender != "" { - value := protoreflect.ValueOfString(x.Sender) - if !f(fd_MsgCancelSendToExternal_sender, value) { - return - } - } - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_MsgCancelSendToExternal_chain_name, 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_MsgCancelSendToExternal) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": - return x.TransactionId != uint64(0) - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": - return x.Sender != "" - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": - return x.ChainName != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": - x.TransactionId = uint64(0) - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": - x.Sender = "" - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": - x.ChainName = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": - value := x.TransactionId - return protoreflect.ValueOfUint64(value) - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": - value := x.Sender - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": - x.TransactionId = value.Uint() - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": - x.Sender = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": - x.ChainName = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": - panic(fmt.Errorf("field transaction_id of message fx.gravity.crosschain.v1.MsgCancelSendToExternal is not mutable")) - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": - panic(fmt.Errorf("field sender of message fx.gravity.crosschain.v1.MsgCancelSendToExternal is not mutable")) - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgCancelSendToExternal is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.transaction_id": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.sender": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgCancelSendToExternal.chain_name": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgCancelSendToExternal")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgCancelSendToExternal 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_MsgCancelSendToExternal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgCancelSendToExternal", 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_MsgCancelSendToExternal) 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_MsgCancelSendToExternal) 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_MsgCancelSendToExternal) 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_MsgCancelSendToExternal) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgCancelSendToExternal) - 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.TransactionId != 0 { - n += 1 + runtime.Sov(uint64(x.TransactionId)) - } - l = len(x.Sender) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgCancelSendToExternal) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - i-- - dAtA[i] = 0x1a - } - if len(x.Sender) > 0 { - i -= len(x.Sender) - copy(dAtA[i:], x.Sender) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) - i-- - dAtA[i] = 0x12 - } - if x.TransactionId != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.TransactionId)) - i-- - dAtA[i] = 0x8 - } - 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().(*MsgCancelSendToExternal) - 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: MsgCancelSendToExternal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgCancelSendToExternal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TransactionId", wireType) - } - x.TransactionId = 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.TransactionId |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgRequestBatch protoreflect.MessageDescriptor - fd_MsgRequestBatch_sender protoreflect.FieldDescriptor - fd_MsgRequestBatch_denom protoreflect.FieldDescriptor - fd_MsgRequestBatch_minimum_fee protoreflect.FieldDescriptor - fd_MsgRequestBatch_fee_receive protoreflect.FieldDescriptor - fd_MsgRequestBatch_chain_name protoreflect.FieldDescriptor - fd_MsgRequestBatch_base_fee protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgRequestBatch = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgRequestBatch") - fd_MsgRequestBatch_sender = md_MsgRequestBatch.Fields().ByName("sender") - fd_MsgRequestBatch_denom = md_MsgRequestBatch.Fields().ByName("denom") - fd_MsgRequestBatch_minimum_fee = md_MsgRequestBatch.Fields().ByName("minimum_fee") - fd_MsgRequestBatch_fee_receive = md_MsgRequestBatch.Fields().ByName("fee_receive") - fd_MsgRequestBatch_chain_name = md_MsgRequestBatch.Fields().ByName("chain_name") - fd_MsgRequestBatch_base_fee = md_MsgRequestBatch.Fields().ByName("base_fee") -} - -var _ protoreflect.Message = (*fastReflection_MsgRequestBatch)(nil) - -type fastReflection_MsgRequestBatch MsgRequestBatch - -func (x *MsgRequestBatch) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgRequestBatch)(x) -} - -func (x *MsgRequestBatch) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[7] - 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_MsgRequestBatch_messageType fastReflection_MsgRequestBatch_messageType -var _ protoreflect.MessageType = fastReflection_MsgRequestBatch_messageType{} - -type fastReflection_MsgRequestBatch_messageType struct{} - -func (x fastReflection_MsgRequestBatch_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgRequestBatch)(nil) -} -func (x fastReflection_MsgRequestBatch_messageType) New() protoreflect.Message { - return new(fastReflection_MsgRequestBatch) -} -func (x fastReflection_MsgRequestBatch_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRequestBatch -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgRequestBatch) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRequestBatch -} - -// 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_MsgRequestBatch) Type() protoreflect.MessageType { - return _fastReflection_MsgRequestBatch_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgRequestBatch) New() protoreflect.Message { - return new(fastReflection_MsgRequestBatch) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgRequestBatch) Interface() protoreflect.ProtoMessage { - return (*MsgRequestBatch)(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_MsgRequestBatch) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Sender != "" { - value := protoreflect.ValueOfString(x.Sender) - if !f(fd_MsgRequestBatch_sender, value) { - return - } - } - if x.Denom != "" { - value := protoreflect.ValueOfString(x.Denom) - if !f(fd_MsgRequestBatch_denom, value) { - return - } - } - if x.MinimumFee != "" { - value := protoreflect.ValueOfString(x.MinimumFee) - if !f(fd_MsgRequestBatch_minimum_fee, value) { - return - } - } - if x.FeeReceive != "" { - value := protoreflect.ValueOfString(x.FeeReceive) - if !f(fd_MsgRequestBatch_fee_receive, value) { - return - } - } - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_MsgRequestBatch_chain_name, value) { - return - } - } - if x.BaseFee != "" { - value := protoreflect.ValueOfString(x.BaseFee) - if !f(fd_MsgRequestBatch_base_fee, 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_MsgRequestBatch) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": - return x.Sender != "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": - return x.Denom != "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": - return x.MinimumFee != "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": - return x.FeeReceive != "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": - return x.ChainName != "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": - return x.BaseFee != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": - x.Sender = "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": - x.Denom = "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": - x.MinimumFee = "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": - x.FeeReceive = "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": - x.ChainName = "" - case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": - x.BaseFee = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": - value := x.Sender - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": - value := x.Denom - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": - value := x.MinimumFee - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": - value := x.FeeReceive - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": - value := x.BaseFee - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": - x.Sender = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": - x.Denom = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": - x.MinimumFee = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": - x.FeeReceive = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": - x.ChainName = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": - x.BaseFee = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": - panic(fmt.Errorf("field sender of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": - panic(fmt.Errorf("field denom of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": - panic(fmt.Errorf("field minimum_fee of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": - panic(fmt.Errorf("field fee_receive of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": - panic(fmt.Errorf("field base_fee of message fx.gravity.crosschain.v1.MsgRequestBatch is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatch.sender": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgRequestBatch.denom": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgRequestBatch.minimum_fee": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgRequestBatch.fee_receive": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgRequestBatch.chain_name": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgRequestBatch.base_fee": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatch")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatch 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_MsgRequestBatch) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgRequestBatch", 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_MsgRequestBatch) 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_MsgRequestBatch) 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_MsgRequestBatch) 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_MsgRequestBatch) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgRequestBatch) - 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.Sender) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Denom) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.MinimumFee) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.FeeReceive) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.BaseFee) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgRequestBatch) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.BaseFee) > 0 { - i -= len(x.BaseFee) - copy(dAtA[i:], x.BaseFee) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.BaseFee))) - i-- - dAtA[i] = 0x32 - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - i-- - dAtA[i] = 0x2a - } - if len(x.FeeReceive) > 0 { - i -= len(x.FeeReceive) - copy(dAtA[i:], x.FeeReceive) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.FeeReceive))) - i-- - dAtA[i] = 0x22 - } - if len(x.MinimumFee) > 0 { - i -= len(x.MinimumFee) - copy(dAtA[i:], x.MinimumFee) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.MinimumFee))) - i-- - dAtA[i] = 0x1a - } - if len(x.Denom) > 0 { - i -= len(x.Denom) - copy(dAtA[i:], x.Denom) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Denom))) - i-- - dAtA[i] = 0x12 - } - if len(x.Sender) > 0 { - i -= len(x.Sender) - copy(dAtA[i:], x.Sender) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) - 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().(*MsgRequestBatch) - 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: MsgRequestBatch: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRequestBatch: 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 Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Denom", 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.Denom = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field MinimumFee", 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.MinimumFee = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field FeeReceive", 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.FeeReceive = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BaseFee", 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.BaseFee = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgRequestBatchResponse protoreflect.MessageDescriptor - fd_MsgRequestBatchResponse_batch_nonce protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgRequestBatchResponse = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgRequestBatchResponse") - fd_MsgRequestBatchResponse_batch_nonce = md_MsgRequestBatchResponse.Fields().ByName("batch_nonce") -} - -var _ protoreflect.Message = (*fastReflection_MsgRequestBatchResponse)(nil) - -type fastReflection_MsgRequestBatchResponse MsgRequestBatchResponse - -func (x *MsgRequestBatchResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgRequestBatchResponse)(x) -} - -func (x *MsgRequestBatchResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[8] - 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_MsgRequestBatchResponse_messageType fastReflection_MsgRequestBatchResponse_messageType -var _ protoreflect.MessageType = fastReflection_MsgRequestBatchResponse_messageType{} - -type fastReflection_MsgRequestBatchResponse_messageType struct{} - -func (x fastReflection_MsgRequestBatchResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgRequestBatchResponse)(nil) -} -func (x fastReflection_MsgRequestBatchResponse_messageType) New() protoreflect.Message { - return new(fastReflection_MsgRequestBatchResponse) -} -func (x fastReflection_MsgRequestBatchResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRequestBatchResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgRequestBatchResponse) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRequestBatchResponse -} - -// 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_MsgRequestBatchResponse) Type() protoreflect.MessageType { - return _fastReflection_MsgRequestBatchResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgRequestBatchResponse) New() protoreflect.Message { - return new(fastReflection_MsgRequestBatchResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgRequestBatchResponse) Interface() protoreflect.ProtoMessage { - return (*MsgRequestBatchResponse)(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_MsgRequestBatchResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.BatchNonce != uint64(0) { - value := protoreflect.ValueOfUint64(x.BatchNonce) - if !f(fd_MsgRequestBatchResponse_batch_nonce, 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_MsgRequestBatchResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatchResponse.batch_nonce": - return x.BatchNonce != uint64(0) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatchResponse 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_MsgRequestBatchResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatchResponse.batch_nonce": - x.BatchNonce = uint64(0) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatchResponse 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_MsgRequestBatchResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatchResponse.batch_nonce": - value := x.BatchNonce - return protoreflect.ValueOfUint64(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatchResponse 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_MsgRequestBatchResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatchResponse.batch_nonce": - x.BatchNonce = value.Uint() - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatchResponse 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_MsgRequestBatchResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatchResponse.batch_nonce": - panic(fmt.Errorf("field batch_nonce of message fx.gravity.crosschain.v1.MsgRequestBatchResponse is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatchResponse 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_MsgRequestBatchResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgRequestBatchResponse.batch_nonce": - return protoreflect.ValueOfUint64(uint64(0)) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgRequestBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgRequestBatchResponse 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_MsgRequestBatchResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgRequestBatchResponse", 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_MsgRequestBatchResponse) 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_MsgRequestBatchResponse) 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_MsgRequestBatchResponse) 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_MsgRequestBatchResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgRequestBatchResponse) - 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.BatchNonce != 0 { - n += 1 + runtime.Sov(uint64(x.BatchNonce)) - } - 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().(*MsgRequestBatchResponse) - 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.BatchNonce != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.BatchNonce)) - i-- - dAtA[i] = 0x8 - } - 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().(*MsgRequestBatchResponse) - 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: MsgRequestBatchResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRequestBatchResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BatchNonce", wireType) - } - x.BatchNonce = 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.BatchNonce |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgIncreaseBridgeFee protoreflect.MessageDescriptor - fd_MsgIncreaseBridgeFee_chain_name protoreflect.FieldDescriptor - fd_MsgIncreaseBridgeFee_transaction_id protoreflect.FieldDescriptor - fd_MsgIncreaseBridgeFee_sender protoreflect.FieldDescriptor - fd_MsgIncreaseBridgeFee_add_bridge_fee protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgIncreaseBridgeFee = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgIncreaseBridgeFee") - fd_MsgIncreaseBridgeFee_chain_name = md_MsgIncreaseBridgeFee.Fields().ByName("chain_name") - fd_MsgIncreaseBridgeFee_transaction_id = md_MsgIncreaseBridgeFee.Fields().ByName("transaction_id") - fd_MsgIncreaseBridgeFee_sender = md_MsgIncreaseBridgeFee.Fields().ByName("sender") - fd_MsgIncreaseBridgeFee_add_bridge_fee = md_MsgIncreaseBridgeFee.Fields().ByName("add_bridge_fee") -} - -var _ protoreflect.Message = (*fastReflection_MsgIncreaseBridgeFee)(nil) - -type fastReflection_MsgIncreaseBridgeFee MsgIncreaseBridgeFee - -func (x *MsgIncreaseBridgeFee) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgIncreaseBridgeFee)(x) -} - -func (x *MsgIncreaseBridgeFee) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[9] - 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_MsgIncreaseBridgeFee_messageType fastReflection_MsgIncreaseBridgeFee_messageType -var _ protoreflect.MessageType = fastReflection_MsgIncreaseBridgeFee_messageType{} - -type fastReflection_MsgIncreaseBridgeFee_messageType struct{} - -func (x fastReflection_MsgIncreaseBridgeFee_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgIncreaseBridgeFee)(nil) -} -func (x fastReflection_MsgIncreaseBridgeFee_messageType) New() protoreflect.Message { - return new(fastReflection_MsgIncreaseBridgeFee) -} -func (x fastReflection_MsgIncreaseBridgeFee_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgIncreaseBridgeFee -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgIncreaseBridgeFee) Descriptor() protoreflect.MessageDescriptor { - return md_MsgIncreaseBridgeFee -} - -// 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_MsgIncreaseBridgeFee) Type() protoreflect.MessageType { - return _fastReflection_MsgIncreaseBridgeFee_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgIncreaseBridgeFee) New() protoreflect.Message { - return new(fastReflection_MsgIncreaseBridgeFee) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgIncreaseBridgeFee) Interface() protoreflect.ProtoMessage { - return (*MsgIncreaseBridgeFee)(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_MsgIncreaseBridgeFee) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_MsgIncreaseBridgeFee_chain_name, value) { - return - } - } - if x.TransactionId != uint64(0) { - value := protoreflect.ValueOfUint64(x.TransactionId) - if !f(fd_MsgIncreaseBridgeFee_transaction_id, value) { - return - } - } - if x.Sender != "" { - value := protoreflect.ValueOfString(x.Sender) - if !f(fd_MsgIncreaseBridgeFee_sender, value) { - return - } - } - if x.AddBridgeFee != nil { - value := protoreflect.ValueOfMessage(x.AddBridgeFee.ProtoReflect()) - if !f(fd_MsgIncreaseBridgeFee_add_bridge_fee, 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_MsgIncreaseBridgeFee) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": - return x.ChainName != "" - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": - return x.TransactionId != uint64(0) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": - return x.Sender != "" - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": - return x.AddBridgeFee != nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": - x.ChainName = "" - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": - x.TransactionId = uint64(0) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": - x.Sender = "" - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": - x.AddBridgeFee = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": - value := x.TransactionId - return protoreflect.ValueOfUint64(value) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": - value := x.Sender - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": - value := x.AddBridgeFee - return protoreflect.ValueOfMessage(value.ProtoReflect()) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": - x.ChainName = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": - x.TransactionId = value.Uint() - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": - x.Sender = value.Interface().(string) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": - x.AddBridgeFee = value.Message().Interface().(*v1beta1.Coin) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": - if x.AddBridgeFee == nil { - x.AddBridgeFee = new(v1beta1.Coin) - } - return protoreflect.ValueOfMessage(x.AddBridgeFee.ProtoReflect()) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee is not mutable")) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": - panic(fmt.Errorf("field transaction_id of message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee is not mutable")) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": - panic(fmt.Errorf("field sender of message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.chain_name": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.transaction_id": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.sender": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee": - m := new(v1beta1.Coin) - return protoreflect.ValueOfMessage(m.ProtoReflect()) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgIncreaseBridgeFee 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_MsgIncreaseBridgeFee) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgIncreaseBridgeFee", 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_MsgIncreaseBridgeFee) 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_MsgIncreaseBridgeFee) 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_MsgIncreaseBridgeFee) 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_MsgIncreaseBridgeFee) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgIncreaseBridgeFee) - 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.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.TransactionId != 0 { - n += 1 + runtime.Sov(uint64(x.TransactionId)) - } - l = len(x.Sender) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.AddBridgeFee != nil { - l = options.Size(x.AddBridgeFee) - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgIncreaseBridgeFee) - 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.AddBridgeFee != nil { - encoded, err := options.Marshal(x.AddBridgeFee) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x22 - } - if len(x.Sender) > 0 { - i -= len(x.Sender) - copy(dAtA[i:], x.Sender) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) - i-- - dAtA[i] = 0x1a - } - if x.TransactionId != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.TransactionId)) - i-- - dAtA[i] = 0x10 - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - 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().(*MsgIncreaseBridgeFee) - 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: MsgIncreaseBridgeFee: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgIncreaseBridgeFee: 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 ChainName", 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.ChainName = 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 TransactionId", wireType) - } - x.TransactionId = 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.TransactionId |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field AddBridgeFee", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if x.AddBridgeFee == nil { - x.AddBridgeFee = &v1beta1.Coin{} - } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.AddBridgeFee); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MsgOracleSetConfirmResponse protoreflect.MessageDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgOracleSetConfirmResponse = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgOracleSetConfirmResponse") -} - -var _ protoreflect.Message = (*fastReflection_MsgOracleSetConfirmResponse)(nil) - -type fastReflection_MsgOracleSetConfirmResponse MsgOracleSetConfirmResponse - -func (x *MsgOracleSetConfirmResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgOracleSetConfirmResponse)(x) -} - -func (x *MsgOracleSetConfirmResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[10] - 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_MsgOracleSetConfirmResponse_messageType fastReflection_MsgOracleSetConfirmResponse_messageType -var _ protoreflect.MessageType = fastReflection_MsgOracleSetConfirmResponse_messageType{} - -type fastReflection_MsgOracleSetConfirmResponse_messageType struct{} - -func (x fastReflection_MsgOracleSetConfirmResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgOracleSetConfirmResponse)(nil) -} -func (x fastReflection_MsgOracleSetConfirmResponse_messageType) New() protoreflect.Message { - return new(fastReflection_MsgOracleSetConfirmResponse) -} -func (x fastReflection_MsgOracleSetConfirmResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgOracleSetConfirmResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgOracleSetConfirmResponse) Descriptor() protoreflect.MessageDescriptor { - return md_MsgOracleSetConfirmResponse -} - -// 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_MsgOracleSetConfirmResponse) Type() protoreflect.MessageType { - return _fastReflection_MsgOracleSetConfirmResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgOracleSetConfirmResponse) New() protoreflect.Message { - return new(fastReflection_MsgOracleSetConfirmResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgOracleSetConfirmResponse) Interface() protoreflect.ProtoMessage { - return (*MsgOracleSetConfirmResponse)(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_MsgOracleSetConfirmResponse) 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_MsgOracleSetConfirmResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse", 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_MsgOracleSetConfirmResponse) 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_MsgOracleSetConfirmResponse) 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_MsgOracleSetConfirmResponse) 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_MsgOracleSetConfirmResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgOracleSetConfirmResponse) - 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().(*MsgOracleSetConfirmResponse) - 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().(*MsgOracleSetConfirmResponse) - 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: MsgOracleSetConfirmResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgOracleSetConfirmResponse: 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_MsgConfirmBatchResponse protoreflect.MessageDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgConfirmBatchResponse = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgConfirmBatchResponse") -} - -var _ protoreflect.Message = (*fastReflection_MsgConfirmBatchResponse)(nil) - -type fastReflection_MsgConfirmBatchResponse MsgConfirmBatchResponse - -func (x *MsgConfirmBatchResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgConfirmBatchResponse)(x) -} - -func (x *MsgConfirmBatchResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[11] - 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_MsgConfirmBatchResponse_messageType fastReflection_MsgConfirmBatchResponse_messageType -var _ protoreflect.MessageType = fastReflection_MsgConfirmBatchResponse_messageType{} - -type fastReflection_MsgConfirmBatchResponse_messageType struct{} - -func (x fastReflection_MsgConfirmBatchResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgConfirmBatchResponse)(nil) -} -func (x fastReflection_MsgConfirmBatchResponse_messageType) New() protoreflect.Message { - return new(fastReflection_MsgConfirmBatchResponse) -} -func (x fastReflection_MsgConfirmBatchResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgConfirmBatchResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgConfirmBatchResponse) Descriptor() protoreflect.MessageDescriptor { - return md_MsgConfirmBatchResponse -} - -// 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_MsgConfirmBatchResponse) Type() protoreflect.MessageType { - return _fastReflection_MsgConfirmBatchResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgConfirmBatchResponse) New() protoreflect.Message { - return new(fastReflection_MsgConfirmBatchResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgConfirmBatchResponse) Interface() protoreflect.ProtoMessage { - return (*MsgConfirmBatchResponse)(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_MsgConfirmBatchResponse) 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_MsgConfirmBatchResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgConfirmBatchResponse", 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_MsgConfirmBatchResponse) 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_MsgConfirmBatchResponse) 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_MsgConfirmBatchResponse) 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_MsgConfirmBatchResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgConfirmBatchResponse) - 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().(*MsgConfirmBatchResponse) - 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().(*MsgConfirmBatchResponse) - 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: MsgConfirmBatchResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgConfirmBatchResponse: 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_MsgBridgeCallConfirmResponse protoreflect.MessageDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MsgBridgeCallConfirmResponse = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MsgBridgeCallConfirmResponse") -} - -var _ protoreflect.Message = (*fastReflection_MsgBridgeCallConfirmResponse)(nil) - -type fastReflection_MsgBridgeCallConfirmResponse MsgBridgeCallConfirmResponse - -func (x *MsgBridgeCallConfirmResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgBridgeCallConfirmResponse)(x) -} - -func (x *MsgBridgeCallConfirmResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[12] - 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_MsgBridgeCallConfirmResponse_messageType fastReflection_MsgBridgeCallConfirmResponse_messageType -var _ protoreflect.MessageType = fastReflection_MsgBridgeCallConfirmResponse_messageType{} - -type fastReflection_MsgBridgeCallConfirmResponse_messageType struct{} - -func (x fastReflection_MsgBridgeCallConfirmResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgBridgeCallConfirmResponse)(nil) -} -func (x fastReflection_MsgBridgeCallConfirmResponse_messageType) New() protoreflect.Message { - return new(fastReflection_MsgBridgeCallConfirmResponse) -} -func (x fastReflection_MsgBridgeCallConfirmResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgBridgeCallConfirmResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgBridgeCallConfirmResponse) Descriptor() protoreflect.MessageDescriptor { - return md_MsgBridgeCallConfirmResponse -} - -// 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_MsgBridgeCallConfirmResponse) Type() protoreflect.MessageType { - return _fastReflection_MsgBridgeCallConfirmResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgBridgeCallConfirmResponse) New() protoreflect.Message { - return new(fastReflection_MsgBridgeCallConfirmResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgBridgeCallConfirmResponse) Interface() protoreflect.ProtoMessage { - return (*MsgBridgeCallConfirmResponse)(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_MsgBridgeCallConfirmResponse) 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_MsgBridgeCallConfirmResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse", 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_MsgBridgeCallConfirmResponse) 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_MsgBridgeCallConfirmResponse) 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_MsgBridgeCallConfirmResponse) 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_MsgBridgeCallConfirmResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgBridgeCallConfirmResponse) - 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().(*MsgBridgeCallConfirmResponse) - 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().(*MsgBridgeCallConfirmResponse) - 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: MsgBridgeCallConfirmResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgBridgeCallConfirmResponse: 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_BridgeToken protoreflect.MessageDescriptor - fd_BridgeToken_token protoreflect.FieldDescriptor - fd_BridgeToken_denom protoreflect.FieldDescriptor - fd_BridgeToken_channel_ibc protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_BridgeToken = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("BridgeToken") - fd_BridgeToken_token = md_BridgeToken.Fields().ByName("token") - fd_BridgeToken_denom = md_BridgeToken.Fields().ByName("denom") - fd_BridgeToken_channel_ibc = md_BridgeToken.Fields().ByName("channel_ibc") -} - -var _ protoreflect.Message = (*fastReflection_BridgeToken)(nil) - -type fastReflection_BridgeToken BridgeToken - -func (x *BridgeToken) ProtoReflect() protoreflect.Message { - return (*fastReflection_BridgeToken)(x) -} - -func (x *BridgeToken) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[13] - 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_BridgeToken_messageType fastReflection_BridgeToken_messageType -var _ protoreflect.MessageType = fastReflection_BridgeToken_messageType{} - -type fastReflection_BridgeToken_messageType struct{} - -func (x fastReflection_BridgeToken_messageType) Zero() protoreflect.Message { - return (*fastReflection_BridgeToken)(nil) -} -func (x fastReflection_BridgeToken_messageType) New() protoreflect.Message { - return new(fastReflection_BridgeToken) -} -func (x fastReflection_BridgeToken_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_BridgeToken -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_BridgeToken) Descriptor() protoreflect.MessageDescriptor { - return md_BridgeToken -} - -// 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_BridgeToken) Type() protoreflect.MessageType { - return _fastReflection_BridgeToken_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_BridgeToken) New() protoreflect.Message { - return new(fastReflection_BridgeToken) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_BridgeToken) Interface() protoreflect.ProtoMessage { - return (*BridgeToken)(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_BridgeToken) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Token != "" { - value := protoreflect.ValueOfString(x.Token) - if !f(fd_BridgeToken_token, value) { - return - } - } - if x.Denom != "" { - value := protoreflect.ValueOfString(x.Denom) - if !f(fd_BridgeToken_denom, value) { - return - } - } - if x.ChannelIbc != "" { - value := protoreflect.ValueOfString(x.ChannelIbc) - if !f(fd_BridgeToken_channel_ibc, 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_BridgeToken) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BridgeToken.token": - return x.Token != "" - case "fx.gravity.crosschain.v1.BridgeToken.denom": - return x.Denom != "" - case "fx.gravity.crosschain.v1.BridgeToken.channel_ibc": - return x.ChannelIbc != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BridgeToken.token": - x.Token = "" - case "fx.gravity.crosschain.v1.BridgeToken.denom": - x.Denom = "" - case "fx.gravity.crosschain.v1.BridgeToken.channel_ibc": - x.ChannelIbc = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.BridgeToken.token": - value := x.Token - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.BridgeToken.denom": - value := x.Denom - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.BridgeToken.channel_ibc": - value := x.ChannelIbc - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BridgeToken.token": - x.Token = value.Interface().(string) - case "fx.gravity.crosschain.v1.BridgeToken.denom": - x.Denom = value.Interface().(string) - case "fx.gravity.crosschain.v1.BridgeToken.channel_ibc": - x.ChannelIbc = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BridgeToken.token": - panic(fmt.Errorf("field token of message fx.gravity.crosschain.v1.BridgeToken is not mutable")) - case "fx.gravity.crosschain.v1.BridgeToken.denom": - panic(fmt.Errorf("field denom of message fx.gravity.crosschain.v1.BridgeToken is not mutable")) - case "fx.gravity.crosschain.v1.BridgeToken.channel_ibc": - panic(fmt.Errorf("field channel_ibc of message fx.gravity.crosschain.v1.BridgeToken is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BridgeToken.token": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.BridgeToken.denom": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.BridgeToken.channel_ibc": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.BridgeToken", 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_BridgeToken) 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_BridgeToken) 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_BridgeToken) 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_BridgeToken) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*BridgeToken) - 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.Token) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Denom) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.ChannelIbc) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*BridgeToken) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.ChannelIbc) > 0 { - i -= len(x.ChannelIbc) - copy(dAtA[i:], x.ChannelIbc) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChannelIbc))) - i-- - dAtA[i] = 0x1a - } - if len(x.Denom) > 0 { - i -= len(x.Denom) - copy(dAtA[i:], x.Denom) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Denom))) - i-- - dAtA[i] = 0x12 - } - if len(x.Token) > 0 { - i -= len(x.Token) - copy(dAtA[i:], x.Token) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Token))) - 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().(*BridgeToken) - 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: BridgeToken: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: BridgeToken: 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 Token", 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.Token = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Denom", 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.Denom = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChannelIbc", 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.ChannelIbc = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_BatchFees protoreflect.MessageDescriptor - fd_BatchFees_token_contract protoreflect.FieldDescriptor - fd_BatchFees_total_fees protoreflect.FieldDescriptor - fd_BatchFees_total_txs protoreflect.FieldDescriptor - fd_BatchFees_total_amount protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_BatchFees = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("BatchFees") - fd_BatchFees_token_contract = md_BatchFees.Fields().ByName("token_contract") - fd_BatchFees_total_fees = md_BatchFees.Fields().ByName("total_fees") - fd_BatchFees_total_txs = md_BatchFees.Fields().ByName("total_txs") - fd_BatchFees_total_amount = md_BatchFees.Fields().ByName("total_amount") -} - -var _ protoreflect.Message = (*fastReflection_BatchFees)(nil) - -type fastReflection_BatchFees BatchFees - -func (x *BatchFees) ProtoReflect() protoreflect.Message { - return (*fastReflection_BatchFees)(x) -} - -func (x *BatchFees) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[14] - 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_BatchFees_messageType fastReflection_BatchFees_messageType -var _ protoreflect.MessageType = fastReflection_BatchFees_messageType{} - -type fastReflection_BatchFees_messageType struct{} - -func (x fastReflection_BatchFees_messageType) Zero() protoreflect.Message { - return (*fastReflection_BatchFees)(nil) -} -func (x fastReflection_BatchFees_messageType) New() protoreflect.Message { - return new(fastReflection_BatchFees) -} -func (x fastReflection_BatchFees_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_BatchFees -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_BatchFees) Descriptor() protoreflect.MessageDescriptor { - return md_BatchFees -} - -// 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_BatchFees) Type() protoreflect.MessageType { - return _fastReflection_BatchFees_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_BatchFees) New() protoreflect.Message { - return new(fastReflection_BatchFees) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_BatchFees) Interface() protoreflect.ProtoMessage { - return (*BatchFees)(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_BatchFees) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.TokenContract != "" { - value := protoreflect.ValueOfString(x.TokenContract) - if !f(fd_BatchFees_token_contract, value) { - return - } - } - if x.TotalFees != "" { - value := protoreflect.ValueOfString(x.TotalFees) - if !f(fd_BatchFees_total_fees, value) { - return - } - } - if x.TotalTxs != uint64(0) { - value := protoreflect.ValueOfUint64(x.TotalTxs) - if !f(fd_BatchFees_total_txs, value) { - return - } - } - if x.TotalAmount != "" { - value := protoreflect.ValueOfString(x.TotalAmount) - if !f(fd_BatchFees_total_amount, value) { - return - } - } -} - -// Has reports whether a field is populated. -// -// Some fields have the property of nullability where it is possible to -// distinguish between the default value of a field and whether the field -// was explicitly populated with the default value. Singular message fields, -// member fields of a oneof, and proto2 scalar fields are nullable. Such -// fields are populated only if explicitly set. -// -// In other cases (aside from the nullable cases above), -// a proto3 scalar field is populated if it contains a non-zero value, and -// a repeated field is populated if it is non-empty. -func (x *fastReflection_BatchFees) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BatchFees.token_contract": - return x.TokenContract != "" - case "fx.gravity.crosschain.v1.BatchFees.total_fees": - return x.TotalFees != "" - case "fx.gravity.crosschain.v1.BatchFees.total_txs": - return x.TotalTxs != uint64(0) - case "fx.gravity.crosschain.v1.BatchFees.total_amount": - return x.TotalAmount != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BatchFees")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BatchFees 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_BatchFees) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BatchFees.token_contract": - x.TokenContract = "" - case "fx.gravity.crosschain.v1.BatchFees.total_fees": - x.TotalFees = "" - case "fx.gravity.crosschain.v1.BatchFees.total_txs": - x.TotalTxs = uint64(0) - case "fx.gravity.crosschain.v1.BatchFees.total_amount": - x.TotalAmount = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BatchFees")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BatchFees 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_BatchFees) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.BatchFees.token_contract": - value := x.TokenContract - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.BatchFees.total_fees": - value := x.TotalFees - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.BatchFees.total_txs": - value := x.TotalTxs - return protoreflect.ValueOfUint64(value) - case "fx.gravity.crosschain.v1.BatchFees.total_amount": - value := x.TotalAmount - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BatchFees")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BatchFees 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_BatchFees) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BatchFees.token_contract": - x.TokenContract = value.Interface().(string) - case "fx.gravity.crosschain.v1.BatchFees.total_fees": - x.TotalFees = value.Interface().(string) - case "fx.gravity.crosschain.v1.BatchFees.total_txs": - x.TotalTxs = value.Uint() - case "fx.gravity.crosschain.v1.BatchFees.total_amount": - x.TotalAmount = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BatchFees")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BatchFees 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_BatchFees) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BatchFees.token_contract": - panic(fmt.Errorf("field token_contract of message fx.gravity.crosschain.v1.BatchFees is not mutable")) - case "fx.gravity.crosschain.v1.BatchFees.total_fees": - panic(fmt.Errorf("field total_fees of message fx.gravity.crosschain.v1.BatchFees is not mutable")) - case "fx.gravity.crosschain.v1.BatchFees.total_txs": - panic(fmt.Errorf("field total_txs of message fx.gravity.crosschain.v1.BatchFees is not mutable")) - case "fx.gravity.crosschain.v1.BatchFees.total_amount": - panic(fmt.Errorf("field total_amount of message fx.gravity.crosschain.v1.BatchFees is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BatchFees")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BatchFees 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_BatchFees) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.BatchFees.token_contract": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.BatchFees.total_fees": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.BatchFees.total_txs": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.crosschain.v1.BatchFees.total_amount": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BatchFees")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.BatchFees 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_BatchFees) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.BatchFees", 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_BatchFees) 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_BatchFees) 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_BatchFees) 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_BatchFees) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*BatchFees) - 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.TokenContract) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.TotalFees) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.TotalTxs != 0 { - n += 1 + runtime.Sov(uint64(x.TotalTxs)) - } - l = len(x.TotalAmount) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*BatchFees) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.TotalAmount) > 0 { - i -= len(x.TotalAmount) - copy(dAtA[i:], x.TotalAmount) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TotalAmount))) - i-- - dAtA[i] = 0x22 - } - if x.TotalTxs != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.TotalTxs)) - i-- - dAtA[i] = 0x18 - } - if len(x.TotalFees) > 0 { - i -= len(x.TotalFees) - copy(dAtA[i:], x.TotalFees) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TotalFees))) - i-- - dAtA[i] = 0x12 - } - if len(x.TokenContract) > 0 { - i -= len(x.TokenContract) - copy(dAtA[i:], x.TokenContract) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TokenContract))) - 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().(*BatchFees) - 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: BatchFees: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: BatchFees: 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 TokenContract", 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.TokenContract = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TotalFees", 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.TotalFees = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TotalTxs", wireType) - } - x.TotalTxs = 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.TotalTxs |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TotalAmount", 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.TotalAmount = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var ( - md_MinBatchFee protoreflect.MessageDescriptor - fd_MinBatchFee_token_contract protoreflect.FieldDescriptor - fd_MinBatchFee_base_fee protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_MinBatchFee = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("MinBatchFee") - fd_MinBatchFee_token_contract = md_MinBatchFee.Fields().ByName("token_contract") - fd_MinBatchFee_base_fee = md_MinBatchFee.Fields().ByName("base_fee") -} - -var _ protoreflect.Message = (*fastReflection_MinBatchFee)(nil) - -type fastReflection_MinBatchFee MinBatchFee - -func (x *MinBatchFee) ProtoReflect() protoreflect.Message { - return (*fastReflection_MinBatchFee)(x) -} - -func (x *MinBatchFee) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[15] - 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_MinBatchFee_messageType fastReflection_MinBatchFee_messageType -var _ protoreflect.MessageType = fastReflection_MinBatchFee_messageType{} - -type fastReflection_MinBatchFee_messageType struct{} - -func (x fastReflection_MinBatchFee_messageType) Zero() protoreflect.Message { - return (*fastReflection_MinBatchFee)(nil) -} -func (x fastReflection_MinBatchFee_messageType) New() protoreflect.Message { - return new(fastReflection_MinBatchFee) -} -func (x fastReflection_MinBatchFee_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MinBatchFee -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MinBatchFee) Descriptor() protoreflect.MessageDescriptor { - return md_MinBatchFee -} - -// 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_MinBatchFee) Type() protoreflect.MessageType { - return _fastReflection_MinBatchFee_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MinBatchFee) New() protoreflect.Message { - return new(fastReflection_MinBatchFee) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MinBatchFee) Interface() protoreflect.ProtoMessage { - return (*MinBatchFee)(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_MinBatchFee) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.TokenContract != "" { - value := protoreflect.ValueOfString(x.TokenContract) - if !f(fd_MinBatchFee_token_contract, value) { - return - } - } - if x.BaseFee != "" { - value := protoreflect.ValueOfString(x.BaseFee) - if !f(fd_MinBatchFee_base_fee, 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_MinBatchFee) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MinBatchFee.token_contract": - return x.TokenContract != "" - case "fx.gravity.crosschain.v1.MinBatchFee.base_fee": - return x.BaseFee != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MinBatchFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MinBatchFee 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_MinBatchFee) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MinBatchFee.token_contract": - x.TokenContract = "" - case "fx.gravity.crosschain.v1.MinBatchFee.base_fee": - x.BaseFee = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MinBatchFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MinBatchFee 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_MinBatchFee) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.MinBatchFee.token_contract": - value := x.TokenContract - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.MinBatchFee.base_fee": - value := x.BaseFee - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MinBatchFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MinBatchFee 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_MinBatchFee) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MinBatchFee.token_contract": - x.TokenContract = value.Interface().(string) - case "fx.gravity.crosschain.v1.MinBatchFee.base_fee": - x.BaseFee = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MinBatchFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MinBatchFee 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_MinBatchFee) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MinBatchFee.token_contract": - panic(fmt.Errorf("field token_contract of message fx.gravity.crosschain.v1.MinBatchFee is not mutable")) - case "fx.gravity.crosschain.v1.MinBatchFee.base_fee": - panic(fmt.Errorf("field base_fee of message fx.gravity.crosschain.v1.MinBatchFee is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MinBatchFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MinBatchFee 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_MinBatchFee) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.MinBatchFee.token_contract": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.MinBatchFee.base_fee": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MinBatchFee")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.MinBatchFee 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_MinBatchFee) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MinBatchFee", 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_MinBatchFee) 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_MinBatchFee) 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_MinBatchFee) 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_MinBatchFee) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MinBatchFee) - 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.TokenContract) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.BaseFee) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MinBatchFee) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.BaseFee) > 0 { - i -= len(x.BaseFee) - copy(dAtA[i:], x.BaseFee) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.BaseFee))) - i-- - dAtA[i] = 0x12 - } - if len(x.TokenContract) > 0 { - i -= len(x.TokenContract) - copy(dAtA[i:], x.TokenContract) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TokenContract))) - 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().(*MinBatchFee) - 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: MinBatchFee: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MinBatchFee: 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 TokenContract", 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.TokenContract = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BaseFee", 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.BaseFee = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var _ protoreflect.List = (*_QueryBatchFeeRequest_2_list)(nil) - -type _QueryBatchFeeRequest_2_list struct { - list *[]*MinBatchFee -} - -func (x *_QueryBatchFeeRequest_2_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_QueryBatchFeeRequest_2_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) -} - -func (x *_QueryBatchFeeRequest_2_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*MinBatchFee) - (*x.list)[i] = concreteValue -} - -func (x *_QueryBatchFeeRequest_2_list) Append(value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*MinBatchFee) - *x.list = append(*x.list, concreteValue) -} - -func (x *_QueryBatchFeeRequest_2_list) AppendMutable() protoreflect.Value { - v := new(MinBatchFee) - *x.list = append(*x.list, v) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_QueryBatchFeeRequest_2_list) Truncate(n int) { - for i := n; i < len(*x.list); i++ { - (*x.list)[i] = nil - } - *x.list = (*x.list)[:n] -} - -func (x *_QueryBatchFeeRequest_2_list) NewElement() protoreflect.Value { - v := new(MinBatchFee) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_QueryBatchFeeRequest_2_list) IsValid() bool { - return x.list != nil -} - -var ( - md_QueryBatchFeeRequest protoreflect.MessageDescriptor - fd_QueryBatchFeeRequest_chain_name protoreflect.FieldDescriptor - fd_QueryBatchFeeRequest_min_batch_fees protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_QueryBatchFeeRequest = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("QueryBatchFeeRequest") - fd_QueryBatchFeeRequest_chain_name = md_QueryBatchFeeRequest.Fields().ByName("chain_name") - fd_QueryBatchFeeRequest_min_batch_fees = md_QueryBatchFeeRequest.Fields().ByName("min_batch_fees") -} - -var _ protoreflect.Message = (*fastReflection_QueryBatchFeeRequest)(nil) - -type fastReflection_QueryBatchFeeRequest QueryBatchFeeRequest - -func (x *QueryBatchFeeRequest) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryBatchFeeRequest)(x) -} - -func (x *QueryBatchFeeRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[16] - 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_QueryBatchFeeRequest_messageType fastReflection_QueryBatchFeeRequest_messageType -var _ protoreflect.MessageType = fastReflection_QueryBatchFeeRequest_messageType{} - -type fastReflection_QueryBatchFeeRequest_messageType struct{} - -func (x fastReflection_QueryBatchFeeRequest_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryBatchFeeRequest)(nil) -} -func (x fastReflection_QueryBatchFeeRequest_messageType) New() protoreflect.Message { - return new(fastReflection_QueryBatchFeeRequest) -} -func (x fastReflection_QueryBatchFeeRequest_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryBatchFeeRequest -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_QueryBatchFeeRequest) Descriptor() protoreflect.MessageDescriptor { - return md_QueryBatchFeeRequest -} - -// 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_QueryBatchFeeRequest) Type() protoreflect.MessageType { - return _fastReflection_QueryBatchFeeRequest_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryBatchFeeRequest) New() protoreflect.Message { - return new(fastReflection_QueryBatchFeeRequest) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryBatchFeeRequest) Interface() protoreflect.ProtoMessage { - return (*QueryBatchFeeRequest)(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_QueryBatchFeeRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.ChainName != "" { - value := protoreflect.ValueOfString(x.ChainName) - if !f(fd_QueryBatchFeeRequest_chain_name, value) { - return - } - } - if len(x.MinBatchFees) != 0 { - value := protoreflect.ValueOfList(&_QueryBatchFeeRequest_2_list{list: &x.MinBatchFees}) - if !f(fd_QueryBatchFeeRequest_min_batch_fees, 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_QueryBatchFeeRequest) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.chain_name": - return x.ChainName != "" - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.min_batch_fees": - return len(x.MinBatchFees) != 0 - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeRequest")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeRequest 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_QueryBatchFeeRequest) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.chain_name": - x.ChainName = "" - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.min_batch_fees": - x.MinBatchFees = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeRequest")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeRequest 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_QueryBatchFeeRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.chain_name": - value := x.ChainName - return protoreflect.ValueOfString(value) - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.min_batch_fees": - if len(x.MinBatchFees) == 0 { - return protoreflect.ValueOfList(&_QueryBatchFeeRequest_2_list{}) - } - listValue := &_QueryBatchFeeRequest_2_list{list: &x.MinBatchFees} - return protoreflect.ValueOfList(listValue) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeRequest")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeRequest 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_QueryBatchFeeRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.chain_name": - x.ChainName = value.Interface().(string) - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.min_batch_fees": - lv := value.List() - clv := lv.(*_QueryBatchFeeRequest_2_list) - x.MinBatchFees = *clv.list - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeRequest")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeRequest 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_QueryBatchFeeRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.min_batch_fees": - if x.MinBatchFees == nil { - x.MinBatchFees = []*MinBatchFee{} - } - value := &_QueryBatchFeeRequest_2_list{list: &x.MinBatchFees} - return protoreflect.ValueOfList(value) - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.chain_name": - panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.QueryBatchFeeRequest is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeRequest")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeRequest 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_QueryBatchFeeRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.chain_name": - return protoreflect.ValueOfString("") - case "fx.gravity.crosschain.v1.QueryBatchFeeRequest.min_batch_fees": - list := []*MinBatchFee{} - return protoreflect.ValueOfList(&_QueryBatchFeeRequest_2_list{list: &list}) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeRequest")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeRequest 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_QueryBatchFeeRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.QueryBatchFeeRequest", 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_QueryBatchFeeRequest) 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_QueryBatchFeeRequest) 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_QueryBatchFeeRequest) 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_QueryBatchFeeRequest) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryBatchFeeRequest) - 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.ChainName) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if len(x.MinBatchFees) > 0 { - for _, e := range x.MinBatchFees { - l = options.Size(e) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryBatchFeeRequest) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.MinBatchFees) > 0 { - for iNdEx := len(x.MinBatchFees) - 1; iNdEx >= 0; iNdEx-- { - encoded, err := options.Marshal(x.MinBatchFees[iNdEx]) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x12 - } - } - if len(x.ChainName) > 0 { - i -= len(x.ChainName) - copy(dAtA[i:], x.ChainName) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) - 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().(*QueryBatchFeeRequest) - 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: QueryBatchFeeRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBatchFeeRequest: 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 ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field MinBatchFees", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.MinBatchFees = append(x.MinBatchFees, &MinBatchFee{}) - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.MinBatchFees[len(x.MinBatchFees)-1]); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var _ protoreflect.List = (*_QueryBatchFeeResponse_1_list)(nil) - -type _QueryBatchFeeResponse_1_list struct { - list *[]*BatchFees -} - -func (x *_QueryBatchFeeResponse_1_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_QueryBatchFeeResponse_1_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) -} - -func (x *_QueryBatchFeeResponse_1_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*BatchFees) - (*x.list)[i] = concreteValue -} - -func (x *_QueryBatchFeeResponse_1_list) Append(value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*BatchFees) - *x.list = append(*x.list, concreteValue) -} - -func (x *_QueryBatchFeeResponse_1_list) AppendMutable() protoreflect.Value { - v := new(BatchFees) - *x.list = append(*x.list, v) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_QueryBatchFeeResponse_1_list) Truncate(n int) { - for i := n; i < len(*x.list); i++ { - (*x.list)[i] = nil - } - *x.list = (*x.list)[:n] -} - -func (x *_QueryBatchFeeResponse_1_list) NewElement() protoreflect.Value { - v := new(BatchFees) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_QueryBatchFeeResponse_1_list) IsValid() bool { - return x.list != nil -} - -var ( - md_QueryBatchFeeResponse protoreflect.MessageDescriptor - fd_QueryBatchFeeResponse_batch_fees protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_crosschain_v1_legacy_proto_init() - md_QueryBatchFeeResponse = File_fx_gravity_crosschain_v1_legacy_proto.Messages().ByName("QueryBatchFeeResponse") - fd_QueryBatchFeeResponse_batch_fees = md_QueryBatchFeeResponse.Fields().ByName("batch_fees") -} - -var _ protoreflect.Message = (*fastReflection_QueryBatchFeeResponse)(nil) - -type fastReflection_QueryBatchFeeResponse QueryBatchFeeResponse - -func (x *QueryBatchFeeResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_QueryBatchFeeResponse)(x) -} - -func (x *QueryBatchFeeResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[17] - 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_QueryBatchFeeResponse_messageType fastReflection_QueryBatchFeeResponse_messageType -var _ protoreflect.MessageType = fastReflection_QueryBatchFeeResponse_messageType{} - -type fastReflection_QueryBatchFeeResponse_messageType struct{} - -func (x fastReflection_QueryBatchFeeResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_QueryBatchFeeResponse)(nil) -} -func (x fastReflection_QueryBatchFeeResponse_messageType) New() protoreflect.Message { - return new(fastReflection_QueryBatchFeeResponse) -} -func (x fastReflection_QueryBatchFeeResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_QueryBatchFeeResponse -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_QueryBatchFeeResponse) Descriptor() protoreflect.MessageDescriptor { - return md_QueryBatchFeeResponse -} - -// 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_QueryBatchFeeResponse) Type() protoreflect.MessageType { - return _fastReflection_QueryBatchFeeResponse_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_QueryBatchFeeResponse) New() protoreflect.Message { - return new(fastReflection_QueryBatchFeeResponse) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_QueryBatchFeeResponse) Interface() protoreflect.ProtoMessage { - return (*QueryBatchFeeResponse)(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_QueryBatchFeeResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if len(x.BatchFees) != 0 { - value := protoreflect.ValueOfList(&_QueryBatchFeeResponse_1_list{list: &x.BatchFees}) - if !f(fd_QueryBatchFeeResponse_batch_fees, 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_QueryBatchFeeResponse) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeResponse.batch_fees": - return len(x.BatchFees) != 0 - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeResponse 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_QueryBatchFeeResponse) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeResponse.batch_fees": - x.BatchFees = nil - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeResponse 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_QueryBatchFeeResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeResponse.batch_fees": - if len(x.BatchFees) == 0 { - return protoreflect.ValueOfList(&_QueryBatchFeeResponse_1_list{}) - } - listValue := &_QueryBatchFeeResponse_1_list{list: &x.BatchFees} - return protoreflect.ValueOfList(listValue) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeResponse 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_QueryBatchFeeResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeResponse.batch_fees": - lv := value.List() - clv := lv.(*_QueryBatchFeeResponse_1_list) - x.BatchFees = *clv.list - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeResponse 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_QueryBatchFeeResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeResponse.batch_fees": - if x.BatchFees == nil { - x.BatchFees = []*BatchFees{} - } - value := &_QueryBatchFeeResponse_1_list{list: &x.BatchFees} - return protoreflect.ValueOfList(value) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeResponse 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_QueryBatchFeeResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.crosschain.v1.QueryBatchFeeResponse.batch_fees": - list := []*BatchFees{} - return protoreflect.ValueOfList(&_QueryBatchFeeResponse_1_list{list: &list}) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.QueryBatchFeeResponse")) - } - panic(fmt.Errorf("message fx.gravity.crosschain.v1.QueryBatchFeeResponse 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_QueryBatchFeeResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.QueryBatchFeeResponse", 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_QueryBatchFeeResponse) 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_QueryBatchFeeResponse) 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_QueryBatchFeeResponse) 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_QueryBatchFeeResponse) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*QueryBatchFeeResponse) - if x == nil { - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: 0, - } - } - options := runtime.SizeInputToOptions(input) - _ = options - var n int - var l int - _ = l - if len(x.BatchFees) > 0 { - for _, e := range x.BatchFees { - l = options.Size(e) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*QueryBatchFeeResponse) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.BatchFees) > 0 { - for iNdEx := len(x.BatchFees) - 1; iNdEx >= 0; iNdEx-- { - encoded, err := options.Marshal(x.BatchFees[iNdEx]) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0xa - } - } - if input.Buf != nil { - input.Buf = append(input.Buf, dAtA...) - } else { - input.Buf = dAtA - } - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*QueryBatchFeeResponse) - 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: QueryBatchFeeResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: QueryBatchFeeResponse: 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 BatchFees", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.BatchFees = append(x.BatchFees, &BatchFees{}) - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.BatchFees[len(x.BatchFees)-1]); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.27.0 -// protoc (unknown) -// source: fx/gravity/crosschain/v1/legacy.proto - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -// Deprecated: after block 5713000 -type InitCrossChainParamsProposal struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - Params *Params `protobuf:"bytes,3,opt,name=params,proto3" json:"params,omitempty"` - ChainName string `protobuf:"bytes,4,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (x *InitCrossChainParamsProposal) Reset() { - *x = InitCrossChainParamsProposal{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InitCrossChainParamsProposal) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InitCrossChainParamsProposal) ProtoMessage() {} - -// Deprecated: Use InitCrossChainParamsProposal.ProtoReflect.Descriptor instead. -func (*InitCrossChainParamsProposal) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{0} -} - -func (x *InitCrossChainParamsProposal) GetTitle() string { - if x != nil { - return x.Title - } - return "" -} - -func (x *InitCrossChainParamsProposal) GetDescription() string { - if x != nil { - return x.Description - } - return "" -} - -func (x *InitCrossChainParamsProposal) GetParams() *Params { - if x != nil { - return x.Params - } - return nil -} - -func (x *InitCrossChainParamsProposal) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -// Deprecated: Do not use. -type UpdateChainOraclesProposal struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // the title of the update proposal - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - // the description of the proposal - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - Oracles []string `protobuf:"bytes,3,rep,name=oracles,proto3" json:"oracles,omitempty"` - ChainName string `protobuf:"bytes,4,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (x *UpdateChainOraclesProposal) Reset() { - *x = UpdateChainOraclesProposal{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateChainOraclesProposal) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateChainOraclesProposal) ProtoMessage() {} - -// Deprecated: Use UpdateChainOraclesProposal.ProtoReflect.Descriptor instead. -func (*UpdateChainOraclesProposal) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{1} -} - -func (x *UpdateChainOraclesProposal) GetTitle() string { - if x != nil { - return x.Title - } - return "" -} - -func (x *UpdateChainOraclesProposal) GetDescription() string { - if x != nil { - return x.Description - } - return "" -} - -func (x *UpdateChainOraclesProposal) GetOracles() []string { - if x != nil { - return x.Oracles - } - return nil -} - -func (x *UpdateChainOraclesProposal) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -// Deprecated: after block 5713000 -type MsgSetOrchestratorAddress struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OracleAddress string `protobuf:"bytes,1,opt,name=oracle_address,json=oracleAddress,proto3" json:"oracle_address,omitempty"` - BridgerAddress string `protobuf:"bytes,2,opt,name=bridger_address,json=bridgerAddress,proto3" json:"bridger_address,omitempty"` - ExternalAddress string `protobuf:"bytes,3,opt,name=external_address,json=externalAddress,proto3" json:"external_address,omitempty"` - Deposit *v1beta1.Coin `protobuf:"bytes,4,opt,name=deposit,proto3" json:"deposit,omitempty"` - ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (x *MsgSetOrchestratorAddress) Reset() { - *x = MsgSetOrchestratorAddress{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgSetOrchestratorAddress) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgSetOrchestratorAddress) ProtoMessage() {} - -// Deprecated: Use MsgSetOrchestratorAddress.ProtoReflect.Descriptor instead. -func (*MsgSetOrchestratorAddress) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{2} -} - -func (x *MsgSetOrchestratorAddress) GetOracleAddress() string { - if x != nil { - return x.OracleAddress - } - return "" -} - -func (x *MsgSetOrchestratorAddress) GetBridgerAddress() string { - if x != nil { - return x.BridgerAddress - } - return "" -} - -func (x *MsgSetOrchestratorAddress) GetExternalAddress() string { - if x != nil { - return x.ExternalAddress - } - return "" -} - -func (x *MsgSetOrchestratorAddress) GetDeposit() *v1beta1.Coin { - if x != nil { - return x.Deposit - } - return nil -} - -func (x *MsgSetOrchestratorAddress) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -// Deprecated: after block 5713000 -type MsgAddOracleDeposit struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OracleAddress string `protobuf:"bytes,1,opt,name=oracle_address,json=oracleAddress,proto3" json:"oracle_address,omitempty"` - Amount *v1beta1.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` - ChainName string `protobuf:"bytes,3,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (x *MsgAddOracleDeposit) Reset() { - *x = MsgAddOracleDeposit{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgAddOracleDeposit) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgAddOracleDeposit) ProtoMessage() {} - -// Deprecated: Use MsgAddOracleDeposit.ProtoReflect.Descriptor instead. -func (*MsgAddOracleDeposit) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{3} -} - -func (x *MsgAddOracleDeposit) GetOracleAddress() string { - if x != nil { - return x.OracleAddress - } - return "" -} - -func (x *MsgAddOracleDeposit) GetAmount() *v1beta1.Coin { - if x != nil { - return x.Amount - } - return nil -} - -func (x *MsgAddOracleDeposit) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -// Deprecated: Please use precompile BridgeCall -type MsgSendToExternal struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` - Dest string `protobuf:"bytes,2,opt,name=dest,proto3" json:"dest,omitempty"` - Amount *v1beta1.Coin `protobuf:"bytes,3,opt,name=amount,proto3" json:"amount,omitempty"` - BridgeFee *v1beta1.Coin `protobuf:"bytes,4,opt,name=bridge_fee,json=bridgeFee,proto3" json:"bridge_fee,omitempty"` - ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (x *MsgSendToExternal) Reset() { - *x = MsgSendToExternal{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgSendToExternal) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgSendToExternal) ProtoMessage() {} - -// Deprecated: Use MsgSendToExternal.ProtoReflect.Descriptor instead. -func (*MsgSendToExternal) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{4} -} - -func (x *MsgSendToExternal) GetSender() string { - if x != nil { - return x.Sender - } - return "" -} - -func (x *MsgSendToExternal) GetDest() string { - if x != nil { - return x.Dest - } - return "" -} - -func (x *MsgSendToExternal) GetAmount() *v1beta1.Coin { - if x != nil { - return x.Amount - } - return nil -} - -func (x *MsgSendToExternal) GetBridgeFee() *v1beta1.Coin { - if x != nil { - return x.BridgeFee - } - return nil -} - -func (x *MsgSendToExternal) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -// Deprecated: do not use -type MsgSendToExternalResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - BatchNonce uint64 `protobuf:"varint,1,opt,name=batch_nonce,json=batchNonce,proto3" json:"batch_nonce,omitempty"` -} - -func (x *MsgSendToExternalResponse) Reset() { - *x = MsgSendToExternalResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgSendToExternalResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgSendToExternalResponse) ProtoMessage() {} - -// Deprecated: Use MsgSendToExternalResponse.ProtoReflect.Descriptor instead. -func (*MsgSendToExternalResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{5} -} - -func (x *MsgSendToExternalResponse) GetBatchNonce() uint64 { - if x != nil { - return x.BatchNonce - } - return 0 -} - -// Deprecated: do not use -type MsgCancelSendToExternal struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TransactionId uint64 `protobuf:"varint,1,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` - Sender string `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"` - ChainName string `protobuf:"bytes,3,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (x *MsgCancelSendToExternal) Reset() { - *x = MsgCancelSendToExternal{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgCancelSendToExternal) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgCancelSendToExternal) ProtoMessage() {} - -// Deprecated: Use MsgCancelSendToExternal.ProtoReflect.Descriptor instead. -func (*MsgCancelSendToExternal) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{6} -} - -func (x *MsgCancelSendToExternal) GetTransactionId() uint64 { - if x != nil { - return x.TransactionId - } - return 0 -} - -func (x *MsgCancelSendToExternal) GetSender() string { - if x != nil { - return x.Sender - } - return "" -} - -func (x *MsgCancelSendToExternal) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -// Deprecated: do not use -type MsgRequestBatch struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` - Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` - MinimumFee string `protobuf:"bytes,3,opt,name=minimum_fee,json=minimumFee,proto3" json:"minimum_fee,omitempty"` - FeeReceive string `protobuf:"bytes,4,opt,name=fee_receive,json=feeReceive,proto3" json:"fee_receive,omitempty"` - ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` - BaseFee string `protobuf:"bytes,6,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"` -} - -func (x *MsgRequestBatch) Reset() { - *x = MsgRequestBatch{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgRequestBatch) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgRequestBatch) ProtoMessage() {} - -// Deprecated: Use MsgRequestBatch.ProtoReflect.Descriptor instead. -func (*MsgRequestBatch) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{7} -} - -func (x *MsgRequestBatch) GetSender() string { - if x != nil { - return x.Sender - } - return "" -} - -func (x *MsgRequestBatch) GetDenom() string { - if x != nil { - return x.Denom - } - return "" -} - -func (x *MsgRequestBatch) GetMinimumFee() string { - if x != nil { - return x.MinimumFee - } - return "" -} - -func (x *MsgRequestBatch) GetFeeReceive() string { - if x != nil { - return x.FeeReceive - } - return "" -} - -func (x *MsgRequestBatch) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -func (x *MsgRequestBatch) GetBaseFee() string { - if x != nil { - return x.BaseFee - } - return "" -} - -// Deprecated: do not use -type MsgRequestBatchResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - BatchNonce uint64 `protobuf:"varint,1,opt,name=batch_nonce,json=batchNonce,proto3" json:"batch_nonce,omitempty"` -} - -func (x *MsgRequestBatchResponse) Reset() { - *x = MsgRequestBatchResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgRequestBatchResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgRequestBatchResponse) ProtoMessage() {} - -// Deprecated: Use MsgRequestBatchResponse.ProtoReflect.Descriptor instead. -func (*MsgRequestBatchResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{8} -} - -func (x *MsgRequestBatchResponse) GetBatchNonce() uint64 { - if x != nil { - return x.BatchNonce - } - return 0 -} - -// Deprecated: Do not use. -type MsgIncreaseBridgeFee struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ChainName string `protobuf:"bytes,1,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` - TransactionId uint64 `protobuf:"varint,2,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` - Sender string `protobuf:"bytes,3,opt,name=sender,proto3" json:"sender,omitempty"` - AddBridgeFee *v1beta1.Coin `protobuf:"bytes,4,opt,name=add_bridge_fee,json=addBridgeFee,proto3" json:"add_bridge_fee,omitempty"` -} - -func (x *MsgIncreaseBridgeFee) Reset() { - *x = MsgIncreaseBridgeFee{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgIncreaseBridgeFee) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgIncreaseBridgeFee) ProtoMessage() {} - -// Deprecated: Use MsgIncreaseBridgeFee.ProtoReflect.Descriptor instead. -func (*MsgIncreaseBridgeFee) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{9} -} - -func (x *MsgIncreaseBridgeFee) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -func (x *MsgIncreaseBridgeFee) GetTransactionId() uint64 { - if x != nil { - return x.TransactionId - } - return 0 -} - -func (x *MsgIncreaseBridgeFee) GetSender() string { - if x != nil { - return x.Sender - } - return "" -} - -func (x *MsgIncreaseBridgeFee) GetAddBridgeFee() *v1beta1.Coin { - if x != nil { - return x.AddBridgeFee - } - return nil -} - -// Deprecated: Do not use. -type MsgOracleSetConfirmResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MsgOracleSetConfirmResponse) Reset() { - *x = MsgOracleSetConfirmResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgOracleSetConfirmResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgOracleSetConfirmResponse) ProtoMessage() {} - -// Deprecated: Use MsgOracleSetConfirmResponse.ProtoReflect.Descriptor instead. -func (*MsgOracleSetConfirmResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{10} -} - -// Deprecated: Do not use. -type MsgConfirmBatchResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MsgConfirmBatchResponse) Reset() { - *x = MsgConfirmBatchResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgConfirmBatchResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgConfirmBatchResponse) ProtoMessage() {} - -// Deprecated: Use MsgConfirmBatchResponse.ProtoReflect.Descriptor instead. -func (*MsgConfirmBatchResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{11} -} - -// Deprecated: Do not use. -type MsgBridgeCallConfirmResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MsgBridgeCallConfirmResponse) Reset() { - *x = MsgBridgeCallConfirmResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgBridgeCallConfirmResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgBridgeCallConfirmResponse) ProtoMessage() {} - -// Deprecated: Use MsgBridgeCallConfirmResponse.ProtoReflect.Descriptor instead. -func (*MsgBridgeCallConfirmResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{12} -} - -// Deprecated: Do not use. -type BridgeToken struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` - Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` - // Deprecated: after upgrade v3 - ChannelIbc string `protobuf:"bytes,3,opt,name=channel_ibc,json=channelIbc,proto3" json:"channel_ibc,omitempty"` -} - -func (x *BridgeToken) Reset() { - *x = BridgeToken{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BridgeToken) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BridgeToken) ProtoMessage() {} - -// Deprecated: Use BridgeToken.ProtoReflect.Descriptor instead. -func (*BridgeToken) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{13} -} - -func (x *BridgeToken) GetToken() string { - if x != nil { - return x.Token - } - return "" -} - -func (x *BridgeToken) GetDenom() string { - if x != nil { - return x.Denom - } - return "" -} - -func (x *BridgeToken) GetChannelIbc() string { - if x != nil { - return x.ChannelIbc - } - return "" -} - -// Deprecated: Do not use. -type BatchFees struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TokenContract string `protobuf:"bytes,1,opt,name=token_contract,json=tokenContract,proto3" json:"token_contract,omitempty"` - TotalFees string `protobuf:"bytes,2,opt,name=total_fees,json=totalFees,proto3" json:"total_fees,omitempty"` - TotalTxs uint64 `protobuf:"varint,3,opt,name=total_txs,json=totalTxs,proto3" json:"total_txs,omitempty"` - TotalAmount string `protobuf:"bytes,4,opt,name=total_amount,json=totalAmount,proto3" json:"total_amount,omitempty"` -} - -func (x *BatchFees) Reset() { - *x = BatchFees{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BatchFees) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BatchFees) ProtoMessage() {} - -// Deprecated: Use BatchFees.ProtoReflect.Descriptor instead. -func (*BatchFees) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{14} -} - -func (x *BatchFees) GetTokenContract() string { - if x != nil { - return x.TokenContract - } - return "" -} - -func (x *BatchFees) GetTotalFees() string { - if x != nil { - return x.TotalFees - } - return "" -} - -func (x *BatchFees) GetTotalTxs() uint64 { - if x != nil { - return x.TotalTxs - } - return 0 -} - -func (x *BatchFees) GetTotalAmount() string { - if x != nil { - return x.TotalAmount - } - return "" -} - -// Deprecated: Do not use. -type MinBatchFee struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TokenContract string `protobuf:"bytes,1,opt,name=token_contract,json=tokenContract,proto3" json:"token_contract,omitempty"` - BaseFee string `protobuf:"bytes,2,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"` -} - -func (x *MinBatchFee) Reset() { - *x = MinBatchFee{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MinBatchFee) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MinBatchFee) ProtoMessage() {} - -// Deprecated: Use MinBatchFee.ProtoReflect.Descriptor instead. -func (*MinBatchFee) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{15} -} - -func (x *MinBatchFee) GetTokenContract() string { - if x != nil { - return x.TokenContract - } - return "" -} - -func (x *MinBatchFee) GetBaseFee() string { - if x != nil { - return x.BaseFee - } - return "" -} - -// Deprecated: Do not use. -type QueryBatchFeeRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ChainName string `protobuf:"bytes,1,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` - MinBatchFees []*MinBatchFee `protobuf:"bytes,2,rep,name=min_batch_fees,json=minBatchFees,proto3" json:"min_batch_fees,omitempty"` -} - -func (x *QueryBatchFeeRequest) Reset() { - *x = QueryBatchFeeRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryBatchFeeRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryBatchFeeRequest) ProtoMessage() {} - -// Deprecated: Use QueryBatchFeeRequest.ProtoReflect.Descriptor instead. -func (*QueryBatchFeeRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{16} -} - -func (x *QueryBatchFeeRequest) GetChainName() string { - if x != nil { - return x.ChainName - } - return "" -} - -func (x *QueryBatchFeeRequest) GetMinBatchFees() []*MinBatchFee { - if x != nil { - return x.MinBatchFees - } - return nil -} - -// Deprecated: Do not use. -type QueryBatchFeeResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - BatchFees []*BatchFees `protobuf:"bytes,1,rep,name=batch_fees,json=batchFees,proto3" json:"batch_fees,omitempty"` -} - -func (x *QueryBatchFeeResponse) Reset() { - *x = QueryBatchFeeResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryBatchFeeResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryBatchFeeResponse) ProtoMessage() {} - -// Deprecated: Use QueryBatchFeeResponse.ProtoReflect.Descriptor instead. -func (*QueryBatchFeeResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP(), []int{17} -} - -func (x *QueryBatchFeeResponse) GetBatchFees() []*BatchFees { - if x != nil { - return x.BatchFees - } - return nil -} - -var File_fx_gravity_crosschain_v1_legacy_proto protoreflect.FileDescriptor - -var file_fx_gravity_crosschain_v1_legacy_proto_rawDesc = []byte{ - 0x0a, 0x25, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x18, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x1a, 0x24, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6d, 0x73, 0x67, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x73, 0x67, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbd, 0x01, 0x0a, 0x1c, 0x49, 0x6e, 0x69, 0x74, 0x43, 0x72, 0x6f, - 0x73, 0x73, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x50, 0x72, 0x6f, - 0x70, 0x6f, 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x38, 0x0a, - 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, - 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, - 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x0c, 0x88, 0xa0, 0x1f, 0x00, 0x98, 0xa0, 0x1f, 0x00, - 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x9b, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, - 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x70, 0x6f, - 0x73, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x0c, 0x88, 0xa0, 0x1f, 0x00, 0x98, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, - 0x1f, 0x00, 0x22, 0xae, 0x02, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x4f, 0x72, 0x63, - 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x39, 0x0a, 0x07, 0x64, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x07, 0x64, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x3c, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, - 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x24, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, - 0x4f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x22, 0xcc, 0x01, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x4f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, - 0xde, 0x1f, 0x00, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x36, 0x82, 0xe7, 0xb0, 0x2a, - 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, - 0xe7, 0xb0, 0x2a, 0x1e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, - 0x73, 0x67, 0x41, 0x64, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x44, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x22, 0x85, 0x02, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, - 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x64, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, - 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, - 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3e, 0x0a, - 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, - 0x1f, 0x00, 0x52, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x46, 0x65, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x2c, 0x82, 0xe7, - 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1c, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, - 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x22, 0x3c, 0x0a, 0x19, 0x4d, 0x73, - 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x63, 0x68, - 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, - 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0xab, 0x01, 0x0a, 0x17, 0x4d, 0x73, 0x67, - 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x72, - 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, - 0x6d, 0x65, 0x3a, 0x32, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, - 0xe7, 0xb0, 0x2a, 0x22, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, - 0x73, 0x67, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x22, 0xc1, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x4c, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x69, - 0x6d, 0x75, 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, - 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, - 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x69, - 0x6d, 0x75, 0x6d, 0x46, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x65, 0x65, - 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, - 0x65, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, - 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, - 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x3a, 0x2a, - 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1a, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x22, 0x3a, 0x0a, 0x17, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6e, - 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, - 0x68, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0xee, 0x01, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x49, 0x6e, - 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x46, 0x65, 0x65, 0x12, - 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, - 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x45, 0x0a, - 0x0e, 0x61, 0x64, 0x64, 0x5f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, - 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, - 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x0c, 0x61, 0x64, 0x64, 0x42, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x46, 0x65, 0x65, 0x3a, 0x31, 0x18, 0x01, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x42, 0x72, - 0x69, 0x64, 0x67, 0x65, 0x46, 0x65, 0x65, 0x22, 0x21, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x4f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x1d, 0x0a, 0x17, 0x4d, 0x73, - 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x22, 0x0a, 0x1c, 0x4d, 0x73, 0x67, - 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x5e, 0x0a, - 0x0b, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x62, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, - 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x62, 0x63, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xef, 0x01, - 0x0a, 0x09, 0x42, 0x61, 0x74, 0x63, 0x68, 0x46, 0x65, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x74, - 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x12, 0x4a, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, - 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x49, 0x6e, 0x74, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x73, 0x12, 0x1b, - 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x78, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x08, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x78, 0x73, 0x12, 0x4e, 0x0a, 0x0c, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, - 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0b, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x02, 0x18, 0x01, 0x22, - 0x80, 0x01, 0x0a, 0x0b, 0x4d, 0x69, 0x6e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x46, 0x65, 0x65, 0x12, - 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x46, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, - 0x65, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, - 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, - 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x3a, 0x02, - 0x18, 0x01, 0x22, 0x8c, 0x01, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x0e, 0x6d, 0x69, - 0x6e, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x69, - 0x6e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x46, 0x65, 0x65, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, - 0x0c, 0x6d, 0x69, 0x6e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x46, 0x65, 0x65, 0x73, 0x3a, 0x02, 0x18, - 0x01, 0x22, 0x5f, 0x0a, 0x15, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x46, - 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0a, 0x62, 0x61, - 0x74, 0x63, 0x68, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x46, - 0x65, 0x65, 0x73, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x46, 0x65, 0x65, 0x73, 0x3a, 0x02, - 0x18, 0x01, 0x42, 0xe6, 0x01, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, - 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x50, 0x01, 0x5a, 0x36, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, - 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, 0x47, 0x43, - 0xaa, 0x02, 0x18, 0x46, 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x43, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x18, 0x46, 0x78, - 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x24, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5c, 0x56, - 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1b, - 0x46, 0x78, 0x3a, 0x3a, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x43, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, -} - -var ( - file_fx_gravity_crosschain_v1_legacy_proto_rawDescOnce sync.Once - file_fx_gravity_crosschain_v1_legacy_proto_rawDescData = file_fx_gravity_crosschain_v1_legacy_proto_rawDesc -) - -func file_fx_gravity_crosschain_v1_legacy_proto_rawDescGZIP() []byte { - file_fx_gravity_crosschain_v1_legacy_proto_rawDescOnce.Do(func() { - file_fx_gravity_crosschain_v1_legacy_proto_rawDescData = protoimpl.X.CompressGZIP(file_fx_gravity_crosschain_v1_legacy_proto_rawDescData) - }) - return file_fx_gravity_crosschain_v1_legacy_proto_rawDescData -} - -var file_fx_gravity_crosschain_v1_legacy_proto_msgTypes = make([]protoimpl.MessageInfo, 18) -var file_fx_gravity_crosschain_v1_legacy_proto_goTypes = []interface{}{ - (*InitCrossChainParamsProposal)(nil), // 0: fx.gravity.crosschain.v1.InitCrossChainParamsProposal - (*UpdateChainOraclesProposal)(nil), // 1: fx.gravity.crosschain.v1.UpdateChainOraclesProposal - (*MsgSetOrchestratorAddress)(nil), // 2: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress - (*MsgAddOracleDeposit)(nil), // 3: fx.gravity.crosschain.v1.MsgAddOracleDeposit - (*MsgSendToExternal)(nil), // 4: fx.gravity.crosschain.v1.MsgSendToExternal - (*MsgSendToExternalResponse)(nil), // 5: fx.gravity.crosschain.v1.MsgSendToExternalResponse - (*MsgCancelSendToExternal)(nil), // 6: fx.gravity.crosschain.v1.MsgCancelSendToExternal - (*MsgRequestBatch)(nil), // 7: fx.gravity.crosschain.v1.MsgRequestBatch - (*MsgRequestBatchResponse)(nil), // 8: fx.gravity.crosschain.v1.MsgRequestBatchResponse - (*MsgIncreaseBridgeFee)(nil), // 9: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee - (*MsgOracleSetConfirmResponse)(nil), // 10: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse - (*MsgConfirmBatchResponse)(nil), // 11: fx.gravity.crosschain.v1.MsgConfirmBatchResponse - (*MsgBridgeCallConfirmResponse)(nil), // 12: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse - (*BridgeToken)(nil), // 13: fx.gravity.crosschain.v1.BridgeToken - (*BatchFees)(nil), // 14: fx.gravity.crosschain.v1.BatchFees - (*MinBatchFee)(nil), // 15: fx.gravity.crosschain.v1.MinBatchFee - (*QueryBatchFeeRequest)(nil), // 16: fx.gravity.crosschain.v1.QueryBatchFeeRequest - (*QueryBatchFeeResponse)(nil), // 17: fx.gravity.crosschain.v1.QueryBatchFeeResponse - (*Params)(nil), // 18: fx.gravity.crosschain.v1.Params - (*v1beta1.Coin)(nil), // 19: cosmos.base.v1beta1.Coin -} -var file_fx_gravity_crosschain_v1_legacy_proto_depIdxs = []int32{ - 18, // 0: fx.gravity.crosschain.v1.InitCrossChainParamsProposal.params:type_name -> fx.gravity.crosschain.v1.Params - 19, // 1: fx.gravity.crosschain.v1.MsgSetOrchestratorAddress.deposit:type_name -> cosmos.base.v1beta1.Coin - 19, // 2: fx.gravity.crosschain.v1.MsgAddOracleDeposit.amount:type_name -> cosmos.base.v1beta1.Coin - 19, // 3: fx.gravity.crosschain.v1.MsgSendToExternal.amount:type_name -> cosmos.base.v1beta1.Coin - 19, // 4: fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee:type_name -> cosmos.base.v1beta1.Coin - 19, // 5: fx.gravity.crosschain.v1.MsgIncreaseBridgeFee.add_bridge_fee:type_name -> cosmos.base.v1beta1.Coin - 15, // 6: fx.gravity.crosschain.v1.QueryBatchFeeRequest.min_batch_fees:type_name -> fx.gravity.crosschain.v1.MinBatchFee - 14, // 7: fx.gravity.crosschain.v1.QueryBatchFeeResponse.batch_fees:type_name -> fx.gravity.crosschain.v1.BatchFees - 8, // [8:8] is the sub-list for method output_type - 8, // [8:8] is the sub-list for method input_type - 8, // [8:8] is the sub-list for extension type_name - 8, // [8:8] is the sub-list for extension extendee - 0, // [0:8] is the sub-list for field type_name -} - -func init() { file_fx_gravity_crosschain_v1_legacy_proto_init() } -func file_fx_gravity_crosschain_v1_legacy_proto_init() { - if File_fx_gravity_crosschain_v1_legacy_proto != nil { - return - } - file_fx_gravity_crosschain_v1_types_proto_init() - if !protoimpl.UnsafeEnabled { - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InitCrossChainParamsProposal); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateChainOraclesProposal); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSetOrchestratorAddress); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgAddOracleDeposit); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSendToExternal); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSendToExternalResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgCancelSendToExternal); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgRequestBatch); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgRequestBatchResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgIncreaseBridgeFee); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgOracleSetConfirmResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgConfirmBatchResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgBridgeCallConfirmResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BridgeToken); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchFees); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MinBatchFee); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBatchFeeRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_crosschain_v1_legacy_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBatchFeeResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_fx_gravity_crosschain_v1_legacy_proto_rawDesc, - NumEnums: 0, - NumMessages: 18, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_fx_gravity_crosschain_v1_legacy_proto_goTypes, - DependencyIndexes: file_fx_gravity_crosschain_v1_legacy_proto_depIdxs, - MessageInfos: file_fx_gravity_crosschain_v1_legacy_proto_msgTypes, - }.Build() - File_fx_gravity_crosschain_v1_legacy_proto = out.File - file_fx_gravity_crosschain_v1_legacy_proto_rawDesc = nil - file_fx_gravity_crosschain_v1_legacy_proto_goTypes = nil - file_fx_gravity_crosschain_v1_legacy_proto_depIdxs = nil -} diff --git a/api/fx/gravity/crosschain/v1/query.pulsar.go b/api/fx/gravity/crosschain/v1/query.pulsar.go index 9fefcbe6..02ebe1a9 100644 --- a/api/fx/gravity/crosschain/v1/query.pulsar.go +++ b/api/fx/gravity/crosschain/v1/query.pulsar.go @@ -21420,6 +21420,490 @@ func (x *fastReflection_QueryBridgeTokensResponse) ProtoMethods() *protoiface.Me } } +var ( + md_BridgeToken protoreflect.MessageDescriptor + fd_BridgeToken_token protoreflect.FieldDescriptor + fd_BridgeToken_denom protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_query_proto_init() + md_BridgeToken = File_fx_gravity_crosschain_v1_query_proto.Messages().ByName("BridgeToken") + fd_BridgeToken_token = md_BridgeToken.Fields().ByName("token") + fd_BridgeToken_denom = md_BridgeToken.Fields().ByName("denom") +} + +var _ protoreflect.Message = (*fastReflection_BridgeToken)(nil) + +type fastReflection_BridgeToken BridgeToken + +func (x *BridgeToken) ProtoReflect() protoreflect.Message { + return (*fastReflection_BridgeToken)(x) +} + +func (x *BridgeToken) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[46] + 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_BridgeToken_messageType fastReflection_BridgeToken_messageType +var _ protoreflect.MessageType = fastReflection_BridgeToken_messageType{} + +type fastReflection_BridgeToken_messageType struct{} + +func (x fastReflection_BridgeToken_messageType) Zero() protoreflect.Message { + return (*fastReflection_BridgeToken)(nil) +} +func (x fastReflection_BridgeToken_messageType) New() protoreflect.Message { + return new(fastReflection_BridgeToken) +} +func (x fastReflection_BridgeToken_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_BridgeToken +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_BridgeToken) Descriptor() protoreflect.MessageDescriptor { + return md_BridgeToken +} + +// 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_BridgeToken) Type() protoreflect.MessageType { + return _fastReflection_BridgeToken_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_BridgeToken) New() protoreflect.Message { + return new(fastReflection_BridgeToken) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_BridgeToken) Interface() protoreflect.ProtoMessage { + return (*BridgeToken)(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_BridgeToken) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Token != "" { + value := protoreflect.ValueOfString(x.Token) + if !f(fd_BridgeToken_token, value) { + return + } + } + if x.Denom != "" { + value := protoreflect.ValueOfString(x.Denom) + if !f(fd_BridgeToken_denom, 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_BridgeToken) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.BridgeToken.token": + return x.Token != "" + case "fx.gravity.crosschain.v1.BridgeToken.denom": + return x.Denom != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.BridgeToken.token": + x.Token = "" + case "fx.gravity.crosschain.v1.BridgeToken.denom": + x.Denom = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.BridgeToken.token": + value := x.Token + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.BridgeToken.denom": + value := x.Denom + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.BridgeToken.token": + x.Token = value.Interface().(string) + case "fx.gravity.crosschain.v1.BridgeToken.denom": + x.Denom = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.BridgeToken.token": + panic(fmt.Errorf("field token of message fx.gravity.crosschain.v1.BridgeToken is not mutable")) + case "fx.gravity.crosschain.v1.BridgeToken.denom": + panic(fmt.Errorf("field denom of message fx.gravity.crosschain.v1.BridgeToken is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.BridgeToken.token": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.BridgeToken.denom": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.BridgeToken")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.BridgeToken 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_BridgeToken) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.BridgeToken", 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_BridgeToken) 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_BridgeToken) 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_BridgeToken) 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_BridgeToken) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*BridgeToken) + 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.Token) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Denom) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*BridgeToken) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.Denom) > 0 { + i -= len(x.Denom) + copy(dAtA[i:], x.Denom) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Denom))) + i-- + dAtA[i] = 0x12 + } + if len(x.Token) > 0 { + i -= len(x.Token) + copy(dAtA[i:], x.Token) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Token))) + 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().(*BridgeToken) + 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: BridgeToken: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: BridgeToken: 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 Token", 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.Token = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Denom", 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.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + var ( md_QueryBridgeCoinByDenomRequest protoreflect.MessageDescriptor fd_QueryBridgeCoinByDenomRequest_chain_name protoreflect.FieldDescriptor @@ -21442,7 +21926,7 @@ func (x *QueryBridgeCoinByDenomRequest) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeCoinByDenomRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[46] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -21924,7 +22408,7 @@ func (x *QueryBridgeCoinByDenomResponse) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeCoinByDenomResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[47] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22357,7 +22841,7 @@ func (x *QueryBridgeChainListRequest) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeChainListRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[48] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -22761,7 +23245,7 @@ func (x *QueryBridgeChainListResponse) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeChainListResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[49] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23197,7 +23681,7 @@ func (x *QueryBridgeCallsRequest) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeCallsRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[50] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -23747,7 +24231,7 @@ func (x *QueryBridgeCallsResponse) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeCallsResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[51] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24269,7 +24753,7 @@ func (x *QueryBridgeCallByNonceRequest) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeCallByNonceRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[52] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -24735,7 +25219,7 @@ func (x *QueryBridgeCallByNonceResponse) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeCallByNonceResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[53] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25172,7 +25656,7 @@ func (x *QueryBridgeCallBySenderRequest) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeCallBySenderRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[54] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -25705,7 +26189,7 @@ func (x *QueryBridgeCallBySenderResponse) ProtoReflect() protoreflect.Message { } func (x *QueryBridgeCallBySenderResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[55] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26150,7 +26634,7 @@ func (x *QueryBridgeCallConfirmByNonceRequest) ProtoReflect() protoreflect.Messa } func (x *QueryBridgeCallConfirmByNonceRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[56] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -26669,7 +27153,7 @@ func (x *QueryBridgeCallConfirmByNonceResponse) ProtoReflect() protoreflect.Mess } func (x *QueryBridgeCallConfirmByNonceResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[57] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27166,7 +27650,7 @@ func (x *QueryLastPendingBridgeCallByAddrRequest) ProtoReflect() protoreflect.Me } func (x *QueryLastPendingBridgeCallByAddrRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[58] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -27699,7 +28183,7 @@ func (x *QueryLastPendingBridgeCallByAddrResponse) ProtoReflect() protoreflect.M } func (x *QueryLastPendingBridgeCallByAddrResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[59] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28144,7 +28628,7 @@ func (x *QueryPendingExecuteClaimRequest) ProtoReflect() protoreflect.Message { } func (x *QueryPendingExecuteClaimRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[60] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -28694,7 +29178,7 @@ func (x *QueryPendingExecuteClaimResponse) ProtoReflect() protoreflect.Message { } func (x *QueryPendingExecuteClaimResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[61] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29216,7 +29700,7 @@ func (x *QueryBridgeCallQuoteByNonceRequest) ProtoReflect() protoreflect.Message } func (x *QueryBridgeCallQuoteByNonceRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[62] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -29682,7 +30166,7 @@ func (x *QueryBridgeCallQuoteByNonceResponse) ProtoReflect() protoreflect.Messag } func (x *QueryBridgeCallQuoteByNonceResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[63] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30121,7 +30605,7 @@ func (x *QueryBridgeCallsByFeeReceiverRequest) ProtoReflect() protoreflect.Messa } func (x *QueryBridgeCallsByFeeReceiverRequest) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[64] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30733,7 +31217,7 @@ func (x *QueryBridgeCallsByFeeReceiverResponse) ProtoReflect() protoreflect.Mess } func (x *QueryBridgeCallsByFeeReceiverResponse) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[65] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -33041,6 +33525,49 @@ func (x *QueryBridgeTokensResponse) GetBridgeTokens() []*BridgeToken { return nil } +type BridgeToken struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` + Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` +} + +func (x *BridgeToken) Reset() { + *x = BridgeToken{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BridgeToken) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BridgeToken) ProtoMessage() {} + +// Deprecated: Use BridgeToken.ProtoReflect.Descriptor instead. +func (*BridgeToken) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{46} +} + +func (x *BridgeToken) GetToken() string { + if x != nil { + return x.Token + } + return "" +} + +func (x *BridgeToken) GetDenom() string { + if x != nil { + return x.Denom + } + return "" +} + type QueryBridgeCoinByDenomRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -33053,7 +33580,7 @@ type QueryBridgeCoinByDenomRequest struct { func (x *QueryBridgeCoinByDenomRequest) Reset() { *x = QueryBridgeCoinByDenomRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[46] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33067,7 +33594,7 @@ func (*QueryBridgeCoinByDenomRequest) ProtoMessage() {} // Deprecated: Use QueryBridgeCoinByDenomRequest.ProtoReflect.Descriptor instead. func (*QueryBridgeCoinByDenomRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{46} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{47} } func (x *QueryBridgeCoinByDenomRequest) GetChainName() string { @@ -33095,7 +33622,7 @@ type QueryBridgeCoinByDenomResponse struct { func (x *QueryBridgeCoinByDenomResponse) Reset() { *x = QueryBridgeCoinByDenomResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[47] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33109,7 +33636,7 @@ func (*QueryBridgeCoinByDenomResponse) ProtoMessage() {} // Deprecated: Use QueryBridgeCoinByDenomResponse.ProtoReflect.Descriptor instead. func (*QueryBridgeCoinByDenomResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{47} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{48} } func (x *QueryBridgeCoinByDenomResponse) GetCoin() *v1beta1.Coin { @@ -33128,7 +33655,7 @@ type QueryBridgeChainListRequest struct { func (x *QueryBridgeChainListRequest) Reset() { *x = QueryBridgeChainListRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[48] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33142,7 +33669,7 @@ func (*QueryBridgeChainListRequest) ProtoMessage() {} // Deprecated: Use QueryBridgeChainListRequest.ProtoReflect.Descriptor instead. func (*QueryBridgeChainListRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{48} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{49} } type QueryBridgeChainListResponse struct { @@ -33156,7 +33683,7 @@ type QueryBridgeChainListResponse struct { func (x *QueryBridgeChainListResponse) Reset() { *x = QueryBridgeChainListResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[49] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33170,7 +33697,7 @@ func (*QueryBridgeChainListResponse) ProtoMessage() {} // Deprecated: Use QueryBridgeChainListResponse.ProtoReflect.Descriptor instead. func (*QueryBridgeChainListResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{49} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{50} } func (x *QueryBridgeChainListResponse) GetChainNames() []string { @@ -33192,7 +33719,7 @@ type QueryBridgeCallsRequest struct { func (x *QueryBridgeCallsRequest) Reset() { *x = QueryBridgeCallsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[50] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33206,7 +33733,7 @@ func (*QueryBridgeCallsRequest) ProtoMessage() {} // Deprecated: Use QueryBridgeCallsRequest.ProtoReflect.Descriptor instead. func (*QueryBridgeCallsRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{50} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{51} } func (x *QueryBridgeCallsRequest) GetChainName() string { @@ -33235,7 +33762,7 @@ type QueryBridgeCallsResponse struct { func (x *QueryBridgeCallsResponse) Reset() { *x = QueryBridgeCallsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[51] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33249,7 +33776,7 @@ func (*QueryBridgeCallsResponse) ProtoMessage() {} // Deprecated: Use QueryBridgeCallsResponse.ProtoReflect.Descriptor instead. func (*QueryBridgeCallsResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{51} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{52} } func (x *QueryBridgeCallsResponse) GetBridgeCalls() []*OutgoingBridgeCall { @@ -33278,7 +33805,7 @@ type QueryBridgeCallByNonceRequest struct { func (x *QueryBridgeCallByNonceRequest) Reset() { *x = QueryBridgeCallByNonceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[52] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33292,7 +33819,7 @@ func (*QueryBridgeCallByNonceRequest) ProtoMessage() {} // Deprecated: Use QueryBridgeCallByNonceRequest.ProtoReflect.Descriptor instead. func (*QueryBridgeCallByNonceRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{52} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{53} } func (x *QueryBridgeCallByNonceRequest) GetChainName() string { @@ -33320,7 +33847,7 @@ type QueryBridgeCallByNonceResponse struct { func (x *QueryBridgeCallByNonceResponse) Reset() { *x = QueryBridgeCallByNonceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[53] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33334,7 +33861,7 @@ func (*QueryBridgeCallByNonceResponse) ProtoMessage() {} // Deprecated: Use QueryBridgeCallByNonceResponse.ProtoReflect.Descriptor instead. func (*QueryBridgeCallByNonceResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{53} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{54} } func (x *QueryBridgeCallByNonceResponse) GetBridgeCall() *OutgoingBridgeCall { @@ -33356,7 +33883,7 @@ type QueryBridgeCallBySenderRequest struct { func (x *QueryBridgeCallBySenderRequest) Reset() { *x = QueryBridgeCallBySenderRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[54] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33370,7 +33897,7 @@ func (*QueryBridgeCallBySenderRequest) ProtoMessage() {} // Deprecated: Use QueryBridgeCallBySenderRequest.ProtoReflect.Descriptor instead. func (*QueryBridgeCallBySenderRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{54} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{55} } func (x *QueryBridgeCallBySenderRequest) GetChainName() string { @@ -33398,7 +33925,7 @@ type QueryBridgeCallBySenderResponse struct { func (x *QueryBridgeCallBySenderResponse) Reset() { *x = QueryBridgeCallBySenderResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[55] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33412,7 +33939,7 @@ func (*QueryBridgeCallBySenderResponse) ProtoMessage() {} // Deprecated: Use QueryBridgeCallBySenderResponse.ProtoReflect.Descriptor instead. func (*QueryBridgeCallBySenderResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{55} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{56} } func (x *QueryBridgeCallBySenderResponse) GetBridgeCalls() []*OutgoingBridgeCall { @@ -33434,7 +33961,7 @@ type QueryBridgeCallConfirmByNonceRequest struct { func (x *QueryBridgeCallConfirmByNonceRequest) Reset() { *x = QueryBridgeCallConfirmByNonceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[56] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33448,7 +33975,7 @@ func (*QueryBridgeCallConfirmByNonceRequest) ProtoMessage() {} // Deprecated: Use QueryBridgeCallConfirmByNonceRequest.ProtoReflect.Descriptor instead. func (*QueryBridgeCallConfirmByNonceRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{56} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{57} } func (x *QueryBridgeCallConfirmByNonceRequest) GetChainName() string { @@ -33477,7 +34004,7 @@ type QueryBridgeCallConfirmByNonceResponse struct { func (x *QueryBridgeCallConfirmByNonceResponse) Reset() { *x = QueryBridgeCallConfirmByNonceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[57] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33491,7 +34018,7 @@ func (*QueryBridgeCallConfirmByNonceResponse) ProtoMessage() {} // Deprecated: Use QueryBridgeCallConfirmByNonceResponse.ProtoReflect.Descriptor instead. func (*QueryBridgeCallConfirmByNonceResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{57} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{58} } func (x *QueryBridgeCallConfirmByNonceResponse) GetConfirms() []*MsgBridgeCallConfirm { @@ -33520,7 +34047,7 @@ type QueryLastPendingBridgeCallByAddrRequest struct { func (x *QueryLastPendingBridgeCallByAddrRequest) Reset() { *x = QueryLastPendingBridgeCallByAddrRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[58] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33534,7 +34061,7 @@ func (*QueryLastPendingBridgeCallByAddrRequest) ProtoMessage() {} // Deprecated: Use QueryLastPendingBridgeCallByAddrRequest.ProtoReflect.Descriptor instead. func (*QueryLastPendingBridgeCallByAddrRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{58} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{59} } func (x *QueryLastPendingBridgeCallByAddrRequest) GetChainName() string { @@ -33562,7 +34089,7 @@ type QueryLastPendingBridgeCallByAddrResponse struct { func (x *QueryLastPendingBridgeCallByAddrResponse) Reset() { *x = QueryLastPendingBridgeCallByAddrResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[59] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33576,7 +34103,7 @@ func (*QueryLastPendingBridgeCallByAddrResponse) ProtoMessage() {} // Deprecated: Use QueryLastPendingBridgeCallByAddrResponse.ProtoReflect.Descriptor instead. func (*QueryLastPendingBridgeCallByAddrResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{59} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{60} } func (x *QueryLastPendingBridgeCallByAddrResponse) GetBridgeCalls() []*OutgoingBridgeCall { @@ -33598,7 +34125,7 @@ type QueryPendingExecuteClaimRequest struct { func (x *QueryPendingExecuteClaimRequest) Reset() { *x = QueryPendingExecuteClaimRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[60] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33612,7 +34139,7 @@ func (*QueryPendingExecuteClaimRequest) ProtoMessage() {} // Deprecated: Use QueryPendingExecuteClaimRequest.ProtoReflect.Descriptor instead. func (*QueryPendingExecuteClaimRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{60} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{61} } func (x *QueryPendingExecuteClaimRequest) GetChainName() string { @@ -33641,7 +34168,7 @@ type QueryPendingExecuteClaimResponse struct { func (x *QueryPendingExecuteClaimResponse) Reset() { *x = QueryPendingExecuteClaimResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[61] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33655,7 +34182,7 @@ func (*QueryPendingExecuteClaimResponse) ProtoMessage() {} // Deprecated: Use QueryPendingExecuteClaimResponse.ProtoReflect.Descriptor instead. func (*QueryPendingExecuteClaimResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{61} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{62} } func (x *QueryPendingExecuteClaimResponse) GetClaims() []*anypb.Any { @@ -33684,7 +34211,7 @@ type QueryBridgeCallQuoteByNonceRequest struct { func (x *QueryBridgeCallQuoteByNonceRequest) Reset() { *x = QueryBridgeCallQuoteByNonceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[62] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33698,7 +34225,7 @@ func (*QueryBridgeCallQuoteByNonceRequest) ProtoMessage() {} // Deprecated: Use QueryBridgeCallQuoteByNonceRequest.ProtoReflect.Descriptor instead. func (*QueryBridgeCallQuoteByNonceRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{62} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{63} } func (x *QueryBridgeCallQuoteByNonceRequest) GetChainName() string { @@ -33726,7 +34253,7 @@ type QueryBridgeCallQuoteByNonceResponse struct { func (x *QueryBridgeCallQuoteByNonceResponse) Reset() { *x = QueryBridgeCallQuoteByNonceResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[63] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33740,7 +34267,7 @@ func (*QueryBridgeCallQuoteByNonceResponse) ProtoMessage() {} // Deprecated: Use QueryBridgeCallQuoteByNonceResponse.ProtoReflect.Descriptor instead. func (*QueryBridgeCallQuoteByNonceResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{63} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{64} } func (x *QueryBridgeCallQuoteByNonceResponse) GetQuote() *QuoteInfo { @@ -33763,7 +34290,7 @@ type QueryBridgeCallsByFeeReceiverRequest struct { func (x *QueryBridgeCallsByFeeReceiverRequest) Reset() { *x = QueryBridgeCallsByFeeReceiverRequest{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[64] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33777,7 +34304,7 @@ func (*QueryBridgeCallsByFeeReceiverRequest) ProtoMessage() {} // Deprecated: Use QueryBridgeCallsByFeeReceiverRequest.ProtoReflect.Descriptor instead. func (*QueryBridgeCallsByFeeReceiverRequest) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{64} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{65} } func (x *QueryBridgeCallsByFeeReceiverRequest) GetChainName() string { @@ -33813,7 +34340,7 @@ type QueryBridgeCallsByFeeReceiverResponse struct { func (x *QueryBridgeCallsByFeeReceiverResponse) Reset() { *x = QueryBridgeCallsByFeeReceiverResponse{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[65] + mi := &file_fx_gravity_crosschain_v1_query_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -33827,7 +34354,7 @@ func (*QueryBridgeCallsByFeeReceiverResponse) ProtoMessage() {} // Deprecated: Use QueryBridgeCallsByFeeReceiverResponse.ProtoReflect.Descriptor instead. func (*QueryBridgeCallsByFeeReceiverResponse) Descriptor() ([]byte, []int) { - return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{65} + return file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP(), []int{66} } func (x *QueryBridgeCallsByFeeReceiverResponse) GetBridgeCalls() []*OutgoingBridgeCall { @@ -33862,841 +34389,842 @@ var file_fx_gravity_crosschain_v1_query_proto_rawDesc = []byte{ 0x31, 0x2f, 0x74, 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x1a, 0x25, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x33, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x55, 0x0a, 0x13, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x22, 0x3d, 0x0a, 0x1c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, - 0x65, 0x22, 0x63, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0a, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x09, 0x6f, 0x72, 0x61, - 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x22, 0x53, 0x0a, 0x1c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x63, 0x0a, 0x1d, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0a, - 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, - 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x09, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, - 0x22, 0x7c, 0x0a, 0x1c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, + 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0x33, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x55, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x06, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x66, 0x78, + 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x04, 0xc8, + 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x3d, 0x0a, 0x1c, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x63, 0x0a, 0x1d, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, + 0x53, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0a, 0x6f, + 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x53, 0x65, 0x74, 0x52, 0x09, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x22, + 0x53, 0x0a, 0x1c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, + 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x63, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0a, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, + 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x09, + 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x22, 0x7c, 0x0a, 0x1c, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x68, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, + 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x22, 0x5b, 0x0a, 0x24, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, + 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, 0x79, 0x4e, 0x6f, 0x6e, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x72, + 0x0a, 0x25, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, + 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x73, 0x22, 0x42, 0x0a, 0x21, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, + 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x6a, 0x0a, 0x22, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, + 0x61, 0x73, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, + 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x0a, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, + 0x74, 0x73, 0x22, 0x77, 0x0a, 0x2d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, + 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x76, 0x0a, 0x2e, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, + 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, + 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, + 0x0b, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x0a, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, + 0x65, 0x74, 0x73, 0x22, 0x73, 0x0a, 0x29, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, + 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x68, - 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x47, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x4f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, - 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x22, 0x5b, 0x0a, 0x24, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x73, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x6d, 0x0a, 0x2a, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x62, 0x61, 0x74, 0x63, 0x68, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, + 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, + 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x05, 0x62, 0x61, 0x74, 0x63, 0x68, 0x22, 0x3e, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x65, 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x07, 0x62, 0x61, 0x74, + 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x66, 0x78, 0x2e, + 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x07, 0x62, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, 0x79, + 0x0a, 0x1b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, + 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x5f, 0x0a, 0x1c, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x62, 0x61, 0x74, + 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, + 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x05, 0x62, 0x61, 0x74, 0x63, 0x68, 0x22, 0x9f, 0x01, 0x0a, 0x18, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x27, 0x0a, + 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x60, 0x0a, 0x19, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x07, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x66, 0x78, 0x2e, + 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x22, 0x77, + 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x63, 0x0a, 0x1a, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, + 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x22, 0x6a, 0x0a, 0x20, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, + 0x6e, 0x63, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, - 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x72, 0x0a, 0x25, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, - 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, - 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x4f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, - 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x22, 0x42, 0x0a, 0x21, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, + 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x44, 0x0a, 0x21, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x42, + 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, + 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x4f, + 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x54, 0x6f, 0x44, 0x65, + 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, + 0x31, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x54, 0x6f, 0x44, + 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, + 0x6f, 0x6d, 0x22, 0x4f, 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, + 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x6a, 0x0a, - 0x22, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, - 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, - 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x0a, 0x6f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x73, 0x22, 0x77, 0x0a, 0x2d, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x61, - 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, + 0x6e, 0x6f, 0x6d, 0x22, 0x31, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x44, 0x65, 0x6e, 0x6f, + 0x6d, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x60, 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, + 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x4f, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x38, 0x0a, 0x06, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x52, 0x06, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x22, 0x6c, 0x0a, 0x20, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, + 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x69, 0x0a, 0x1f, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x22, 0x76, 0x0a, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, - 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, - 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, - 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x0a, - 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x73, 0x22, 0x73, 0x0a, 0x29, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, + 0x73, 0x73, 0x22, 0x69, 0x0a, 0x21, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, - 0x6d, 0x0a, 0x2a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, - 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, - 0x05, 0x62, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x66, - 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, - 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x05, 0x62, 0x61, 0x74, 0x63, 0x68, 0x22, 0x3e, - 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, - 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x65, - 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, - 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x43, 0x0a, 0x07, 0x62, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, + 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xe3, 0x01, + 0x0a, 0x22, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x65, + 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x14, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, + 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, + 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, + 0x52, 0x12, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x49, 0x6e, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x65, 0x73, 0x12, 0x5d, 0x0a, 0x13, 0x75, 0x6e, 0x62, 0x61, 0x74, 0x63, 0x68, 0x65, + 0x64, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, - 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x07, 0x62, 0x61, - 0x74, 0x63, 0x68, 0x65, 0x73, 0x22, 0x79, 0x0a, 0x1b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, - 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, - 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x22, 0x5f, 0x0a, 0x1c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, - 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x3f, 0x0a, 0x05, 0x62, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, - 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x05, 0x62, 0x61, 0x74, 0x63, - 0x68, 0x22, 0x9f, 0x01, 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, - 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, - 0x6e, 0x63, 0x65, 0x22, 0x60, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x43, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x07, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x22, 0x77, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x63, - 0x0a, 0x1a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x72, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x08, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x72, 0x6d, 0x73, 0x22, 0x6a, 0x0a, 0x20, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, - 0x44, 0x0a, 0x21, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, - 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x4f, 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x54, 0x6f, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x31, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x54, 0x6f, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0x4f, 0x0a, 0x18, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0x31, 0x0a, 0x19, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x60, 0x0a, - 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x41, 0x64, - 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, - 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, - 0x4f, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x06, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x22, 0x6c, 0x0a, 0x20, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, - 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x69, - 0x0a, 0x1f, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x42, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x69, 0x0a, 0x21, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, - 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x22, 0xe3, 0x01, 0x0a, 0x22, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x14, 0x74, - 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x62, 0x61, 0x74, 0x63, - 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, - 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x52, 0x12, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, - 0x72, 0x73, 0x49, 0x6e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x5d, 0x0a, 0x13, 0x75, - 0x6e, 0x62, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, - 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, - 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, - 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x52, 0x12, 0x75, 0x6e, 0x62, 0x61, 0x74, 0x63, 0x68, 0x65, - 0x64, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x73, 0x22, 0x44, 0x0a, 0x23, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x42, - 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, - 0x22, 0x7d, 0x0a, 0x24, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x62, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, - 0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0c, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, - 0x70, 0x0a, 0x26, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x41, 0x64, - 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, - 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x22, 0x4c, 0x0a, 0x27, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, - 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, - 0x34, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x58, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, - 0x07, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x07, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x22, - 0x48, 0x0a, 0x27, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, - 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, + 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x78, 0x52, + 0x12, 0x75, 0x6e, 0x62, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, + 0x65, 0x72, 0x73, 0x22, 0x44, 0x0a, 0x23, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, + 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x51, 0x0a, 0x28, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, - 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, - 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x39, 0x0a, 0x18, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x67, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0d, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x74, - 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x66, 0x78, - 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x52, 0x0c, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, - 0x22, 0x54, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, - 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x7d, 0x0a, 0x24, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x13, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x70, 0x0a, 0x26, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x4c, 0x0a, 0x27, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x6c, 0x6f, 0x63, + 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x34, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x58, + 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x07, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, + 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, + 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, + 0x07, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x22, 0x48, 0x0a, 0x27, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0x51, 0x0a, 0x28, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, + 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x39, 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0x55, 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x04, 0x63, 0x6f, 0x69, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, - 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x04, 0x63, 0x6f, 0x69, 0x6e, 0x22, 0x1d, 0x0a, - 0x1b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x68, 0x61, 0x69, - 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x3f, 0x0a, 0x1c, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x80, 0x01, - 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, - 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0xb4, 0x01, 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, + 0x22, 0x67, 0x0a, 0x19, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, + 0x0d, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x0c, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x22, 0x39, 0x0a, 0x0b, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x14, + 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, + 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0x54, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0x55, 0x0a, 0x1e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, + 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x04, + 0x63, 0x6f, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x04, 0x63, 0x6f, 0x69, + 0x6e, 0x22, 0x1d, 0x0a, 0x1b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x22, 0x3f, 0x0a, 0x1c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, + 0x68, 0x61, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x22, 0x80, 0x01, 0x0a, 0x17, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x0a, + 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb4, 0x01, 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x4f, 0x0a, 0x0c, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, + 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, + 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, + 0x6c, 0x73, 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x0a, 0x1d, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, + 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, + 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, + 0x65, 0x22, 0x6f, 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, + 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, + 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, + 0x6c, 0x6c, 0x22, 0x66, 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x72, 0x0a, 0x1f, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x53, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0c, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, - 0x6c, 0x52, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x12, 0x47, - 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, - 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, - 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x0a, 0x1d, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x6f, 0x0a, - 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, - 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x4d, 0x0a, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, - 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, - 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, - 0x6c, 0x6c, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x22, 0x66, - 0x0a, 0x1e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, - 0x6c, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x72, 0x0a, 0x1f, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0c, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, - 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x0b, 0x62, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x22, 0x66, 0x0a, 0x24, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, - 0x63, 0x65, 0x22, 0x96, 0x01, 0x0a, 0x25, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, - 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x79, 0x4e, - 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x08, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x08, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x6f, 0x75, - 0x67, 0x68, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, - 0x65, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x22, 0x71, 0x0a, 0x27, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, + 0x6c, 0x52, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x22, 0x66, + 0x0a, 0x24, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, + 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7b, - 0x0a, 0x28, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x41, 0x64, - 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0c, 0x62, 0x72, - 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, - 0x6f, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x0b, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x1f, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x46, - 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, - 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, - 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xac, 0x01, 0x0a, 0x20, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x43, 0x6c, - 0x61, 0x69, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x06, 0x63, - 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, - 0x79, 0x42, 0x11, 0xca, 0xb4, 0x2d, 0x0d, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x43, - 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x06, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x12, 0x47, 0x0a, 0x0a, - 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x59, 0x0a, 0x22, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, - 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x42, 0x79, 0x4e, - 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, - 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x22, 0x60, 0x0a, 0x23, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, - 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x05, 0x71, 0x75, 0x6f, 0x74, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x71, 0x75, 0x6f, - 0x74, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x24, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, - 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x79, 0x46, 0x65, 0x65, 0x52, 0x65, 0x63, 0x65, - 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x65, - 0x65, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x46, 0x0a, - 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc1, 0x01, 0x0a, 0x25, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x79, 0x46, 0x65, 0x65, 0x52, - 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x4f, 0x0a, 0x0c, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, - 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, - 0x61, 0x6c, 0x6c, 0x52, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, + 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, + 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x96, 0x01, 0x0a, 0x25, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x4a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, + 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x65, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0b, 0x65, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x22, + 0x71, 0x0a, 0x27, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x41, + 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x22, 0x7b, 0x0a, 0x28, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, + 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, + 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, + 0x0a, 0x0c, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, + 0x6c, 0x6c, 0x52, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x22, + 0x88, 0x01, 0x0a, 0x1f, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, + 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xac, 0x01, 0x0a, 0x20, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, + 0x74, 0x65, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x3f, 0x0a, 0x06, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x42, 0x11, 0xca, 0xb4, 0x2d, 0x0d, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x06, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, - 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0xf9, 0x2f, 0x0a, 0x05, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x12, 0x87, 0x01, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x2c, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x66, - 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0xb1, 0x01, - 0x0a, 0x10, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, - 0x65, 0x74, 0x12, 0x36, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x66, 0x78, 0x2e, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x59, 0x0a, 0x22, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, + 0x65, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, + 0x6f, 0x6e, 0x63, 0x65, 0x22, 0x60, 0x0a, 0x23, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x42, 0x79, 0x4e, 0x6f, + 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x05, 0x71, + 0x75, 0x6f, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x66, 0x78, - 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x2f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x12, 0xb1, 0x01, 0x0a, 0x10, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x05, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x24, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x79, 0x46, 0x65, 0x65, + 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, + 0x72, 0x12, 0x46, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, + 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc1, 0x01, 0x0a, 0x25, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x79, + 0x46, 0x65, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0c, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, + 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x0b, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, + 0x61, 0x6c, 0x6c, 0x73, 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x32, 0xf9, 0x2f, + 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x87, 0x01, 0x0a, 0x06, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x12, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0xb1, 0x01, 0x0a, 0x10, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x12, 0x36, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, + 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, - 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x2f, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0xb1, 0x01, 0x0a, 0x10, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x36, 0x2e, 0x66, 0x78, 0x2e, + 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x2f, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xb1, 0x01, 0x0a, 0x10, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, + 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, - 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, + 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, - 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0xca, 0x01, 0x0a, 0x18, 0x4f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, - 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x3e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, + 0x74, 0x2f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0xb1, 0x01, 0x0a, 0x10, 0x4f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x36, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, + 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, - 0x25, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, - 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x2f, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x12, 0xc1, 0x01, 0x0a, 0x15, 0x4c, 0x61, 0x73, 0x74, 0x4f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, - 0x12, 0x3b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, - 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, - 0x73, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2d, 0x82, 0xd3, 0xe4, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x5f, 0x73, 0x65, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0xca, 0x01, + 0x0a, 0x18, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x73, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x3e, 0x2e, 0x66, 0x78, 0x2e, + 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, 0x79, 0x4e, 0x6f, + 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x66, 0x78, 0x2e, + 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x42, 0x79, 0x4e, 0x6f, + 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, 0x25, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, - 0x74, 0x2f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0xe1, 0x01, 0x0a, 0x21, 0x4c, - 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, - 0x12, 0x47, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x61, 0x63, - 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, - 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x48, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x12, 0xc1, 0x01, 0x0a, 0x15, 0x4c, + 0x61, 0x73, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x73, 0x12, 0x3b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, + 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x3c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x2d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x27, 0x12, 0x25, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x5f, 0x73, 0x65, 0x74, 0x2f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0xe1, + 0x01, 0x0a, 0x21, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, + 0x41, 0x64, 0x64, 0x72, 0x12, 0x47, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x48, 0x2e, + 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, + 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, + 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, + 0x21, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, + 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x2f, 0x6c, 0x61, + 0x73, 0x74, 0x12, 0xd0, 0x01, 0x0a, 0x1d, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, + 0x41, 0x64, 0x64, 0x72, 0x12, 0x43, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, + 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x44, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, - 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x29, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x2f, 0x66, 0x78, - 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x2f, 0x6c, 0x61, 0x73, 0x74, 0x12, 0xd0, - 0x01, 0x0a, 0x1d, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, - 0x12, 0x43, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x44, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, - 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, - 0x67, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x79, 0x41, - 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x24, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x1e, 0x12, 0x1c, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x2f, 0x6c, 0x61, 0x73, - 0x74, 0x12, 0xbd, 0x01, 0x0a, 0x14, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, - 0x6f, 0x6e, 0x63, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x12, 0x3a, 0x2e, 0x66, 0x78, 0x2e, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x24, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x12, 0x1c, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x74, 0x63, 0x68, + 0x2f, 0x6c, 0x61, 0x73, 0x74, 0x12, 0xbd, 0x01, 0x0a, 0x14, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x12, 0x3a, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, + 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x42, 0x79, 0x41, + 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, + 0x24, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, + 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, + 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0xd6, 0x01, 0x0a, 0x1a, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, + 0x41, 0x64, 0x64, 0x72, 0x12, 0x40, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x66, 0x78, - 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, - 0x65, 0x12, 0xd6, 0x01, 0x0a, 0x1a, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, - 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, - 0x12, 0x40, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x33, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x2d, 0x12, 0x2b, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0xc9, + 0x01, 0x0a, 0x17, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x3d, 0x2e, 0x66, 0x78, 0x2e, + 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, + 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, + 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x62, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x29, 0x12, 0x27, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2f, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0xb4, 0x01, 0x0a, 0x11, 0x4f, + 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, + 0x12, 0x37, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, - 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x6c, 0x6f, 0x63, - 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x33, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2d, 0x12, 0x2b, 0x2f, - 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, - 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2f, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0xc9, 0x01, 0x0a, 0x17, 0x4c, - 0x61, 0x73, 0x74, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, - 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x3d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x62, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, + 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, + 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x66, 0x78, + 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, + 0x61, 0x74, 0x63, 0x68, 0x2f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, + 0x73, 0x12, 0xad, 0x01, 0x0a, 0x0f, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x35, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x64, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x29, 0x12, 0x27, 0x2f, - 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, - 0x2f, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, - 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0xb4, 0x01, 0x0a, 0x11, 0x4f, 0x75, 0x74, 0x67, 0x6f, - 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x37, 0x2e, 0x66, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, - 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, - 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x74, 0x63, 0x68, - 0x2f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x73, 0x12, 0xad, 0x01, - 0x0a, 0x0f, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x12, 0x35, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, - 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, - 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x74, 0x63, - 0x68, 0x2f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x12, 0xa0, 0x01, - 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x32, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x66, + 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, + 0x62, 0x61, 0x74, 0x63, 0x68, 0x2f, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x74, + 0x78, 0x12, 0xa0, 0x01, 0x0a, 0x0c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, - 0x1f, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, - 0x76, 0x31, 0x2f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, - 0x12, 0xa4, 0x01, 0x0a, 0x0d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x73, 0x12, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, - 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, - 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x2f, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x12, 0x98, 0x01, 0x0a, 0x0c, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x54, 0x6f, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, - 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x54, 0x6f, - 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x66, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, + 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x2f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x12, 0xa4, 0x01, 0x0a, 0x0d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x12, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, + 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x66, 0x78, + 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x66, 0x78, 0x2f, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x61, 0x74, + 0x63, 0x68, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x12, 0x98, 0x01, 0x0a, 0x0c, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x54, 0x6f, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x54, 0x6f, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x1f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x66, 0x78, 0x2f, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x6e, - 0x6f, 0x6d, 0x12, 0x98, 0x01, 0x0a, 0x0c, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x54, 0x6f, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, - 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, + 0x65, 0x6e, 0x54, 0x6f, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x54, 0x6f, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, + 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, + 0x2f, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x98, 0x01, 0x0a, 0x0c, 0x44, 0x65, 0x6e, 0x6f, 0x6d, + 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x54, 0x6f, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1f, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x9e, 0x01, - 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, - 0x72, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, - 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x66, - 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, - 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x12, 0xb7, - 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x45, 0x78, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x12, 0x3a, 0x2e, 0x66, 0x78, 0x2e, - 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, - 0x65, 0x42, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, - 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, - 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x12, 0xb4, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, - 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, - 0x64, 0x64, 0x72, 0x12, 0x39, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, - 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x42, 0x72, 0x69, 0x64, - 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, - 0x62, 0x79, 0x5f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x12, - 0x9c, 0x01, 0x0a, 0x0b, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x12, - 0x31, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x12, 0x1e, - 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, - 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x12, 0xd3, - 0x01, 0x0a, 0x18, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x3e, 0x2e, 0x66, 0x78, + 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, - 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x79, 0x4e, - 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x66, 0x78, - 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, - 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x79, 0x4e, - 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x30, 0x12, 0x2e, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, - 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x5f, 0x62, 0x79, 0x5f, 0x6e, - 0x6f, 0x6e, 0x63, 0x65, 0x12, 0xb6, 0x01, 0x0a, 0x11, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, - 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x37, 0x2e, 0x66, 0x78, 0x2e, - 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, - 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, - 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, - 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x62, 0x79, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0xba, 0x01, - 0x0a, 0x12, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x53, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x12, 0x38, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, - 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, - 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x29, 0x12, 0x27, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, - 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0xe0, 0x01, 0x0a, 0x1b, 0x4c, - 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x12, 0x41, 0x2e, 0x66, 0x78, 0x2e, - 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, - 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, - 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x42, 0x2e, - 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, - 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, - 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x3a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x12, 0x32, 0x2f, 0x66, 0x78, 0x2f, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x61, 0x73, - 0x74, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x62, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x12, 0xbd, 0x01, - 0x0a, 0x13, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, - 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x39, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, + 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x44, 0x65, 0x6e, 0x6f, + 0x6d, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x1f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x12, 0x9e, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, + 0x79, 0x41, 0x64, 0x64, 0x72, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, - 0x63, 0x75, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x3a, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, - 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x43, - 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x29, 0x12, 0x27, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, - 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x8b, 0x01, - 0x0a, 0x07, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x41, 0x64, + 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, - 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x21, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, - 0x12, 0x19, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x12, 0xd7, 0x01, 0x0a, 0x1b, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x41, 0x2e, 0x66, 0x78, - 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, - 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x42, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, + 0x12, 0x20, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x12, 0xb7, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, + 0x42, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x12, 0x3a, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, 0x6d, - 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, 0x2f, 0x66, 0x78, 0x2f, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0xa0, 0x01, 0x0a, 0x0c, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, + 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, + 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0xb6, 0x01, 0x0a, 0x11, 0x42, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x37, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x2b, 0x12, 0x29, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x65, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x12, 0xb4, 0x01, 0x0a, + 0x16, 0x47, 0x65, 0x74, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x12, 0x39, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, + 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, + 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x42, 0x79, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x2f, 0x66, 0x78, 0x2f, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x12, 0x9c, 0x01, 0x0a, 0x0b, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, + 0x6c, 0x6c, 0x73, 0x12, 0x31, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, + 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, + 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x20, 0x12, 0x1e, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, + 0x6c, 0x73, 0x12, 0xd3, 0x01, 0x0a, 0x18, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, + 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, + 0x3e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x3f, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x36, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x30, 0x12, 0x2e, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x5f, + 0x62, 0x79, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0xb6, 0x01, 0x0a, 0x11, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x37, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, - 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, - 0x69, 0x6e, 0x42, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, + 0x6c, 0x6c, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x62, 0x79, 0x5f, 0x64, 0x65, 0x6e, 0x6f, - 0x6d, 0x12, 0xad, 0x01, 0x0a, 0x0f, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x68, 0x61, 0x69, - 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, - 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x68, 0x61, 0x69, - 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x66, - 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x66, - 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6c, 0x69, 0x73, - 0x74, 0x12, 0xcb, 0x01, 0x0a, 0x16, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, - 0x51, 0x75, 0x6f, 0x74, 0x65, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x3c, 0x2e, 0x66, + 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x62, 0x79, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, + 0x65, 0x12, 0xba, 0x01, 0x0a, 0x12, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, + 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x38, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, + 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, + 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x53, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x29, 0x12, 0x27, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, + 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0xe0, + 0x01, 0x0a, 0x1b, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x12, 0x41, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, + 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x42, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x42, 0x79, 0x41, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x12, 0x32, 0x2f, + 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, + 0x2f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x62, 0x79, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x12, 0xbd, 0x01, 0x0a, 0x13, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, + 0x63, 0x75, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x39, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, + 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, + 0x75, 0x74, 0x65, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x2f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x29, 0x12, 0x27, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x65, 0x6e, 0x64, + 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x69, + 0x6d, 0x12, 0x8b, 0x01, 0x0a, 0x07, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x2d, 0x2e, + 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x42, 0x79, 0x4e, 0x6f, - 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3d, 0x2e, 0x66, 0x78, 0x2e, + 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x21, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x12, + 0xd7, 0x01, 0x0a, 0x1b, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, + 0x41, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x54, 0x69, + 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x42, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x12, 0x29, + 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, + 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x74, 0x63, + 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0xa0, 0x01, 0x0a, 0x0c, 0x42, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0x32, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x2e, 0x12, 0x2c, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, - 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, - 0xd3, 0x01, 0x0a, 0x18, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, - 0x79, 0x46, 0x65, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x3e, 0x2e, 0x66, - 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x79, 0x46, 0x65, 0x65, 0x52, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x66, - 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x79, 0x46, 0x65, 0x65, 0x52, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x82, - 0xd3, 0xe4, 0x93, 0x02, 0x30, 0x12, 0x2e, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, - 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x5f, 0x62, 0x79, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x72, 0x42, 0xe5, 0x01, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, + 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x66, 0x78, + 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x12, 0xb6, 0x01, 0x0a, + 0x11, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, 0x65, 0x6e, + 0x6f, 0x6d, 0x12, 0x37, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, + 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, + 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x36, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, - 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, - 0x79, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x3b, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, - 0x47, 0x43, 0xaa, 0x02, 0x18, 0x46, 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x18, - 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x24, 0x46, 0x78, 0x5c, 0x47, 0x72, - 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, - 0x02, 0x1b, 0x46, 0x78, 0x3a, 0x3a, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x43, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, + 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, + 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x69, 0x6e, 0x5f, 0x62, 0x79, 0x5f, + 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0xad, 0x01, 0x0a, 0x0f, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x2e, 0x66, 0x78, 0x2e, 0x67, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x36, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, + 0x12, 0x23, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0xcb, 0x01, 0x0a, 0x16, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x43, 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, + 0x12, 0x3c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, + 0x42, 0x79, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3d, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x42, 0x79, + 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x2e, 0x12, 0x2c, 0x2f, 0x66, 0x78, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, + 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x6e, 0x6f, + 0x6e, 0x63, 0x65, 0x12, 0xd3, 0x01, 0x0a, 0x18, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, + 0x6c, 0x6c, 0x73, 0x42, 0x79, 0x46, 0x65, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, + 0x12, 0x3e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x79, 0x46, 0x65, + 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x3f, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x42, 0x79, 0x46, 0x65, + 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x36, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x30, 0x12, 0x2e, 0x2f, 0x66, 0x78, 0x2f, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x5f, 0x62, 0x79, 0x5f, 0x66, 0x65, 0x65, + 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x42, 0xe5, 0x01, 0x0a, 0x1c, 0x63, 0x6f, + 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x36, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, + 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x76, 0x31, + 0xa2, 0x02, 0x03, 0x46, 0x47, 0x43, 0xaa, 0x02, 0x18, 0x46, 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, + 0x69, 0x74, 0x79, 0x2e, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x56, + 0x31, 0xca, 0x02, 0x18, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x24, 0x46, + 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0xea, 0x02, 0x1b, 0x46, 0x78, 0x3a, 0x3a, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x3a, 0x3a, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x3a, 0x3a, 0x56, + 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -34711,7 +35239,7 @@ func file_fx_gravity_crosschain_v1_query_proto_rawDescGZIP() []byte { return file_fx_gravity_crosschain_v1_query_proto_rawDescData } -var file_fx_gravity_crosschain_v1_query_proto_msgTypes = make([]protoimpl.MessageInfo, 66) +var file_fx_gravity_crosschain_v1_query_proto_msgTypes = make([]protoimpl.MessageInfo, 67) var file_fx_gravity_crosschain_v1_query_proto_goTypes = []interface{}{ (*QueryParamsRequest)(nil), // 0: fx.gravity.crosschain.v1.QueryParamsRequest (*QueryParamsResponse)(nil), // 1: fx.gravity.crosschain.v1.QueryParamsResponse @@ -34759,34 +35287,34 @@ var file_fx_gravity_crosschain_v1_query_proto_goTypes = []interface{}{ (*QueryProjectedBatchTimeoutHeightResponse)(nil), // 43: fx.gravity.crosschain.v1.QueryProjectedBatchTimeoutHeightResponse (*QueryBridgeTokensRequest)(nil), // 44: fx.gravity.crosschain.v1.QueryBridgeTokensRequest (*QueryBridgeTokensResponse)(nil), // 45: fx.gravity.crosschain.v1.QueryBridgeTokensResponse - (*QueryBridgeCoinByDenomRequest)(nil), // 46: fx.gravity.crosschain.v1.QueryBridgeCoinByDenomRequest - (*QueryBridgeCoinByDenomResponse)(nil), // 47: fx.gravity.crosschain.v1.QueryBridgeCoinByDenomResponse - (*QueryBridgeChainListRequest)(nil), // 48: fx.gravity.crosschain.v1.QueryBridgeChainListRequest - (*QueryBridgeChainListResponse)(nil), // 49: fx.gravity.crosschain.v1.QueryBridgeChainListResponse - (*QueryBridgeCallsRequest)(nil), // 50: fx.gravity.crosschain.v1.QueryBridgeCallsRequest - (*QueryBridgeCallsResponse)(nil), // 51: fx.gravity.crosschain.v1.QueryBridgeCallsResponse - (*QueryBridgeCallByNonceRequest)(nil), // 52: fx.gravity.crosschain.v1.QueryBridgeCallByNonceRequest - (*QueryBridgeCallByNonceResponse)(nil), // 53: fx.gravity.crosschain.v1.QueryBridgeCallByNonceResponse - (*QueryBridgeCallBySenderRequest)(nil), // 54: fx.gravity.crosschain.v1.QueryBridgeCallBySenderRequest - (*QueryBridgeCallBySenderResponse)(nil), // 55: fx.gravity.crosschain.v1.QueryBridgeCallBySenderResponse - (*QueryBridgeCallConfirmByNonceRequest)(nil), // 56: fx.gravity.crosschain.v1.QueryBridgeCallConfirmByNonceRequest - (*QueryBridgeCallConfirmByNonceResponse)(nil), // 57: fx.gravity.crosschain.v1.QueryBridgeCallConfirmByNonceResponse - (*QueryLastPendingBridgeCallByAddrRequest)(nil), // 58: fx.gravity.crosschain.v1.QueryLastPendingBridgeCallByAddrRequest - (*QueryLastPendingBridgeCallByAddrResponse)(nil), // 59: fx.gravity.crosschain.v1.QueryLastPendingBridgeCallByAddrResponse - (*QueryPendingExecuteClaimRequest)(nil), // 60: fx.gravity.crosschain.v1.QueryPendingExecuteClaimRequest - (*QueryPendingExecuteClaimResponse)(nil), // 61: fx.gravity.crosschain.v1.QueryPendingExecuteClaimResponse - (*QueryBridgeCallQuoteByNonceRequest)(nil), // 62: fx.gravity.crosschain.v1.QueryBridgeCallQuoteByNonceRequest - (*QueryBridgeCallQuoteByNonceResponse)(nil), // 63: fx.gravity.crosschain.v1.QueryBridgeCallQuoteByNonceResponse - (*QueryBridgeCallsByFeeReceiverRequest)(nil), // 64: fx.gravity.crosschain.v1.QueryBridgeCallsByFeeReceiverRequest - (*QueryBridgeCallsByFeeReceiverResponse)(nil), // 65: fx.gravity.crosschain.v1.QueryBridgeCallsByFeeReceiverResponse - (*Params)(nil), // 66: fx.gravity.crosschain.v1.Params - (*OracleSet)(nil), // 67: fx.gravity.crosschain.v1.OracleSet - (*MsgOracleSetConfirm)(nil), // 68: fx.gravity.crosschain.v1.MsgOracleSetConfirm - (*OutgoingTxBatch)(nil), // 69: fx.gravity.crosschain.v1.OutgoingTxBatch - (*MsgConfirmBatch)(nil), // 70: fx.gravity.crosschain.v1.MsgConfirmBatch - (*Oracle)(nil), // 71: fx.gravity.crosschain.v1.Oracle - (*OutgoingTransferTx)(nil), // 72: fx.gravity.crosschain.v1.OutgoingTransferTx - (*BridgeToken)(nil), // 73: fx.gravity.crosschain.v1.BridgeToken + (*BridgeToken)(nil), // 46: fx.gravity.crosschain.v1.BridgeToken + (*QueryBridgeCoinByDenomRequest)(nil), // 47: fx.gravity.crosschain.v1.QueryBridgeCoinByDenomRequest + (*QueryBridgeCoinByDenomResponse)(nil), // 48: fx.gravity.crosschain.v1.QueryBridgeCoinByDenomResponse + (*QueryBridgeChainListRequest)(nil), // 49: fx.gravity.crosschain.v1.QueryBridgeChainListRequest + (*QueryBridgeChainListResponse)(nil), // 50: fx.gravity.crosschain.v1.QueryBridgeChainListResponse + (*QueryBridgeCallsRequest)(nil), // 51: fx.gravity.crosschain.v1.QueryBridgeCallsRequest + (*QueryBridgeCallsResponse)(nil), // 52: fx.gravity.crosschain.v1.QueryBridgeCallsResponse + (*QueryBridgeCallByNonceRequest)(nil), // 53: fx.gravity.crosschain.v1.QueryBridgeCallByNonceRequest + (*QueryBridgeCallByNonceResponse)(nil), // 54: fx.gravity.crosschain.v1.QueryBridgeCallByNonceResponse + (*QueryBridgeCallBySenderRequest)(nil), // 55: fx.gravity.crosschain.v1.QueryBridgeCallBySenderRequest + (*QueryBridgeCallBySenderResponse)(nil), // 56: fx.gravity.crosschain.v1.QueryBridgeCallBySenderResponse + (*QueryBridgeCallConfirmByNonceRequest)(nil), // 57: fx.gravity.crosschain.v1.QueryBridgeCallConfirmByNonceRequest + (*QueryBridgeCallConfirmByNonceResponse)(nil), // 58: fx.gravity.crosschain.v1.QueryBridgeCallConfirmByNonceResponse + (*QueryLastPendingBridgeCallByAddrRequest)(nil), // 59: fx.gravity.crosschain.v1.QueryLastPendingBridgeCallByAddrRequest + (*QueryLastPendingBridgeCallByAddrResponse)(nil), // 60: fx.gravity.crosschain.v1.QueryLastPendingBridgeCallByAddrResponse + (*QueryPendingExecuteClaimRequest)(nil), // 61: fx.gravity.crosschain.v1.QueryPendingExecuteClaimRequest + (*QueryPendingExecuteClaimResponse)(nil), // 62: fx.gravity.crosschain.v1.QueryPendingExecuteClaimResponse + (*QueryBridgeCallQuoteByNonceRequest)(nil), // 63: fx.gravity.crosschain.v1.QueryBridgeCallQuoteByNonceRequest + (*QueryBridgeCallQuoteByNonceResponse)(nil), // 64: fx.gravity.crosschain.v1.QueryBridgeCallQuoteByNonceResponse + (*QueryBridgeCallsByFeeReceiverRequest)(nil), // 65: fx.gravity.crosschain.v1.QueryBridgeCallsByFeeReceiverRequest + (*QueryBridgeCallsByFeeReceiverResponse)(nil), // 66: fx.gravity.crosschain.v1.QueryBridgeCallsByFeeReceiverResponse + (*Params)(nil), // 67: fx.gravity.crosschain.v1.Params + (*OracleSet)(nil), // 68: fx.gravity.crosschain.v1.OracleSet + (*MsgOracleSetConfirm)(nil), // 69: fx.gravity.crosschain.v1.MsgOracleSetConfirm + (*OutgoingTxBatch)(nil), // 70: fx.gravity.crosschain.v1.OutgoingTxBatch + (*MsgConfirmBatch)(nil), // 71: fx.gravity.crosschain.v1.MsgConfirmBatch + (*Oracle)(nil), // 72: fx.gravity.crosschain.v1.Oracle + (*OutgoingTransferTx)(nil), // 73: fx.gravity.crosschain.v1.OutgoingTransferTx (*v1beta1.Coin)(nil), // 74: cosmos.base.v1beta1.Coin (*v1beta11.PageRequest)(nil), // 75: cosmos.base.query.v1beta1.PageRequest (*OutgoingBridgeCall)(nil), // 76: fx.gravity.crosschain.v1.OutgoingBridgeCall @@ -34796,23 +35324,23 @@ var file_fx_gravity_crosschain_v1_query_proto_goTypes = []interface{}{ (*QuoteInfo)(nil), // 80: fx.gravity.crosschain.v1.QuoteInfo } var file_fx_gravity_crosschain_v1_query_proto_depIdxs = []int32{ - 66, // 0: fx.gravity.crosschain.v1.QueryParamsResponse.params:type_name -> fx.gravity.crosschain.v1.Params - 67, // 1: fx.gravity.crosschain.v1.QueryCurrentOracleSetResponse.oracle_set:type_name -> fx.gravity.crosschain.v1.OracleSet - 67, // 2: fx.gravity.crosschain.v1.QueryOracleSetRequestResponse.oracle_set:type_name -> fx.gravity.crosschain.v1.OracleSet - 68, // 3: fx.gravity.crosschain.v1.QueryOracleSetConfirmResponse.confirm:type_name -> fx.gravity.crosschain.v1.MsgOracleSetConfirm - 68, // 4: fx.gravity.crosschain.v1.QueryOracleSetConfirmsByNonceResponse.confirms:type_name -> fx.gravity.crosschain.v1.MsgOracleSetConfirm - 67, // 5: fx.gravity.crosschain.v1.QueryLastOracleSetRequestsResponse.oracle_sets:type_name -> fx.gravity.crosschain.v1.OracleSet - 67, // 6: fx.gravity.crosschain.v1.QueryLastPendingOracleSetRequestByAddrResponse.oracle_sets:type_name -> fx.gravity.crosschain.v1.OracleSet - 69, // 7: fx.gravity.crosschain.v1.QueryLastPendingBatchRequestByAddrResponse.batch:type_name -> fx.gravity.crosschain.v1.OutgoingTxBatch - 69, // 8: fx.gravity.crosschain.v1.QueryOutgoingTxBatchesResponse.batches:type_name -> fx.gravity.crosschain.v1.OutgoingTxBatch - 69, // 9: fx.gravity.crosschain.v1.QueryOutgoingTxBatchResponse.batch:type_name -> fx.gravity.crosschain.v1.OutgoingTxBatch - 70, // 10: fx.gravity.crosschain.v1.QueryBatchConfirmResponse.confirm:type_name -> fx.gravity.crosschain.v1.MsgConfirmBatch - 70, // 11: fx.gravity.crosschain.v1.QueryBatchConfirmsResponse.confirms:type_name -> fx.gravity.crosschain.v1.MsgConfirmBatch - 71, // 12: fx.gravity.crosschain.v1.QueryOracleResponse.oracle:type_name -> fx.gravity.crosschain.v1.Oracle - 72, // 13: fx.gravity.crosschain.v1.QueryPendingSendToExternalResponse.transfers_in_batches:type_name -> fx.gravity.crosschain.v1.OutgoingTransferTx - 72, // 14: fx.gravity.crosschain.v1.QueryPendingSendToExternalResponse.unbatched_transfers:type_name -> fx.gravity.crosschain.v1.OutgoingTransferTx - 71, // 15: fx.gravity.crosschain.v1.QueryOraclesResponse.oracles:type_name -> fx.gravity.crosschain.v1.Oracle - 73, // 16: fx.gravity.crosschain.v1.QueryBridgeTokensResponse.bridge_tokens:type_name -> fx.gravity.crosschain.v1.BridgeToken + 67, // 0: fx.gravity.crosschain.v1.QueryParamsResponse.params:type_name -> fx.gravity.crosschain.v1.Params + 68, // 1: fx.gravity.crosschain.v1.QueryCurrentOracleSetResponse.oracle_set:type_name -> fx.gravity.crosschain.v1.OracleSet + 68, // 2: fx.gravity.crosschain.v1.QueryOracleSetRequestResponse.oracle_set:type_name -> fx.gravity.crosschain.v1.OracleSet + 69, // 3: fx.gravity.crosschain.v1.QueryOracleSetConfirmResponse.confirm:type_name -> fx.gravity.crosschain.v1.MsgOracleSetConfirm + 69, // 4: fx.gravity.crosschain.v1.QueryOracleSetConfirmsByNonceResponse.confirms:type_name -> fx.gravity.crosschain.v1.MsgOracleSetConfirm + 68, // 5: fx.gravity.crosschain.v1.QueryLastOracleSetRequestsResponse.oracle_sets:type_name -> fx.gravity.crosschain.v1.OracleSet + 68, // 6: fx.gravity.crosschain.v1.QueryLastPendingOracleSetRequestByAddrResponse.oracle_sets:type_name -> fx.gravity.crosschain.v1.OracleSet + 70, // 7: fx.gravity.crosschain.v1.QueryLastPendingBatchRequestByAddrResponse.batch:type_name -> fx.gravity.crosschain.v1.OutgoingTxBatch + 70, // 8: fx.gravity.crosschain.v1.QueryOutgoingTxBatchesResponse.batches:type_name -> fx.gravity.crosschain.v1.OutgoingTxBatch + 70, // 9: fx.gravity.crosschain.v1.QueryOutgoingTxBatchResponse.batch:type_name -> fx.gravity.crosschain.v1.OutgoingTxBatch + 71, // 10: fx.gravity.crosschain.v1.QueryBatchConfirmResponse.confirm:type_name -> fx.gravity.crosschain.v1.MsgConfirmBatch + 71, // 11: fx.gravity.crosschain.v1.QueryBatchConfirmsResponse.confirms:type_name -> fx.gravity.crosschain.v1.MsgConfirmBatch + 72, // 12: fx.gravity.crosschain.v1.QueryOracleResponse.oracle:type_name -> fx.gravity.crosschain.v1.Oracle + 73, // 13: fx.gravity.crosschain.v1.QueryPendingSendToExternalResponse.transfers_in_batches:type_name -> fx.gravity.crosschain.v1.OutgoingTransferTx + 73, // 14: fx.gravity.crosschain.v1.QueryPendingSendToExternalResponse.unbatched_transfers:type_name -> fx.gravity.crosschain.v1.OutgoingTransferTx + 72, // 15: fx.gravity.crosschain.v1.QueryOraclesResponse.oracles:type_name -> fx.gravity.crosschain.v1.Oracle + 46, // 16: fx.gravity.crosschain.v1.QueryBridgeTokensResponse.bridge_tokens:type_name -> fx.gravity.crosschain.v1.BridgeToken 74, // 17: fx.gravity.crosschain.v1.QueryBridgeCoinByDenomResponse.coin:type_name -> cosmos.base.v1beta1.Coin 75, // 18: fx.gravity.crosschain.v1.QueryBridgeCallsRequest.pagination:type_name -> cosmos.base.query.v1beta1.PageRequest 76, // 19: fx.gravity.crosschain.v1.QueryBridgeCallsResponse.bridge_calls:type_name -> fx.gravity.crosschain.v1.OutgoingBridgeCall @@ -34848,19 +35376,19 @@ var file_fx_gravity_crosschain_v1_query_proto_depIdxs = []int32{ 30, // 49: fx.gravity.crosschain.v1.Query.GetOracleByAddr:input_type -> fx.gravity.crosschain.v1.QueryOracleByAddrRequest 32, // 50: fx.gravity.crosschain.v1.Query.GetOracleByExternalAddr:input_type -> fx.gravity.crosschain.v1.QueryOracleByExternalAddrRequest 33, // 51: fx.gravity.crosschain.v1.Query.GetOracleByBridgerAddr:input_type -> fx.gravity.crosschain.v1.QueryOracleByBridgerAddrRequest - 50, // 52: fx.gravity.crosschain.v1.Query.BridgeCalls:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallsRequest - 56, // 53: fx.gravity.crosschain.v1.Query.BridgeCallConfirmByNonce:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallConfirmByNonceRequest - 52, // 54: fx.gravity.crosschain.v1.Query.BridgeCallByNonce:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallByNonceRequest - 54, // 55: fx.gravity.crosschain.v1.Query.BridgeCallBySender:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallBySenderRequest - 58, // 56: fx.gravity.crosschain.v1.Query.LastPendingBridgeCallByAddr:input_type -> fx.gravity.crosschain.v1.QueryLastPendingBridgeCallByAddrRequest - 60, // 57: fx.gravity.crosschain.v1.Query.PendingExecuteClaim:input_type -> fx.gravity.crosschain.v1.QueryPendingExecuteClaimRequest + 51, // 52: fx.gravity.crosschain.v1.Query.BridgeCalls:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallsRequest + 57, // 53: fx.gravity.crosschain.v1.Query.BridgeCallConfirmByNonce:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallConfirmByNonceRequest + 53, // 54: fx.gravity.crosschain.v1.Query.BridgeCallByNonce:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallByNonceRequest + 55, // 55: fx.gravity.crosschain.v1.Query.BridgeCallBySender:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallBySenderRequest + 59, // 56: fx.gravity.crosschain.v1.Query.LastPendingBridgeCallByAddr:input_type -> fx.gravity.crosschain.v1.QueryLastPendingBridgeCallByAddrRequest + 61, // 57: fx.gravity.crosschain.v1.Query.PendingExecuteClaim:input_type -> fx.gravity.crosschain.v1.QueryPendingExecuteClaimRequest 40, // 58: fx.gravity.crosschain.v1.Query.Oracles:input_type -> fx.gravity.crosschain.v1.QueryOraclesRequest 42, // 59: fx.gravity.crosschain.v1.Query.ProjectedBatchTimeoutHeight:input_type -> fx.gravity.crosschain.v1.QueryProjectedBatchTimeoutHeightRequest 44, // 60: fx.gravity.crosschain.v1.Query.BridgeTokens:input_type -> fx.gravity.crosschain.v1.QueryBridgeTokensRequest - 46, // 61: fx.gravity.crosschain.v1.Query.BridgeCoinByDenom:input_type -> fx.gravity.crosschain.v1.QueryBridgeCoinByDenomRequest - 48, // 62: fx.gravity.crosschain.v1.Query.BridgeChainList:input_type -> fx.gravity.crosschain.v1.QueryBridgeChainListRequest - 62, // 63: fx.gravity.crosschain.v1.Query.BridgeCallQuoteByNonce:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallQuoteByNonceRequest - 64, // 64: fx.gravity.crosschain.v1.Query.BridgeCallsByFeeReceiver:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallsByFeeReceiverRequest + 47, // 61: fx.gravity.crosschain.v1.Query.BridgeCoinByDenom:input_type -> fx.gravity.crosschain.v1.QueryBridgeCoinByDenomRequest + 49, // 62: fx.gravity.crosschain.v1.Query.BridgeChainList:input_type -> fx.gravity.crosschain.v1.QueryBridgeChainListRequest + 63, // 63: fx.gravity.crosschain.v1.Query.BridgeCallQuoteByNonce:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallQuoteByNonceRequest + 65, // 64: fx.gravity.crosschain.v1.Query.BridgeCallsByFeeReceiver:input_type -> fx.gravity.crosschain.v1.QueryBridgeCallsByFeeReceiverRequest 1, // 65: fx.gravity.crosschain.v1.Query.Params:output_type -> fx.gravity.crosschain.v1.QueryParamsResponse 3, // 66: fx.gravity.crosschain.v1.Query.CurrentOracleSet:output_type -> fx.gravity.crosschain.v1.QueryCurrentOracleSetResponse 5, // 67: fx.gravity.crosschain.v1.Query.OracleSetRequest:output_type -> fx.gravity.crosschain.v1.QueryOracleSetRequestResponse @@ -34881,19 +35409,19 @@ var file_fx_gravity_crosschain_v1_query_proto_depIdxs = []int32{ 31, // 82: fx.gravity.crosschain.v1.Query.GetOracleByAddr:output_type -> fx.gravity.crosschain.v1.QueryOracleResponse 31, // 83: fx.gravity.crosschain.v1.Query.GetOracleByExternalAddr:output_type -> fx.gravity.crosschain.v1.QueryOracleResponse 31, // 84: fx.gravity.crosschain.v1.Query.GetOracleByBridgerAddr:output_type -> fx.gravity.crosschain.v1.QueryOracleResponse - 51, // 85: fx.gravity.crosschain.v1.Query.BridgeCalls:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallsResponse - 57, // 86: fx.gravity.crosschain.v1.Query.BridgeCallConfirmByNonce:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallConfirmByNonceResponse - 53, // 87: fx.gravity.crosschain.v1.Query.BridgeCallByNonce:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallByNonceResponse - 55, // 88: fx.gravity.crosschain.v1.Query.BridgeCallBySender:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallBySenderResponse - 59, // 89: fx.gravity.crosschain.v1.Query.LastPendingBridgeCallByAddr:output_type -> fx.gravity.crosschain.v1.QueryLastPendingBridgeCallByAddrResponse - 61, // 90: fx.gravity.crosschain.v1.Query.PendingExecuteClaim:output_type -> fx.gravity.crosschain.v1.QueryPendingExecuteClaimResponse + 52, // 85: fx.gravity.crosschain.v1.Query.BridgeCalls:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallsResponse + 58, // 86: fx.gravity.crosschain.v1.Query.BridgeCallConfirmByNonce:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallConfirmByNonceResponse + 54, // 87: fx.gravity.crosschain.v1.Query.BridgeCallByNonce:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallByNonceResponse + 56, // 88: fx.gravity.crosschain.v1.Query.BridgeCallBySender:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallBySenderResponse + 60, // 89: fx.gravity.crosschain.v1.Query.LastPendingBridgeCallByAddr:output_type -> fx.gravity.crosschain.v1.QueryLastPendingBridgeCallByAddrResponse + 62, // 90: fx.gravity.crosschain.v1.Query.PendingExecuteClaim:output_type -> fx.gravity.crosschain.v1.QueryPendingExecuteClaimResponse 41, // 91: fx.gravity.crosschain.v1.Query.Oracles:output_type -> fx.gravity.crosschain.v1.QueryOraclesResponse 43, // 92: fx.gravity.crosschain.v1.Query.ProjectedBatchTimeoutHeight:output_type -> fx.gravity.crosschain.v1.QueryProjectedBatchTimeoutHeightResponse 45, // 93: fx.gravity.crosschain.v1.Query.BridgeTokens:output_type -> fx.gravity.crosschain.v1.QueryBridgeTokensResponse - 47, // 94: fx.gravity.crosschain.v1.Query.BridgeCoinByDenom:output_type -> fx.gravity.crosschain.v1.QueryBridgeCoinByDenomResponse - 49, // 95: fx.gravity.crosschain.v1.Query.BridgeChainList:output_type -> fx.gravity.crosschain.v1.QueryBridgeChainListResponse - 63, // 96: fx.gravity.crosschain.v1.Query.BridgeCallQuoteByNonce:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallQuoteByNonceResponse - 65, // 97: fx.gravity.crosschain.v1.Query.BridgeCallsByFeeReceiver:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallsByFeeReceiverResponse + 48, // 94: fx.gravity.crosschain.v1.Query.BridgeCoinByDenom:output_type -> fx.gravity.crosschain.v1.QueryBridgeCoinByDenomResponse + 50, // 95: fx.gravity.crosschain.v1.Query.BridgeChainList:output_type -> fx.gravity.crosschain.v1.QueryBridgeChainListResponse + 64, // 96: fx.gravity.crosschain.v1.Query.BridgeCallQuoteByNonce:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallQuoteByNonceResponse + 66, // 97: fx.gravity.crosschain.v1.Query.BridgeCallsByFeeReceiver:output_type -> fx.gravity.crosschain.v1.QueryBridgeCallsByFeeReceiverResponse 65, // [65:98] is the sub-list for method output_type 32, // [32:65] is the sub-list for method input_type 32, // [32:32] is the sub-list for extension type_name @@ -34908,7 +35436,6 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } file_fx_gravity_crosschain_v1_tx_proto_init() file_fx_gravity_crosschain_v1_types_proto_init() - file_fx_gravity_crosschain_v1_legacy_proto_init() if !protoimpl.UnsafeEnabled { file_fx_gravity_crosschain_v1_query_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*QueryParamsRequest); i { @@ -35463,7 +35990,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCoinByDenomRequest); i { + switch v := v.(*BridgeToken); i { case 0: return &v.state case 1: @@ -35475,7 +36002,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCoinByDenomResponse); i { + switch v := v.(*QueryBridgeCoinByDenomRequest); i { case 0: return &v.state case 1: @@ -35487,7 +36014,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeChainListRequest); i { + switch v := v.(*QueryBridgeCoinByDenomResponse); i { case 0: return &v.state case 1: @@ -35499,7 +36026,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeChainListResponse); i { + switch v := v.(*QueryBridgeChainListRequest); i { case 0: return &v.state case 1: @@ -35511,7 +36038,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallsRequest); i { + switch v := v.(*QueryBridgeChainListResponse); i { case 0: return &v.state case 1: @@ -35523,7 +36050,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallsResponse); i { + switch v := v.(*QueryBridgeCallsRequest); i { case 0: return &v.state case 1: @@ -35535,7 +36062,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallByNonceRequest); i { + switch v := v.(*QueryBridgeCallsResponse); i { case 0: return &v.state case 1: @@ -35547,7 +36074,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallByNonceResponse); i { + switch v := v.(*QueryBridgeCallByNonceRequest); i { case 0: return &v.state case 1: @@ -35559,7 +36086,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallBySenderRequest); i { + switch v := v.(*QueryBridgeCallByNonceResponse); i { case 0: return &v.state case 1: @@ -35571,7 +36098,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallBySenderResponse); i { + switch v := v.(*QueryBridgeCallBySenderRequest); i { case 0: return &v.state case 1: @@ -35583,7 +36110,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallConfirmByNonceRequest); i { + switch v := v.(*QueryBridgeCallBySenderResponse); i { case 0: return &v.state case 1: @@ -35595,7 +36122,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallConfirmByNonceResponse); i { + switch v := v.(*QueryBridgeCallConfirmByNonceRequest); i { case 0: return &v.state case 1: @@ -35607,7 +36134,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryLastPendingBridgeCallByAddrRequest); i { + switch v := v.(*QueryBridgeCallConfirmByNonceResponse); i { case 0: return &v.state case 1: @@ -35619,7 +36146,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryLastPendingBridgeCallByAddrResponse); i { + switch v := v.(*QueryLastPendingBridgeCallByAddrRequest); i { case 0: return &v.state case 1: @@ -35631,7 +36158,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryPendingExecuteClaimRequest); i { + switch v := v.(*QueryLastPendingBridgeCallByAddrResponse); i { case 0: return &v.state case 1: @@ -35643,7 +36170,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryPendingExecuteClaimResponse); i { + switch v := v.(*QueryPendingExecuteClaimRequest); i { case 0: return &v.state case 1: @@ -35655,7 +36182,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallQuoteByNonceRequest); i { + switch v := v.(*QueryPendingExecuteClaimResponse); i { case 0: return &v.state case 1: @@ -35667,7 +36194,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallQuoteByNonceResponse); i { + switch v := v.(*QueryBridgeCallQuoteByNonceRequest); i { case 0: return &v.state case 1: @@ -35679,7 +36206,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryBridgeCallsByFeeReceiverRequest); i { + switch v := v.(*QueryBridgeCallQuoteByNonceResponse); i { case 0: return &v.state case 1: @@ -35691,6 +36218,18 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { } } file_fx_gravity_crosschain_v1_query_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*QueryBridgeCallsByFeeReceiverRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_query_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*QueryBridgeCallsByFeeReceiverResponse); i { case 0: return &v.state @@ -35709,7 +36248,7 @@ func file_fx_gravity_crosschain_v1_query_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_fx_gravity_crosschain_v1_query_proto_rawDesc, NumEnums: 0, - NumMessages: 66, + NumMessages: 67, NumExtensions: 0, NumServices: 1, }, diff --git a/api/fx/gravity/crosschain/v1/tx.pulsar.go b/api/fx/gravity/crosschain/v1/tx.pulsar.go index d116574d..a4919c65 100644 --- a/api/fx/gravity/crosschain/v1/tx.pulsar.go +++ b/api/fx/gravity/crosschain/v1/tx.pulsar.go @@ -16693,6 +16693,2184 @@ func (x *fastReflection_MsgConfirmResponse) ProtoMethods() *protoiface.Methods { } } +var ( + md_MsgOracleSetConfirmResponse protoreflect.MessageDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_tx_proto_init() + md_MsgOracleSetConfirmResponse = File_fx_gravity_crosschain_v1_tx_proto.Messages().ByName("MsgOracleSetConfirmResponse") +} + +var _ protoreflect.Message = (*fastReflection_MsgOracleSetConfirmResponse)(nil) + +type fastReflection_MsgOracleSetConfirmResponse MsgOracleSetConfirmResponse + +func (x *MsgOracleSetConfirmResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgOracleSetConfirmResponse)(x) +} + +func (x *MsgOracleSetConfirmResponse) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[29] + 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_MsgOracleSetConfirmResponse_messageType fastReflection_MsgOracleSetConfirmResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgOracleSetConfirmResponse_messageType{} + +type fastReflection_MsgOracleSetConfirmResponse_messageType struct{} + +func (x fastReflection_MsgOracleSetConfirmResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgOracleSetConfirmResponse)(nil) +} +func (x fastReflection_MsgOracleSetConfirmResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgOracleSetConfirmResponse) +} +func (x fastReflection_MsgOracleSetConfirmResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgOracleSetConfirmResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgOracleSetConfirmResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgOracleSetConfirmResponse +} + +// 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_MsgOracleSetConfirmResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgOracleSetConfirmResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgOracleSetConfirmResponse) New() protoreflect.Message { + return new(fastReflection_MsgOracleSetConfirmResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgOracleSetConfirmResponse) Interface() protoreflect.ProtoMessage { + return (*MsgOracleSetConfirmResponse)(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_MsgOracleSetConfirmResponse) 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_MsgOracleSetConfirmResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse 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_MsgOracleSetConfirmResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse", 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_MsgOracleSetConfirmResponse) 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_MsgOracleSetConfirmResponse) 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_MsgOracleSetConfirmResponse) 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_MsgOracleSetConfirmResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgOracleSetConfirmResponse) + 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().(*MsgOracleSetConfirmResponse) + 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().(*MsgOracleSetConfirmResponse) + 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: MsgOracleSetConfirmResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgOracleSetConfirmResponse: 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_MsgConfirmBatchResponse protoreflect.MessageDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_tx_proto_init() + md_MsgConfirmBatchResponse = File_fx_gravity_crosschain_v1_tx_proto.Messages().ByName("MsgConfirmBatchResponse") +} + +var _ protoreflect.Message = (*fastReflection_MsgConfirmBatchResponse)(nil) + +type fastReflection_MsgConfirmBatchResponse MsgConfirmBatchResponse + +func (x *MsgConfirmBatchResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgConfirmBatchResponse)(x) +} + +func (x *MsgConfirmBatchResponse) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[30] + 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_MsgConfirmBatchResponse_messageType fastReflection_MsgConfirmBatchResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgConfirmBatchResponse_messageType{} + +type fastReflection_MsgConfirmBatchResponse_messageType struct{} + +func (x fastReflection_MsgConfirmBatchResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgConfirmBatchResponse)(nil) +} +func (x fastReflection_MsgConfirmBatchResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgConfirmBatchResponse) +} +func (x fastReflection_MsgConfirmBatchResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgConfirmBatchResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgConfirmBatchResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgConfirmBatchResponse +} + +// 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_MsgConfirmBatchResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgConfirmBatchResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgConfirmBatchResponse) New() protoreflect.Message { + return new(fastReflection_MsgConfirmBatchResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgConfirmBatchResponse) Interface() protoreflect.ProtoMessage { + return (*MsgConfirmBatchResponse)(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_MsgConfirmBatchResponse) 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_MsgConfirmBatchResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgConfirmBatchResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgConfirmBatchResponse 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_MsgConfirmBatchResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgConfirmBatchResponse", 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_MsgConfirmBatchResponse) 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_MsgConfirmBatchResponse) 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_MsgConfirmBatchResponse) 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_MsgConfirmBatchResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgConfirmBatchResponse) + 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().(*MsgConfirmBatchResponse) + 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().(*MsgConfirmBatchResponse) + 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: MsgConfirmBatchResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgConfirmBatchResponse: 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_MsgBridgeCallConfirmResponse protoreflect.MessageDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_tx_proto_init() + md_MsgBridgeCallConfirmResponse = File_fx_gravity_crosschain_v1_tx_proto.Messages().ByName("MsgBridgeCallConfirmResponse") +} + +var _ protoreflect.Message = (*fastReflection_MsgBridgeCallConfirmResponse)(nil) + +type fastReflection_MsgBridgeCallConfirmResponse MsgBridgeCallConfirmResponse + +func (x *MsgBridgeCallConfirmResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgBridgeCallConfirmResponse)(x) +} + +func (x *MsgBridgeCallConfirmResponse) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[31] + 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_MsgBridgeCallConfirmResponse_messageType fastReflection_MsgBridgeCallConfirmResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgBridgeCallConfirmResponse_messageType{} + +type fastReflection_MsgBridgeCallConfirmResponse_messageType struct{} + +func (x fastReflection_MsgBridgeCallConfirmResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgBridgeCallConfirmResponse)(nil) +} +func (x fastReflection_MsgBridgeCallConfirmResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgBridgeCallConfirmResponse) +} +func (x fastReflection_MsgBridgeCallConfirmResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgBridgeCallConfirmResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgBridgeCallConfirmResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgBridgeCallConfirmResponse +} + +// 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_MsgBridgeCallConfirmResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgBridgeCallConfirmResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgBridgeCallConfirmResponse) New() protoreflect.Message { + return new(fastReflection_MsgBridgeCallConfirmResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgBridgeCallConfirmResponse) Interface() protoreflect.ProtoMessage { + return (*MsgBridgeCallConfirmResponse)(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_MsgBridgeCallConfirmResponse) 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_MsgBridgeCallConfirmResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse 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_MsgBridgeCallConfirmResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse", 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_MsgBridgeCallConfirmResponse) 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_MsgBridgeCallConfirmResponse) 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_MsgBridgeCallConfirmResponse) 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_MsgBridgeCallConfirmResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgBridgeCallConfirmResponse) + 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().(*MsgBridgeCallConfirmResponse) + 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().(*MsgBridgeCallConfirmResponse) + 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: MsgBridgeCallConfirmResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgBridgeCallConfirmResponse: 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_MsgSendToExternal protoreflect.MessageDescriptor + fd_MsgSendToExternal_sender protoreflect.FieldDescriptor + fd_MsgSendToExternal_dest protoreflect.FieldDescriptor + fd_MsgSendToExternal_amount protoreflect.FieldDescriptor + fd_MsgSendToExternal_bridge_fee protoreflect.FieldDescriptor + fd_MsgSendToExternal_chain_name protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_tx_proto_init() + md_MsgSendToExternal = File_fx_gravity_crosschain_v1_tx_proto.Messages().ByName("MsgSendToExternal") + fd_MsgSendToExternal_sender = md_MsgSendToExternal.Fields().ByName("sender") + fd_MsgSendToExternal_dest = md_MsgSendToExternal.Fields().ByName("dest") + fd_MsgSendToExternal_amount = md_MsgSendToExternal.Fields().ByName("amount") + fd_MsgSendToExternal_bridge_fee = md_MsgSendToExternal.Fields().ByName("bridge_fee") + fd_MsgSendToExternal_chain_name = md_MsgSendToExternal.Fields().ByName("chain_name") +} + +var _ protoreflect.Message = (*fastReflection_MsgSendToExternal)(nil) + +type fastReflection_MsgSendToExternal MsgSendToExternal + +func (x *MsgSendToExternal) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgSendToExternal)(x) +} + +func (x *MsgSendToExternal) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[32] + 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_MsgSendToExternal_messageType fastReflection_MsgSendToExternal_messageType +var _ protoreflect.MessageType = fastReflection_MsgSendToExternal_messageType{} + +type fastReflection_MsgSendToExternal_messageType struct{} + +func (x fastReflection_MsgSendToExternal_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgSendToExternal)(nil) +} +func (x fastReflection_MsgSendToExternal_messageType) New() protoreflect.Message { + return new(fastReflection_MsgSendToExternal) +} +func (x fastReflection_MsgSendToExternal_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgSendToExternal +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgSendToExternal) Descriptor() protoreflect.MessageDescriptor { + return md_MsgSendToExternal +} + +// 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_MsgSendToExternal) Type() protoreflect.MessageType { + return _fastReflection_MsgSendToExternal_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgSendToExternal) New() protoreflect.Message { + return new(fastReflection_MsgSendToExternal) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgSendToExternal) Interface() protoreflect.ProtoMessage { + return (*MsgSendToExternal)(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_MsgSendToExternal) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Sender != "" { + value := protoreflect.ValueOfString(x.Sender) + if !f(fd_MsgSendToExternal_sender, value) { + return + } + } + if x.Dest != "" { + value := protoreflect.ValueOfString(x.Dest) + if !f(fd_MsgSendToExternal_dest, value) { + return + } + } + if x.Amount != nil { + value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + if !f(fd_MsgSendToExternal_amount, value) { + return + } + } + if x.BridgeFee != nil { + value := protoreflect.ValueOfMessage(x.BridgeFee.ProtoReflect()) + if !f(fd_MsgSendToExternal_bridge_fee, value) { + return + } + } + if x.ChainName != "" { + value := protoreflect.ValueOfString(x.ChainName) + if !f(fd_MsgSendToExternal_chain_name, 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_MsgSendToExternal) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": + return x.Sender != "" + case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": + return x.Dest != "" + case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": + return x.Amount != nil + case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": + return x.BridgeFee != nil + case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": + return x.ChainName != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": + x.Sender = "" + case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": + x.Dest = "" + case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": + x.Amount = nil + case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": + x.BridgeFee = nil + case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": + x.ChainName = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": + value := x.Sender + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": + value := x.Dest + return protoreflect.ValueOfString(value) + case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": + value := x.Amount + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": + value := x.BridgeFee + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": + value := x.ChainName + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": + x.Sender = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": + x.Dest = value.Interface().(string) + case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": + x.Amount = value.Message().Interface().(*v1beta1.Coin) + case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": + x.BridgeFee = value.Message().Interface().(*v1beta1.Coin) + case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": + x.ChainName = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": + if x.Amount == nil { + x.Amount = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": + if x.BridgeFee == nil { + x.BridgeFee = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.BridgeFee.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": + panic(fmt.Errorf("field sender of message fx.gravity.crosschain.v1.MsgSendToExternal is not mutable")) + case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": + panic(fmt.Errorf("field dest of message fx.gravity.crosschain.v1.MsgSendToExternal is not mutable")) + case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": + panic(fmt.Errorf("field chain_name of message fx.gravity.crosschain.v1.MsgSendToExternal is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternal.sender": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgSendToExternal.dest": + return protoreflect.ValueOfString("") + case "fx.gravity.crosschain.v1.MsgSendToExternal.amount": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "fx.gravity.crosschain.v1.MsgSendToExternal.chain_name": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternal")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternal 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_MsgSendToExternal) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgSendToExternal", 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_MsgSendToExternal) 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_MsgSendToExternal) 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_MsgSendToExternal) 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_MsgSendToExternal) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgSendToExternal) + 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.Sender) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Dest) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Amount != nil { + l = options.Size(x.Amount) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.BridgeFee != nil { + l = options.Size(x.BridgeFee) + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ChainName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgSendToExternal) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.ChainName) > 0 { + i -= len(x.ChainName) + copy(dAtA[i:], x.ChainName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ChainName))) + i-- + dAtA[i] = 0x2a + } + if x.BridgeFee != nil { + encoded, err := options.Marshal(x.BridgeFee) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x22 + } + if x.Amount != nil { + encoded, err := options.Marshal(x.Amount) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x1a + } + if len(x.Dest) > 0 { + i -= len(x.Dest) + copy(dAtA[i:], x.Dest) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Dest))) + i-- + dAtA[i] = 0x12 + } + if len(x.Sender) > 0 { + i -= len(x.Sender) + copy(dAtA[i:], x.Sender) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) + 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().(*MsgSendToExternal) + 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: MsgSendToExternal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSendToExternal: 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 Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Dest", 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.Dest = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Amount == nil { + x.Amount = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BridgeFee", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.BridgeFee == nil { + x.BridgeFee = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.BridgeFee); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgSendToExternalResponse protoreflect.MessageDescriptor + fd_MsgSendToExternalResponse_batch_nonce protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_crosschain_v1_tx_proto_init() + md_MsgSendToExternalResponse = File_fx_gravity_crosschain_v1_tx_proto.Messages().ByName("MsgSendToExternalResponse") + fd_MsgSendToExternalResponse_batch_nonce = md_MsgSendToExternalResponse.Fields().ByName("batch_nonce") +} + +var _ protoreflect.Message = (*fastReflection_MsgSendToExternalResponse)(nil) + +type fastReflection_MsgSendToExternalResponse MsgSendToExternalResponse + +func (x *MsgSendToExternalResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgSendToExternalResponse)(x) +} + +func (x *MsgSendToExternalResponse) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[33] + 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_MsgSendToExternalResponse_messageType fastReflection_MsgSendToExternalResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgSendToExternalResponse_messageType{} + +type fastReflection_MsgSendToExternalResponse_messageType struct{} + +func (x fastReflection_MsgSendToExternalResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgSendToExternalResponse)(nil) +} +func (x fastReflection_MsgSendToExternalResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgSendToExternalResponse) +} +func (x fastReflection_MsgSendToExternalResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgSendToExternalResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgSendToExternalResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgSendToExternalResponse +} + +// 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_MsgSendToExternalResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgSendToExternalResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgSendToExternalResponse) New() protoreflect.Message { + return new(fastReflection_MsgSendToExternalResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgSendToExternalResponse) Interface() protoreflect.ProtoMessage { + return (*MsgSendToExternalResponse)(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_MsgSendToExternalResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.BatchNonce != uint64(0) { + value := protoreflect.ValueOfUint64(x.BatchNonce) + if !f(fd_MsgSendToExternalResponse_batch_nonce, 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_MsgSendToExternalResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": + return x.BatchNonce != uint64(0) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": + x.BatchNonce = uint64(0) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": + value := x.BatchNonce + return protoreflect.ValueOfUint64(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": + x.BatchNonce = value.Uint() + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": + panic(fmt.Errorf("field batch_nonce of message fx.gravity.crosschain.v1.MsgSendToExternalResponse is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.crosschain.v1.MsgSendToExternalResponse.batch_nonce": + return protoreflect.ValueOfUint64(uint64(0)) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.crosschain.v1.MsgSendToExternalResponse")) + } + panic(fmt.Errorf("message fx.gravity.crosschain.v1.MsgSendToExternalResponse 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_MsgSendToExternalResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.crosschain.v1.MsgSendToExternalResponse", 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_MsgSendToExternalResponse) 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_MsgSendToExternalResponse) 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_MsgSendToExternalResponse) 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_MsgSendToExternalResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgSendToExternalResponse) + 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.BatchNonce != 0 { + n += 1 + runtime.Sov(uint64(x.BatchNonce)) + } + 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().(*MsgSendToExternalResponse) + 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.BatchNonce != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.BatchNonce)) + i-- + dAtA[i] = 0x8 + } + 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().(*MsgSendToExternalResponse) + 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: MsgSendToExternalResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSendToExternalResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BatchNonce", wireType) + } + x.BatchNonce = 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.BatchNonce |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.27.0 @@ -18276,6 +20454,191 @@ func (*MsgConfirmResponse) Descriptor() ([]byte, []int) { return file_fx_gravity_crosschain_v1_tx_proto_rawDescGZIP(), []int{28} } +// Deprecated: Do not use. +type MsgOracleSetConfirmResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *MsgOracleSetConfirmResponse) Reset() { + *x = MsgOracleSetConfirmResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgOracleSetConfirmResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgOracleSetConfirmResponse) ProtoMessage() {} + +// Deprecated: Use MsgOracleSetConfirmResponse.ProtoReflect.Descriptor instead. +func (*MsgOracleSetConfirmResponse) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_tx_proto_rawDescGZIP(), []int{29} +} + +// Deprecated: Do not use. +type MsgConfirmBatchResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *MsgConfirmBatchResponse) Reset() { + *x = MsgConfirmBatchResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgConfirmBatchResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgConfirmBatchResponse) ProtoMessage() {} + +// Deprecated: Use MsgConfirmBatchResponse.ProtoReflect.Descriptor instead. +func (*MsgConfirmBatchResponse) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_tx_proto_rawDescGZIP(), []int{30} +} + +// Deprecated: Do not use. +type MsgBridgeCallConfirmResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *MsgBridgeCallConfirmResponse) Reset() { + *x = MsgBridgeCallConfirmResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgBridgeCallConfirmResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgBridgeCallConfirmResponse) ProtoMessage() {} + +// Deprecated: Use MsgBridgeCallConfirmResponse.ProtoReflect.Descriptor instead. +func (*MsgBridgeCallConfirmResponse) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_tx_proto_rawDescGZIP(), []int{31} +} + +// Deprecated: Please use precompile BridgeCall +type MsgSendToExternal struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Dest string `protobuf:"bytes,2,opt,name=dest,proto3" json:"dest,omitempty"` + Amount *v1beta1.Coin `protobuf:"bytes,3,opt,name=amount,proto3" json:"amount,omitempty"` + BridgeFee *v1beta1.Coin `protobuf:"bytes,4,opt,name=bridge_fee,json=bridgeFee,proto3" json:"bridge_fee,omitempty"` + ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (x *MsgSendToExternal) Reset() { + *x = MsgSendToExternal{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgSendToExternal) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgSendToExternal) ProtoMessage() {} + +// Deprecated: Use MsgSendToExternal.ProtoReflect.Descriptor instead. +func (*MsgSendToExternal) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_tx_proto_rawDescGZIP(), []int{32} +} + +func (x *MsgSendToExternal) GetSender() string { + if x != nil { + return x.Sender + } + return "" +} + +func (x *MsgSendToExternal) GetDest() string { + if x != nil { + return x.Dest + } + return "" +} + +func (x *MsgSendToExternal) GetAmount() *v1beta1.Coin { + if x != nil { + return x.Amount + } + return nil +} + +func (x *MsgSendToExternal) GetBridgeFee() *v1beta1.Coin { + if x != nil { + return x.BridgeFee + } + return nil +} + +func (x *MsgSendToExternal) GetChainName() string { + if x != nil { + return x.ChainName + } + return "" +} + +// Deprecated: Do not use. +type MsgSendToExternalResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + BatchNonce uint64 `protobuf:"varint,1,opt,name=batch_nonce,json=batchNonce,proto3" json:"batch_nonce,omitempty"` +} + +func (x *MsgSendToExternalResponse) Reset() { + *x = MsgSendToExternalResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_crosschain_v1_tx_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgSendToExternalResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgSendToExternalResponse) ProtoMessage() {} + +// Deprecated: Use MsgSendToExternalResponse.ProtoReflect.Descriptor instead. +func (*MsgSendToExternalResponse) Descriptor() ([]byte, []int) { + return file_fx_gravity_crosschain_v1_tx_proto_rawDescGZIP(), []int{33} +} + +func (x *MsgSendToExternalResponse) GetBatchNonce() uint64 { + if x != nil { + return x.BatchNonce + } + return 0 +} + var File_fx_gravity_crosschain_v1_tx_proto protoreflect.FileDescriptor var file_fx_gravity_crosschain_v1_tx_proto_rawDesc = []byte{ @@ -18290,466 +20653,491 @@ var file_fx_gravity_crosschain_v1_tx_proto_rawDesc = []byte{ 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, - 0x31, 0x2f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, - 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, - 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x22, 0xd6, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, - 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, - 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x48, 0x0a, - 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, - 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, - 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x32, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, - 0x1a, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x42, - 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x22, 0x19, 0x0a, 0x17, 0x4d, - 0x73, 0x67, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc2, 0x01, 0x0a, 0x0e, 0x4d, 0x73, 0x67, 0x41, 0x64, - 0x64, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, - 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x37, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, + 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2f, + 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd6, 0x02, 0x0a, 0x0f, + 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, + 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, + 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, + 0x0a, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x48, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, + 0x74, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, - 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x31, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, + 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x3a, 0x32, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1a, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x6e, 0x64, 0x65, + 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0xc2, 0x01, 0x0a, 0x0e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, + 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, + 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x3a, 0x31, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x19, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, + 0x67, 0x61, 0x74, 0x65, 0x22, 0x18, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x44, 0x65, + 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb4, + 0x01, 0x0a, 0x0d, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x3a, 0x30, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x18, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, 0x6c, + 0x65, 0x67, 0x61, 0x74, 0x65, 0x22, 0x17, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, + 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb2, + 0x01, 0x0a, 0x0e, 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x3a, 0x31, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x19, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, 0x74, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x72, 0x22, 0x18, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, 0x74, 0x42, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, + 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, + 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x34, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, + 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, + 0xb0, 0x2a, 0x1c, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, + 0x67, 0x55, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x22, + 0x1b, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x0a, + 0x11, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x34, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, - 0x2a, 0x19, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x22, 0x18, 0x0a, 0x16, 0x4d, - 0x73, 0x67, 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb4, 0x01, 0x0a, 0x0d, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, - 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2b, 0x0a, - 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x30, 0x82, 0xe7, 0xb0, 0x2a, - 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, - 0xe7, 0xb0, 0x2a, 0x18, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, - 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x22, 0x17, 0x0a, 0x15, - 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb2, 0x01, 0x0a, 0x0e, 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, - 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, - 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, - 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x31, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, - 0x19, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x45, - 0x64, 0x69, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x22, 0x18, 0x0a, 0x16, 0x4d, 0x73, - 0x67, 0x45, 0x64, 0x69, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x62, 0x6f, - 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, - 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x3a, 0x34, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1c, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, - 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x22, 0x1b, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x62, - 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, - 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, - 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, - 0x34, 0x82, 0xe7, 0xb0, 0x2a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1c, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x1b, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, - 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0xf5, 0x01, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, - 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, - 0x65, 0x3a, 0x37, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1e, 0x63, 0x72, 0x6f, 0x73, + 0x2a, 0x1c, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, + 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x1b, + 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf5, 0x01, 0x0a, 0x13, + 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x37, 0x82, 0xe7, 0xb0, 0x2a, + 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x8a, 0xe7, 0xb0, 0x2a, 0x1e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, + 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x22, 0xd9, 0x02, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, + 0x65, 0x53, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, + 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, + 0x65, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, + 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x49, + 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, + 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, + 0x65, 0x3a, 0x3c, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x23, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x22, 0xd9, 0x02, 0x0a, 0x18, 0x4d, - 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, - 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x49, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, - 0x72, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x3c, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, - 0xb0, 0x2a, 0x23, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, - 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0x93, 0x03, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x6e, 0x64, 0x54, 0x6f, 0x46, 0x78, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, + 0x53, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, + 0x93, 0x03, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x46, 0x78, 0x43, + 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, + 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, + 0x43, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, + 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, + 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x5f, 0x69, 0x62, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x49, 0x62, 0x63, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, + 0x34, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1b, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x46, 0x78, + 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0xdf, 0x04, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, + 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x73, 0x12, 0x45, 0x0a, 0x07, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x08, 0x20, 0x03, + 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, + 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, + 0x07, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x46, 0x0a, 0x08, + 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, + 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, + 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, + 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x09, 0x67, 0x61, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, + 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, + 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x08, 0x67, 0x61, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, + 0x6d, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x78, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x3a, + 0x36, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1d, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, + 0x6c, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0xc7, 0x02, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x42, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, + 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, 0x6f, 0x72, 0x69, + 0x67, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x78, 0x4f, 0x72, 0x69, + 0x67, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x61, 0x75, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x61, + 0x75, 0x73, 0x65, 0x3a, 0x3c, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x23, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x22, 0x94, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, + 0x61, 0x6d, 0x65, 0x3a, 0x33, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1a, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x22, 0xa8, 0x02, 0x0a, 0x16, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x43, 0x6c, + 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, + 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, + 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, + 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, + 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x3a, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, + 0x2a, 0x21, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, + 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x43, 0x6c, + 0x61, 0x69, 0x6d, 0x22, 0xdd, 0x02, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x43, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, - 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x49, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, - 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x62, 0x63, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x62, 0x63, 0x12, 0x27, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x79, + 0x6d, 0x62, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x79, 0x6d, 0x62, + 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, - 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x34, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, - 0x1b, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x53, - 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x46, 0x78, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0xdf, 0x04, 0x0a, - 0x12, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6c, - 0x61, 0x69, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, - 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x66, 0x75, 0x6e, - 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x66, 0x75, 0x6e, 0x64, 0x12, - 0x27, 0x0a, 0x0f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x12, 0x45, 0x0a, 0x07, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, - 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, - 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, - 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x74, 0x6f, 0x12, - 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x46, 0x0a, 0x08, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, - 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, - 0x6e, 0x74, 0x52, 0x07, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x09, 0x67, - 0x61, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, - 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, - 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0xd2, 0xb4, 0x2d, - 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x08, 0x67, 0x61, 0x73, - 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, - 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x78, - 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x3a, 0x36, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, - 0x1d, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x42, - 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0xc7, - 0x02, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, - 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, - 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, - 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, - 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, - 0x09, 0x74, 0x78, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x74, 0x78, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x61, 0x75, 0x73, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x61, 0x75, 0x73, 0x65, 0x3a, 0x3c, 0x82, 0xe7, 0xb0, 0x2a, - 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x8a, 0xe7, 0xb0, 0x2a, 0x23, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, - 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0x94, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, - 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, - 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, - 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x33, 0x82, 0xe7, 0xb0, 0x2a, + 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x37, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x8a, 0xe7, 0xb0, 0x2a, 0x1a, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, - 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x22, - 0xa8, 0x02, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, - 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x3a, - 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x21, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0xdd, 0x02, 0x0a, 0x13, 0x4d, - 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6c, 0x61, - 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, - 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, - 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x63, - 0x69, 0x6d, 0x61, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x64, 0x65, 0x63, - 0x69, 0x6d, 0x61, 0x6c, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, - 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, - 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, - 0x6d, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, - 0x65, 0x3a, 0x37, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0xf7, 0x01, 0x0a, 0x14, 0x4d, - 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x72, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, - 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x3a, 0x38, 0x82, 0xe7, 0xb0, 0x2a, - 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x8a, 0xe7, 0xb0, 0x2a, 0x1f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, - 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x22, 0xd7, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, - 0x3e, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x20, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, - 0x2d, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, - 0xe7, 0xb0, 0x2a, 0x1a, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, - 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, - 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbd, 0x01, 0x0a, 0x15, 0x4d, 0x73, - 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, - 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, - 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x72, 0x61, - 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x33, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x20, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, - 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x22, 0x1f, 0x0a, 0x1d, 0x4d, 0x73, 0x67, + 0x8a, 0xe7, 0xb0, 0x2a, 0x1e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, + 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6c, + 0x61, 0x69, 0x6d, 0x22, 0xf7, 0x01, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, + 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, + 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x3a, 0x38, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x1f, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x22, 0xd7, 0x01, + 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x3e, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, + 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, + 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x2d, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x1a, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xbd, 0x01, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x09, 0x61, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, + 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x33, 0x82, + 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, + 0x2a, 0x20, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd8, 0x01, 0x0a, 0x08, 0x4d, - 0x73, 0x67, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, - 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x56, 0x0a, 0x05, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x41, 0x6e, 0x79, 0x42, 0x2a, 0xca, 0xb4, 0x2d, 0x26, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, - 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, - 0x76, 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, - 0x52, 0x05, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x3a, 0x2c, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, - 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, - 0x2a, 0x13, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, - 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0x12, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x69, - 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xda, 0x01, 0x0a, 0x0a, 0x4d, 0x73, - 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, - 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x54, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x42, 0x24, 0xca, 0xb4, 0x2d, 0x20, 0x66, 0x78, 0x2e, + 0x65, 0x73, 0x22, 0x1f, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, + 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0xd8, 0x01, 0x0a, 0x08, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x69, 0x6d, + 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x56, 0x0a, 0x05, 0x63, 0x6c, 0x61, 0x69, + 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x42, 0x2a, 0xca, + 0xb4, 0x2d, 0x26, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x05, 0x63, 0x6c, 0x61, 0x69, 0x6d, + 0x3a, 0x2c, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x13, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x22, 0x12, + 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xda, 0x01, 0x0a, 0x0a, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x69, 0x64, 0x67, + 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x54, 0x0a, 0x07, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, + 0x42, 0x24, 0xca, 0xb4, 0x2d, 0x20, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x3a, + 0x2e, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, 0x15, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x22, + 0x14, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x21, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, + 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x1d, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x22, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x42, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x85, 0x02, 0x0a, 0x11, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, 0x73, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, + 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3e, 0x0a, 0x0a, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x5f, 0x66, 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x09, 0x62, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x46, 0x65, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x3a, 0x2c, 0x82, 0xe7, 0xb0, 0x2a, 0x06, 0x73, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1c, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x22, 0x40, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, + 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x6e, 0x63, + 0x65, 0x3a, 0x02, 0x18, 0x01, 0x32, 0xa3, 0x0c, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x6c, 0x0a, + 0x0c, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x12, 0x29, 0x2e, + 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x6e, 0x64, + 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x1a, 0x31, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, + 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x0b, 0x41, + 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x12, 0x28, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, - 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x07, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x3a, 0x2e, 0x82, 0xe7, 0xb0, 0x2a, 0x0f, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x8a, 0xe7, 0xb0, 0x2a, - 0x15, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x4d, 0x73, 0x67, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x22, 0x14, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xa3, 0x0c, 0x0a, - 0x03, 0x4d, 0x73, 0x67, 0x12, 0x6c, 0x0a, 0x0c, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x12, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, - 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x73, 0x67, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x1a, - 0x31, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x6f, - 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x69, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, - 0x65, 0x12, 0x28, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, - 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x1a, 0x30, 0x2e, 0x66, 0x78, - 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, - 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, - 0x0a, 0x52, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x12, 0x27, 0x2e, 0x66, 0x78, - 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, 0x6c, 0x65, - 0x67, 0x61, 0x74, 0x65, 0x1a, 0x2f, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, + 0x67, 0x61, 0x74, 0x65, 0x1a, 0x30, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x0b, 0x45, 0x64, 0x69, 0x74, 0x42, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x72, 0x12, 0x28, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x0a, 0x52, 0x65, 0x44, 0x65, 0x6c, 0x65, + 0x67, 0x61, 0x74, 0x65, 0x12, 0x27, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x1a, 0x30, - 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, - 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x72, 0x0a, 0x0e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x12, 0x2b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, - 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x1a, - 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x57, 0x69, - 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x0e, 0x55, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, - 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x12, 0x2b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, - 0x63, 0x6c, 0x65, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, - 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, - 0x73, 0x67, 0x55, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x10, 0x4f, 0x72, 0x61, 0x63, - 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x2d, 0x2e, 0x66, - 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, - 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x1a, 0x35, 0x2e, 0x66, 0x78, - 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, - 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x12, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, - 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, - 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x1a, 0x31, 0x2e, + 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x1a, 0x2f, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, - 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x7b, 0x0a, 0x11, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x2e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, - 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x1a, 0x36, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, - 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, - 0x0e, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, - 0x2b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, - 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x65, - 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x1a, 0x33, 0x2e, 0x66, - 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, - 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x6c, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x12, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, - 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x31, 0x2e, 0x66, - 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 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, 0x12, - 0x7e, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, - 0x61, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x2f, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, - 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4f, - 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x1a, 0x37, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, - 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x59, 0x0a, 0x05, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x22, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x44, 0x65, + 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, + 0x0a, 0x0b, 0x45, 0x64, 0x69, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x12, 0x28, 0x2e, + 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, 0x74, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x72, 0x1a, 0x30, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, + 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, 0x74, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x0e, 0x57, 0x69, 0x74, + 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x2b, 0x2e, 0x66, 0x78, + 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, + 0x61, 0x77, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x1a, 0x2a, 0x2e, 0x66, + 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, + 0x0e, 0x55, 0x6e, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x12, + 0x2b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x6e, + 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x69, 0x6d, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x07, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x24, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, + 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x6e, 0x62, 0x6f, 0x6e, + 0x64, 0x65, 0x64, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x78, 0x0a, 0x10, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x2d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x1a, 0x2c, 0x2e, 0x66, 0x78, + 0x2e, 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x1a, 0x35, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x4d, 0x73, 0x67, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0c, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x29, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x1a, 0x05, 0x80, 0xe7, 0xb0, - 0x2a, 0x01, 0x42, 0xe2, 0x01, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, + 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x1a, 0x31, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, + 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x11, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x2e, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x1a, 0x36, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x42, 0x72, 0x69, + 0x64, 0x67, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x0e, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, + 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x2b, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, - 0x2e, 0x76, 0x31, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x36, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, - 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, 0x73, - 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, 0x47, 0x43, 0xaa, 0x02, 0x18, 0x46, - 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x18, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, - 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5c, - 0x56, 0x31, 0xe2, 0x02, 0x24, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, - 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, - 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1b, 0x46, 0x78, 0x3a, 0x3a, - 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x1a, 0x33, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, + 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, + 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0c, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x2e, 0x66, 0x78, 0x2e, + 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, + 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x31, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, + 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 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, 0x12, 0x7e, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x2f, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x1a, + 0x37, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, + 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x05, 0x43, 0x6c, 0x61, 0x69, + 0x6d, 0x12, 0x22, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, + 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x1a, 0x2a, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, + 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, + 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x12, 0x24, + 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, + 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x1a, 0x2c, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0xe2, 0x01, 0x0a, 0x1c, + 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x63, + 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x07, 0x54, 0x78, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x36, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, + 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, + 0x76, 0x69, 0x74, 0x79, 0x2f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2f, + 0x76, 0x31, 0x3b, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x76, 0x31, 0xa2, + 0x02, 0x03, 0x46, 0x47, 0x43, 0xaa, 0x02, 0x18, 0x46, 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, 0x69, + 0x74, 0x79, 0x2e, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e, 0x56, 0x31, + 0xca, 0x02, 0x18, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, + 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x24, 0x46, 0x78, + 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0xea, 0x02, 0x1b, 0x46, 0x78, 0x3a, 0x3a, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x3a, 0x3a, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x3a, 0x3a, 0x56, 0x31, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -18764,7 +21152,7 @@ func file_fx_gravity_crosschain_v1_tx_proto_rawDescGZIP() []byte { return file_fx_gravity_crosschain_v1_tx_proto_rawDescData } -var file_fx_gravity_crosschain_v1_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 29) +var file_fx_gravity_crosschain_v1_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 34) var file_fx_gravity_crosschain_v1_tx_proto_goTypes = []interface{}{ (*MsgBondedOracle)(nil), // 0: fx.gravity.crosschain.v1.MsgBondedOracle (*MsgBondedOracleResponse)(nil), // 1: fx.gravity.crosschain.v1.MsgBondedOracleResponse @@ -18795,56 +21183,58 @@ var file_fx_gravity_crosschain_v1_tx_proto_goTypes = []interface{}{ (*MsgClaimResponse)(nil), // 26: fx.gravity.crosschain.v1.MsgClaimResponse (*MsgConfirm)(nil), // 27: fx.gravity.crosschain.v1.MsgConfirm (*MsgConfirmResponse)(nil), // 28: fx.gravity.crosschain.v1.MsgConfirmResponse - (*v1beta1.Coin)(nil), // 29: cosmos.base.v1beta1.Coin - (*BridgeValidator)(nil), // 30: fx.gravity.crosschain.v1.BridgeValidator - (*Params)(nil), // 31: fx.gravity.crosschain.v1.Params - (*anypb.Any)(nil), // 32: google.protobuf.Any - (*MsgSendToExternal)(nil), // 33: fx.gravity.crosschain.v1.MsgSendToExternal - (*MsgOracleSetConfirmResponse)(nil), // 34: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse - (*MsgConfirmBatchResponse)(nil), // 35: fx.gravity.crosschain.v1.MsgConfirmBatchResponse - (*MsgBridgeCallConfirmResponse)(nil), // 36: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse - (*MsgSendToExternalResponse)(nil), // 37: fx.gravity.crosschain.v1.MsgSendToExternalResponse + (*MsgOracleSetConfirmResponse)(nil), // 29: fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse + (*MsgConfirmBatchResponse)(nil), // 30: fx.gravity.crosschain.v1.MsgConfirmBatchResponse + (*MsgBridgeCallConfirmResponse)(nil), // 31: fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse + (*MsgSendToExternal)(nil), // 32: fx.gravity.crosschain.v1.MsgSendToExternal + (*MsgSendToExternalResponse)(nil), // 33: fx.gravity.crosschain.v1.MsgSendToExternalResponse + (*v1beta1.Coin)(nil), // 34: cosmos.base.v1beta1.Coin + (*BridgeValidator)(nil), // 35: fx.gravity.crosschain.v1.BridgeValidator + (*Params)(nil), // 36: fx.gravity.crosschain.v1.Params + (*anypb.Any)(nil), // 37: google.protobuf.Any } var file_fx_gravity_crosschain_v1_tx_proto_depIdxs = []int32{ - 29, // 0: fx.gravity.crosschain.v1.MsgBondedOracle.delegate_amount:type_name -> cosmos.base.v1beta1.Coin - 29, // 1: fx.gravity.crosschain.v1.MsgAddDelegate.amount:type_name -> cosmos.base.v1beta1.Coin - 30, // 2: fx.gravity.crosschain.v1.MsgOracleSetUpdatedClaim.members:type_name -> fx.gravity.crosschain.v1.BridgeValidator - 31, // 3: fx.gravity.crosschain.v1.MsgUpdateParams.params:type_name -> fx.gravity.crosschain.v1.Params - 32, // 4: fx.gravity.crosschain.v1.MsgClaim.claim:type_name -> google.protobuf.Any - 32, // 5: fx.gravity.crosschain.v1.MsgConfirm.confirm:type_name -> google.protobuf.Any - 0, // 6: fx.gravity.crosschain.v1.Msg.BondedOracle:input_type -> fx.gravity.crosschain.v1.MsgBondedOracle - 2, // 7: fx.gravity.crosschain.v1.Msg.AddDelegate:input_type -> fx.gravity.crosschain.v1.MsgAddDelegate - 4, // 8: fx.gravity.crosschain.v1.Msg.ReDelegate:input_type -> fx.gravity.crosschain.v1.MsgReDelegate - 6, // 9: fx.gravity.crosschain.v1.Msg.EditBridger:input_type -> fx.gravity.crosschain.v1.MsgEditBridger - 10, // 10: fx.gravity.crosschain.v1.Msg.WithdrawReward:input_type -> fx.gravity.crosschain.v1.MsgWithdrawReward - 8, // 11: fx.gravity.crosschain.v1.Msg.UnbondedOracle:input_type -> fx.gravity.crosschain.v1.MsgUnbondedOracle - 12, // 12: fx.gravity.crosschain.v1.Msg.OracleSetConfirm:input_type -> fx.gravity.crosschain.v1.MsgOracleSetConfirm - 17, // 13: fx.gravity.crosschain.v1.Msg.ConfirmBatch:input_type -> fx.gravity.crosschain.v1.MsgConfirmBatch - 20, // 14: fx.gravity.crosschain.v1.Msg.BridgeCallConfirm:input_type -> fx.gravity.crosschain.v1.MsgBridgeCallConfirm - 33, // 15: fx.gravity.crosschain.v1.Msg.SendToExternal:input_type -> fx.gravity.crosschain.v1.MsgSendToExternal - 21, // 16: fx.gravity.crosschain.v1.Msg.UpdateParams:input_type -> fx.gravity.crosschain.v1.MsgUpdateParams - 23, // 17: fx.gravity.crosschain.v1.Msg.UpdateChainOracles:input_type -> fx.gravity.crosschain.v1.MsgUpdateChainOracles - 25, // 18: fx.gravity.crosschain.v1.Msg.Claim:input_type -> fx.gravity.crosschain.v1.MsgClaim - 27, // 19: fx.gravity.crosschain.v1.Msg.Confirm:input_type -> fx.gravity.crosschain.v1.MsgConfirm - 1, // 20: fx.gravity.crosschain.v1.Msg.BondedOracle:output_type -> fx.gravity.crosschain.v1.MsgBondedOracleResponse - 3, // 21: fx.gravity.crosschain.v1.Msg.AddDelegate:output_type -> fx.gravity.crosschain.v1.MsgAddDelegateResponse - 5, // 22: fx.gravity.crosschain.v1.Msg.ReDelegate:output_type -> fx.gravity.crosschain.v1.MsgReDelegateResponse - 7, // 23: fx.gravity.crosschain.v1.Msg.EditBridger:output_type -> fx.gravity.crosschain.v1.MsgEditBridgerResponse - 11, // 24: fx.gravity.crosschain.v1.Msg.WithdrawReward:output_type -> fx.gravity.crosschain.v1.MsgWithdrawRewardResponse - 9, // 25: fx.gravity.crosschain.v1.Msg.UnbondedOracle:output_type -> fx.gravity.crosschain.v1.MsgUnbondedOracleResponse - 34, // 26: fx.gravity.crosschain.v1.Msg.OracleSetConfirm:output_type -> fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse - 35, // 27: fx.gravity.crosschain.v1.Msg.ConfirmBatch:output_type -> fx.gravity.crosschain.v1.MsgConfirmBatchResponse - 36, // 28: fx.gravity.crosschain.v1.Msg.BridgeCallConfirm:output_type -> fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse - 37, // 29: fx.gravity.crosschain.v1.Msg.SendToExternal:output_type -> fx.gravity.crosschain.v1.MsgSendToExternalResponse - 22, // 30: fx.gravity.crosschain.v1.Msg.UpdateParams:output_type -> fx.gravity.crosschain.v1.MsgUpdateParamsResponse - 24, // 31: fx.gravity.crosschain.v1.Msg.UpdateChainOracles:output_type -> fx.gravity.crosschain.v1.MsgUpdateChainOraclesResponse - 26, // 32: fx.gravity.crosschain.v1.Msg.Claim:output_type -> fx.gravity.crosschain.v1.MsgClaimResponse - 28, // 33: fx.gravity.crosschain.v1.Msg.Confirm:output_type -> fx.gravity.crosschain.v1.MsgConfirmResponse - 20, // [20:34] is the sub-list for method output_type - 6, // [6:20] is the sub-list for method input_type - 6, // [6:6] is the sub-list for extension type_name - 6, // [6:6] is the sub-list for extension extendee - 0, // [0:6] is the sub-list for field type_name + 34, // 0: fx.gravity.crosschain.v1.MsgBondedOracle.delegate_amount:type_name -> cosmos.base.v1beta1.Coin + 34, // 1: fx.gravity.crosschain.v1.MsgAddDelegate.amount:type_name -> cosmos.base.v1beta1.Coin + 35, // 2: fx.gravity.crosschain.v1.MsgOracleSetUpdatedClaim.members:type_name -> fx.gravity.crosschain.v1.BridgeValidator + 36, // 3: fx.gravity.crosschain.v1.MsgUpdateParams.params:type_name -> fx.gravity.crosschain.v1.Params + 37, // 4: fx.gravity.crosschain.v1.MsgClaim.claim:type_name -> google.protobuf.Any + 37, // 5: fx.gravity.crosschain.v1.MsgConfirm.confirm:type_name -> google.protobuf.Any + 34, // 6: fx.gravity.crosschain.v1.MsgSendToExternal.amount:type_name -> cosmos.base.v1beta1.Coin + 34, // 7: fx.gravity.crosschain.v1.MsgSendToExternal.bridge_fee:type_name -> cosmos.base.v1beta1.Coin + 0, // 8: fx.gravity.crosschain.v1.Msg.BondedOracle:input_type -> fx.gravity.crosschain.v1.MsgBondedOracle + 2, // 9: fx.gravity.crosschain.v1.Msg.AddDelegate:input_type -> fx.gravity.crosschain.v1.MsgAddDelegate + 4, // 10: fx.gravity.crosschain.v1.Msg.ReDelegate:input_type -> fx.gravity.crosschain.v1.MsgReDelegate + 6, // 11: fx.gravity.crosschain.v1.Msg.EditBridger:input_type -> fx.gravity.crosschain.v1.MsgEditBridger + 10, // 12: fx.gravity.crosschain.v1.Msg.WithdrawReward:input_type -> fx.gravity.crosschain.v1.MsgWithdrawReward + 8, // 13: fx.gravity.crosschain.v1.Msg.UnbondedOracle:input_type -> fx.gravity.crosschain.v1.MsgUnbondedOracle + 12, // 14: fx.gravity.crosschain.v1.Msg.OracleSetConfirm:input_type -> fx.gravity.crosschain.v1.MsgOracleSetConfirm + 17, // 15: fx.gravity.crosschain.v1.Msg.ConfirmBatch:input_type -> fx.gravity.crosschain.v1.MsgConfirmBatch + 20, // 16: fx.gravity.crosschain.v1.Msg.BridgeCallConfirm:input_type -> fx.gravity.crosschain.v1.MsgBridgeCallConfirm + 32, // 17: fx.gravity.crosschain.v1.Msg.SendToExternal:input_type -> fx.gravity.crosschain.v1.MsgSendToExternal + 21, // 18: fx.gravity.crosschain.v1.Msg.UpdateParams:input_type -> fx.gravity.crosschain.v1.MsgUpdateParams + 23, // 19: fx.gravity.crosschain.v1.Msg.UpdateChainOracles:input_type -> fx.gravity.crosschain.v1.MsgUpdateChainOracles + 25, // 20: fx.gravity.crosschain.v1.Msg.Claim:input_type -> fx.gravity.crosschain.v1.MsgClaim + 27, // 21: fx.gravity.crosschain.v1.Msg.Confirm:input_type -> fx.gravity.crosschain.v1.MsgConfirm + 1, // 22: fx.gravity.crosschain.v1.Msg.BondedOracle:output_type -> fx.gravity.crosschain.v1.MsgBondedOracleResponse + 3, // 23: fx.gravity.crosschain.v1.Msg.AddDelegate:output_type -> fx.gravity.crosschain.v1.MsgAddDelegateResponse + 5, // 24: fx.gravity.crosschain.v1.Msg.ReDelegate:output_type -> fx.gravity.crosschain.v1.MsgReDelegateResponse + 7, // 25: fx.gravity.crosschain.v1.Msg.EditBridger:output_type -> fx.gravity.crosschain.v1.MsgEditBridgerResponse + 11, // 26: fx.gravity.crosschain.v1.Msg.WithdrawReward:output_type -> fx.gravity.crosschain.v1.MsgWithdrawRewardResponse + 9, // 27: fx.gravity.crosschain.v1.Msg.UnbondedOracle:output_type -> fx.gravity.crosschain.v1.MsgUnbondedOracleResponse + 29, // 28: fx.gravity.crosschain.v1.Msg.OracleSetConfirm:output_type -> fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse + 30, // 29: fx.gravity.crosschain.v1.Msg.ConfirmBatch:output_type -> fx.gravity.crosschain.v1.MsgConfirmBatchResponse + 31, // 30: fx.gravity.crosschain.v1.Msg.BridgeCallConfirm:output_type -> fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse + 33, // 31: fx.gravity.crosschain.v1.Msg.SendToExternal:output_type -> fx.gravity.crosschain.v1.MsgSendToExternalResponse + 22, // 32: fx.gravity.crosschain.v1.Msg.UpdateParams:output_type -> fx.gravity.crosschain.v1.MsgUpdateParamsResponse + 24, // 33: fx.gravity.crosschain.v1.Msg.UpdateChainOracles:output_type -> fx.gravity.crosschain.v1.MsgUpdateChainOraclesResponse + 26, // 34: fx.gravity.crosschain.v1.Msg.Claim:output_type -> fx.gravity.crosschain.v1.MsgClaimResponse + 28, // 35: fx.gravity.crosschain.v1.Msg.Confirm:output_type -> fx.gravity.crosschain.v1.MsgConfirmResponse + 22, // [22:36] is the sub-list for method output_type + 8, // [8:22] is the sub-list for method input_type + 8, // [8:8] is the sub-list for extension type_name + 8, // [8:8] is the sub-list for extension extendee + 0, // [0:8] is the sub-list for field type_name } func init() { file_fx_gravity_crosschain_v1_tx_proto_init() } @@ -18853,7 +21243,6 @@ func file_fx_gravity_crosschain_v1_tx_proto_init() { return } file_fx_gravity_crosschain_v1_types_proto_init() - file_fx_gravity_crosschain_v1_legacy_proto_init() if !protoimpl.UnsafeEnabled { file_fx_gravity_crosschain_v1_tx_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgBondedOracle); i { @@ -19203,6 +21592,66 @@ func file_fx_gravity_crosschain_v1_tx_proto_init() { return nil } } + file_fx_gravity_crosschain_v1_tx_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgOracleSetConfirmResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_tx_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgConfirmBatchResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_tx_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgBridgeCallConfirmResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_tx_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgSendToExternal); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_crosschain_v1_tx_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgSendToExternalResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -19210,7 +21659,7 @@ func file_fx_gravity_crosschain_v1_tx_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_fx_gravity_crosschain_v1_tx_proto_rawDesc, NumEnums: 0, - NumMessages: 29, + NumMessages: 34, NumExtensions: 0, NumServices: 1, }, diff --git a/api/fx/gravity/v1/gravity_legacy.pulsar.go b/api/fx/gravity/v1/gravity_legacy.pulsar.go index 5df4c35e..fc99589b 100644 --- a/api/fx/gravity/v1/gravity_legacy.pulsar.go +++ b/api/fx/gravity/v1/gravity_legacy.pulsar.go @@ -1253,33 +1253,33 @@ func (x *fastReflection_MsgSendToEth) ProtoMethods() *protoiface.Methods { } var ( - md_MsgRequestBatch protoreflect.MessageDescriptor - fd_MsgRequestBatch_sender protoreflect.FieldDescriptor - fd_MsgRequestBatch_denom protoreflect.FieldDescriptor - fd_MsgRequestBatch_minimum_fee protoreflect.FieldDescriptor - fd_MsgRequestBatch_fee_receive protoreflect.FieldDescriptor - fd_MsgRequestBatch_base_fee protoreflect.FieldDescriptor + md_MsgConfirmBatch protoreflect.MessageDescriptor + fd_MsgConfirmBatch_nonce protoreflect.FieldDescriptor + fd_MsgConfirmBatch_token_contract protoreflect.FieldDescriptor + fd_MsgConfirmBatch_eth_signer protoreflect.FieldDescriptor + fd_MsgConfirmBatch_orchestrator protoreflect.FieldDescriptor + fd_MsgConfirmBatch_signature protoreflect.FieldDescriptor ) func init() { file_fx_gravity_v1_gravity_legacy_proto_init() - md_MsgRequestBatch = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgRequestBatch") - fd_MsgRequestBatch_sender = md_MsgRequestBatch.Fields().ByName("sender") - fd_MsgRequestBatch_denom = md_MsgRequestBatch.Fields().ByName("denom") - fd_MsgRequestBatch_minimum_fee = md_MsgRequestBatch.Fields().ByName("minimum_fee") - fd_MsgRequestBatch_fee_receive = md_MsgRequestBatch.Fields().ByName("fee_receive") - fd_MsgRequestBatch_base_fee = md_MsgRequestBatch.Fields().ByName("base_fee") + md_MsgConfirmBatch = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgConfirmBatch") + fd_MsgConfirmBatch_nonce = md_MsgConfirmBatch.Fields().ByName("nonce") + fd_MsgConfirmBatch_token_contract = md_MsgConfirmBatch.Fields().ByName("token_contract") + fd_MsgConfirmBatch_eth_signer = md_MsgConfirmBatch.Fields().ByName("eth_signer") + fd_MsgConfirmBatch_orchestrator = md_MsgConfirmBatch.Fields().ByName("orchestrator") + fd_MsgConfirmBatch_signature = md_MsgConfirmBatch.Fields().ByName("signature") } -var _ protoreflect.Message = (*fastReflection_MsgRequestBatch)(nil) +var _ protoreflect.Message = (*fastReflection_MsgConfirmBatch)(nil) -type fastReflection_MsgRequestBatch MsgRequestBatch +type fastReflection_MsgConfirmBatch MsgConfirmBatch -func (x *MsgRequestBatch) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgRequestBatch)(x) +func (x *MsgConfirmBatch) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgConfirmBatch)(x) } -func (x *MsgRequestBatch) slowProtoReflect() protoreflect.Message { +func (x *MsgConfirmBatch) slowProtoReflect() protoreflect.Message { mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1291,43 +1291,43 @@ func (x *MsgRequestBatch) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_MsgRequestBatch_messageType fastReflection_MsgRequestBatch_messageType -var _ protoreflect.MessageType = fastReflection_MsgRequestBatch_messageType{} +var _fastReflection_MsgConfirmBatch_messageType fastReflection_MsgConfirmBatch_messageType +var _ protoreflect.MessageType = fastReflection_MsgConfirmBatch_messageType{} -type fastReflection_MsgRequestBatch_messageType struct{} +type fastReflection_MsgConfirmBatch_messageType struct{} -func (x fastReflection_MsgRequestBatch_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgRequestBatch)(nil) +func (x fastReflection_MsgConfirmBatch_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgConfirmBatch)(nil) } -func (x fastReflection_MsgRequestBatch_messageType) New() protoreflect.Message { - return new(fastReflection_MsgRequestBatch) +func (x fastReflection_MsgConfirmBatch_messageType) New() protoreflect.Message { + return new(fastReflection_MsgConfirmBatch) } -func (x fastReflection_MsgRequestBatch_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRequestBatch +func (x fastReflection_MsgConfirmBatch_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgConfirmBatch } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_MsgRequestBatch) Descriptor() protoreflect.MessageDescriptor { - return md_MsgRequestBatch +func (x *fastReflection_MsgConfirmBatch) Descriptor() protoreflect.MessageDescriptor { + return md_MsgConfirmBatch } // 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_MsgRequestBatch) Type() protoreflect.MessageType { - return _fastReflection_MsgRequestBatch_messageType +func (x *fastReflection_MsgConfirmBatch) Type() protoreflect.MessageType { + return _fastReflection_MsgConfirmBatch_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgRequestBatch) New() protoreflect.Message { - return new(fastReflection_MsgRequestBatch) +func (x *fastReflection_MsgConfirmBatch) New() protoreflect.Message { + return new(fastReflection_MsgConfirmBatch) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgRequestBatch) Interface() protoreflect.ProtoMessage { - return (*MsgRequestBatch)(x) +func (x *fastReflection_MsgConfirmBatch) Interface() protoreflect.ProtoMessage { + return (*MsgConfirmBatch)(x) } // Range iterates over every populated field in an undefined order, @@ -1335,34 +1335,34 @@ func (x *fastReflection_MsgRequestBatch) Interface() protoreflect.ProtoMessage { // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_MsgRequestBatch) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Sender != "" { - value := protoreflect.ValueOfString(x.Sender) - if !f(fd_MsgRequestBatch_sender, value) { +func (x *fastReflection_MsgConfirmBatch) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Nonce != uint64(0) { + value := protoreflect.ValueOfUint64(x.Nonce) + if !f(fd_MsgConfirmBatch_nonce, value) { return } } - if x.Denom != "" { - value := protoreflect.ValueOfString(x.Denom) - if !f(fd_MsgRequestBatch_denom, value) { + if x.TokenContract != "" { + value := protoreflect.ValueOfString(x.TokenContract) + if !f(fd_MsgConfirmBatch_token_contract, value) { return } } - if x.MinimumFee != "" { - value := protoreflect.ValueOfString(x.MinimumFee) - if !f(fd_MsgRequestBatch_minimum_fee, value) { + if x.EthSigner != "" { + value := protoreflect.ValueOfString(x.EthSigner) + if !f(fd_MsgConfirmBatch_eth_signer, value) { return } } - if x.FeeReceive != "" { - value := protoreflect.ValueOfString(x.FeeReceive) - if !f(fd_MsgRequestBatch_fee_receive, value) { + if x.Orchestrator != "" { + value := protoreflect.ValueOfString(x.Orchestrator) + if !f(fd_MsgConfirmBatch_orchestrator, value) { return } } - if x.BaseFee != "" { - value := protoreflect.ValueOfString(x.BaseFee) - if !f(fd_MsgRequestBatch_base_fee, value) { + if x.Signature != "" { + value := protoreflect.ValueOfString(x.Signature) + if !f(fd_MsgConfirmBatch_signature, value) { return } } @@ -1379,23 +1379,23 @@ func (x *fastReflection_MsgRequestBatch) Range(f func(protoreflect.FieldDescript // 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_MsgRequestBatch) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_MsgConfirmBatch) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.gravity.v1.MsgRequestBatch.sender": - return x.Sender != "" - case "fx.gravity.v1.MsgRequestBatch.denom": - return x.Denom != "" - case "fx.gravity.v1.MsgRequestBatch.minimum_fee": - return x.MinimumFee != "" - case "fx.gravity.v1.MsgRequestBatch.fee_receive": - return x.FeeReceive != "" - case "fx.gravity.v1.MsgRequestBatch.base_fee": - return x.BaseFee != "" + case "fx.gravity.v1.MsgConfirmBatch.nonce": + return x.Nonce != uint64(0) + case "fx.gravity.v1.MsgConfirmBatch.token_contract": + return x.TokenContract != "" + case "fx.gravity.v1.MsgConfirmBatch.eth_signer": + return x.EthSigner != "" + case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + return x.Orchestrator != "" + case "fx.gravity.v1.MsgConfirmBatch.signature": + return x.Signature != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", fd.FullName())) } } @@ -1405,23 +1405,23 @@ func (x *fastReflection_MsgRequestBatch) Has(fd protoreflect.FieldDescriptor) bo // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgRequestBatch) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_MsgConfirmBatch) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.gravity.v1.MsgRequestBatch.sender": - x.Sender = "" - case "fx.gravity.v1.MsgRequestBatch.denom": - x.Denom = "" - case "fx.gravity.v1.MsgRequestBatch.minimum_fee": - x.MinimumFee = "" - case "fx.gravity.v1.MsgRequestBatch.fee_receive": - x.FeeReceive = "" - case "fx.gravity.v1.MsgRequestBatch.base_fee": - x.BaseFee = "" + case "fx.gravity.v1.MsgConfirmBatch.nonce": + x.Nonce = uint64(0) + case "fx.gravity.v1.MsgConfirmBatch.token_contract": + x.TokenContract = "" + case "fx.gravity.v1.MsgConfirmBatch.eth_signer": + x.EthSigner = "" + case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + x.Orchestrator = "" + case "fx.gravity.v1.MsgConfirmBatch.signature": + x.Signature = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", fd.FullName())) } } @@ -1431,28 +1431,28 @@ func (x *fastReflection_MsgRequestBatch) Clear(fd protoreflect.FieldDescriptor) // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_MsgRequestBatch) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgConfirmBatch) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.gravity.v1.MsgRequestBatch.sender": - value := x.Sender - return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgRequestBatch.denom": - value := x.Denom + case "fx.gravity.v1.MsgConfirmBatch.nonce": + value := x.Nonce + return protoreflect.ValueOfUint64(value) + case "fx.gravity.v1.MsgConfirmBatch.token_contract": + value := x.TokenContract return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgRequestBatch.minimum_fee": - value := x.MinimumFee + case "fx.gravity.v1.MsgConfirmBatch.eth_signer": + value := x.EthSigner return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgRequestBatch.fee_receive": - value := x.FeeReceive + case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + value := x.Orchestrator return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgRequestBatch.base_fee": - value := x.BaseFee + case "fx.gravity.v1.MsgConfirmBatch.signature": + value := x.Signature return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", descriptor.FullName())) } } @@ -1466,23 +1466,23 @@ func (x *fastReflection_MsgRequestBatch) Get(descriptor protoreflect.FieldDescri // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgRequestBatch) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_MsgConfirmBatch) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.gravity.v1.MsgRequestBatch.sender": - x.Sender = value.Interface().(string) - case "fx.gravity.v1.MsgRequestBatch.denom": - x.Denom = value.Interface().(string) - case "fx.gravity.v1.MsgRequestBatch.minimum_fee": - x.MinimumFee = value.Interface().(string) - case "fx.gravity.v1.MsgRequestBatch.fee_receive": - x.FeeReceive = value.Interface().(string) - case "fx.gravity.v1.MsgRequestBatch.base_fee": - x.BaseFee = value.Interface().(string) + case "fx.gravity.v1.MsgConfirmBatch.nonce": + x.Nonce = value.Uint() + case "fx.gravity.v1.MsgConfirmBatch.token_contract": + x.TokenContract = value.Interface().(string) + case "fx.gravity.v1.MsgConfirmBatch.eth_signer": + x.EthSigner = value.Interface().(string) + case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + x.Orchestrator = value.Interface().(string) + case "fx.gravity.v1.MsgConfirmBatch.signature": + x.Signature = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", fd.FullName())) } } @@ -1496,56 +1496,56 @@ func (x *fastReflection_MsgRequestBatch) Set(fd protoreflect.FieldDescriptor, va // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgRequestBatch) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgConfirmBatch) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgRequestBatch.sender": - panic(fmt.Errorf("field sender of message fx.gravity.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.v1.MsgRequestBatch.denom": - panic(fmt.Errorf("field denom of message fx.gravity.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.v1.MsgRequestBatch.minimum_fee": - panic(fmt.Errorf("field minimum_fee of message fx.gravity.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.v1.MsgRequestBatch.fee_receive": - panic(fmt.Errorf("field fee_receive of message fx.gravity.v1.MsgRequestBatch is not mutable")) - case "fx.gravity.v1.MsgRequestBatch.base_fee": - panic(fmt.Errorf("field base_fee of message fx.gravity.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.v1.MsgConfirmBatch.nonce": + panic(fmt.Errorf("field nonce of message fx.gravity.v1.MsgConfirmBatch is not mutable")) + case "fx.gravity.v1.MsgConfirmBatch.token_contract": + panic(fmt.Errorf("field token_contract of message fx.gravity.v1.MsgConfirmBatch is not mutable")) + case "fx.gravity.v1.MsgConfirmBatch.eth_signer": + panic(fmt.Errorf("field eth_signer of message fx.gravity.v1.MsgConfirmBatch is not mutable")) + case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgConfirmBatch is not mutable")) + case "fx.gravity.v1.MsgConfirmBatch.signature": + panic(fmt.Errorf("field signature of message fx.gravity.v1.MsgConfirmBatch is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch 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_MsgRequestBatch) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgConfirmBatch) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgRequestBatch.sender": - return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgRequestBatch.denom": + case "fx.gravity.v1.MsgConfirmBatch.nonce": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.v1.MsgConfirmBatch.token_contract": return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgRequestBatch.minimum_fee": + case "fx.gravity.v1.MsgConfirmBatch.eth_signer": return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgRequestBatch.fee_receive": + case "fx.gravity.v1.MsgConfirmBatch.orchestrator": return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgRequestBatch.base_fee": + case "fx.gravity.v1.MsgConfirmBatch.signature": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch 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_MsgRequestBatch) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_MsgConfirmBatch) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgRequestBatch", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgConfirmBatch", d.FullName())) } panic("unreachable") } @@ -1553,7 +1553,7 @@ func (x *fastReflection_MsgRequestBatch) WhichOneof(d protoreflect.OneofDescript // 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_MsgRequestBatch) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_MsgConfirmBatch) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -1564,7 +1564,7 @@ func (x *fastReflection_MsgRequestBatch) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgRequestBatch) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_MsgConfirmBatch) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -1576,7 +1576,7 @@ func (x *fastReflection_MsgRequestBatch) SetUnknown(fields protoreflect.RawField // 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_MsgRequestBatch) IsValid() bool { +func (x *fastReflection_MsgConfirmBatch) IsValid() bool { return x != nil } @@ -1586,9 +1586,9 @@ func (x *fastReflection_MsgRequestBatch) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgRequestBatch) + x := input.Message.Interface().(*MsgConfirmBatch) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1600,23 +1600,22 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { var n int var l int _ = l - l = len(x.Sender) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) + if x.Nonce != 0 { + n += 1 + runtime.Sov(uint64(x.Nonce)) } - l = len(x.Denom) + l = len(x.TokenContract) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - l = len(x.MinimumFee) + l = len(x.EthSigner) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - l = len(x.FeeReceive) + l = len(x.Orchestrator) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - l = len(x.BaseFee) + l = len(x.Signature) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -1630,7 +1629,7 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgRequestBatch) + x := input.Message.Interface().(*MsgConfirmBatch) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1649,40 +1648,38 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.BaseFee) > 0 { - i -= len(x.BaseFee) - copy(dAtA[i:], x.BaseFee) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.BaseFee))) + if len(x.Signature) > 0 { + i -= len(x.Signature) + copy(dAtA[i:], x.Signature) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Signature))) i-- dAtA[i] = 0x2a } - if len(x.FeeReceive) > 0 { - i -= len(x.FeeReceive) - copy(dAtA[i:], x.FeeReceive) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.FeeReceive))) + if len(x.Orchestrator) > 0 { + i -= len(x.Orchestrator) + copy(dAtA[i:], x.Orchestrator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Orchestrator))) i-- dAtA[i] = 0x22 } - if len(x.MinimumFee) > 0 { - i -= len(x.MinimumFee) - copy(dAtA[i:], x.MinimumFee) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.MinimumFee))) + if len(x.EthSigner) > 0 { + i -= len(x.EthSigner) + copy(dAtA[i:], x.EthSigner) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.EthSigner))) i-- dAtA[i] = 0x1a } - if len(x.Denom) > 0 { - i -= len(x.Denom) - copy(dAtA[i:], x.Denom) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Denom))) + if len(x.TokenContract) > 0 { + i -= len(x.TokenContract) + copy(dAtA[i:], x.TokenContract) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TokenContract))) i-- dAtA[i] = 0x12 } - if len(x.Sender) > 0 { - i -= len(x.Sender) - copy(dAtA[i:], x.Sender) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) + if x.Nonce != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.Nonce)) i-- - dAtA[i] = 0xa + dAtA[i] = 0x8 } if input.Buf != nil { input.Buf = append(input.Buf, dAtA...) @@ -1695,7 +1692,7 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgRequestBatch) + x := input.Message.Interface().(*MsgConfirmBatch) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -1727,17 +1724,17 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRequestBatch: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgConfirmBatch: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRequestBatch: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgConfirmBatch: 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 Sender", wireType) + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) } - var stringLen uint64 + x.Nonce = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -1747,27 +1744,14 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + x.Nonce |= 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.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex case 2: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TokenContract", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -1795,11 +1779,11 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Denom = string(dAtA[iNdEx:postIndex]) + x.TokenContract = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field MinimumFee", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EthSigner", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -1827,11 +1811,11 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.MinimumFee = string(dAtA[iNdEx:postIndex]) + x.EthSigner = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field FeeReceive", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -1859,11 +1843,11 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.FeeReceive = string(dAtA[iNdEx:postIndex]) + x.Orchestrator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 5: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BaseFee", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Signature", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -1891,7 +1875,7 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.BaseFee = string(dAtA[iNdEx:postIndex]) + x.Signature = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -1929,33 +1913,39 @@ func (x *fastReflection_MsgRequestBatch) ProtoMethods() *protoiface.Methods { } var ( - md_MsgConfirmBatch protoreflect.MessageDescriptor - fd_MsgConfirmBatch_nonce protoreflect.FieldDescriptor - fd_MsgConfirmBatch_token_contract protoreflect.FieldDescriptor - fd_MsgConfirmBatch_eth_signer protoreflect.FieldDescriptor - fd_MsgConfirmBatch_orchestrator protoreflect.FieldDescriptor - fd_MsgConfirmBatch_signature protoreflect.FieldDescriptor + md_MsgDepositClaim protoreflect.MessageDescriptor + fd_MsgDepositClaim_event_nonce protoreflect.FieldDescriptor + fd_MsgDepositClaim_block_height protoreflect.FieldDescriptor + fd_MsgDepositClaim_token_contract protoreflect.FieldDescriptor + fd_MsgDepositClaim_amount protoreflect.FieldDescriptor + fd_MsgDepositClaim_eth_sender protoreflect.FieldDescriptor + fd_MsgDepositClaim_fx_receiver protoreflect.FieldDescriptor + fd_MsgDepositClaim_target_ibc protoreflect.FieldDescriptor + fd_MsgDepositClaim_orchestrator protoreflect.FieldDescriptor ) func init() { file_fx_gravity_v1_gravity_legacy_proto_init() - md_MsgConfirmBatch = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgConfirmBatch") - fd_MsgConfirmBatch_nonce = md_MsgConfirmBatch.Fields().ByName("nonce") - fd_MsgConfirmBatch_token_contract = md_MsgConfirmBatch.Fields().ByName("token_contract") - fd_MsgConfirmBatch_eth_signer = md_MsgConfirmBatch.Fields().ByName("eth_signer") - fd_MsgConfirmBatch_orchestrator = md_MsgConfirmBatch.Fields().ByName("orchestrator") - fd_MsgConfirmBatch_signature = md_MsgConfirmBatch.Fields().ByName("signature") + md_MsgDepositClaim = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgDepositClaim") + fd_MsgDepositClaim_event_nonce = md_MsgDepositClaim.Fields().ByName("event_nonce") + fd_MsgDepositClaim_block_height = md_MsgDepositClaim.Fields().ByName("block_height") + fd_MsgDepositClaim_token_contract = md_MsgDepositClaim.Fields().ByName("token_contract") + fd_MsgDepositClaim_amount = md_MsgDepositClaim.Fields().ByName("amount") + fd_MsgDepositClaim_eth_sender = md_MsgDepositClaim.Fields().ByName("eth_sender") + fd_MsgDepositClaim_fx_receiver = md_MsgDepositClaim.Fields().ByName("fx_receiver") + fd_MsgDepositClaim_target_ibc = md_MsgDepositClaim.Fields().ByName("target_ibc") + fd_MsgDepositClaim_orchestrator = md_MsgDepositClaim.Fields().ByName("orchestrator") } -var _ protoreflect.Message = (*fastReflection_MsgConfirmBatch)(nil) +var _ protoreflect.Message = (*fastReflection_MsgDepositClaim)(nil) -type fastReflection_MsgConfirmBatch MsgConfirmBatch +type fastReflection_MsgDepositClaim MsgDepositClaim -func (x *MsgConfirmBatch) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgConfirmBatch)(x) +func (x *MsgDepositClaim) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgDepositClaim)(x) } -func (x *MsgConfirmBatch) slowProtoReflect() protoreflect.Message { +func (x *MsgDepositClaim) slowProtoReflect() protoreflect.Message { mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1967,43 +1957,43 @@ func (x *MsgConfirmBatch) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_MsgConfirmBatch_messageType fastReflection_MsgConfirmBatch_messageType -var _ protoreflect.MessageType = fastReflection_MsgConfirmBatch_messageType{} +var _fastReflection_MsgDepositClaim_messageType fastReflection_MsgDepositClaim_messageType +var _ protoreflect.MessageType = fastReflection_MsgDepositClaim_messageType{} -type fastReflection_MsgConfirmBatch_messageType struct{} +type fastReflection_MsgDepositClaim_messageType struct{} -func (x fastReflection_MsgConfirmBatch_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgConfirmBatch)(nil) +func (x fastReflection_MsgDepositClaim_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgDepositClaim)(nil) } -func (x fastReflection_MsgConfirmBatch_messageType) New() protoreflect.Message { - return new(fastReflection_MsgConfirmBatch) +func (x fastReflection_MsgDepositClaim_messageType) New() protoreflect.Message { + return new(fastReflection_MsgDepositClaim) } -func (x fastReflection_MsgConfirmBatch_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgConfirmBatch +func (x fastReflection_MsgDepositClaim_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgDepositClaim } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_MsgConfirmBatch) Descriptor() protoreflect.MessageDescriptor { - return md_MsgConfirmBatch +func (x *fastReflection_MsgDepositClaim) Descriptor() protoreflect.MessageDescriptor { + return md_MsgDepositClaim } // 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_MsgConfirmBatch) Type() protoreflect.MessageType { - return _fastReflection_MsgConfirmBatch_messageType +func (x *fastReflection_MsgDepositClaim) Type() protoreflect.MessageType { + return _fastReflection_MsgDepositClaim_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgConfirmBatch) New() protoreflect.Message { - return new(fastReflection_MsgConfirmBatch) +func (x *fastReflection_MsgDepositClaim) New() protoreflect.Message { + return new(fastReflection_MsgDepositClaim) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgConfirmBatch) Interface() protoreflect.ProtoMessage { - return (*MsgConfirmBatch)(x) +func (x *fastReflection_MsgDepositClaim) Interface() protoreflect.ProtoMessage { + return (*MsgDepositClaim)(x) } // Range iterates over every populated field in an undefined order, @@ -2011,34 +2001,52 @@ func (x *fastReflection_MsgConfirmBatch) Interface() protoreflect.ProtoMessage { // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_MsgConfirmBatch) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Nonce != uint64(0) { - value := protoreflect.ValueOfUint64(x.Nonce) - if !f(fd_MsgConfirmBatch_nonce, value) { +func (x *fastReflection_MsgDepositClaim) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.EventNonce != uint64(0) { + value := protoreflect.ValueOfUint64(x.EventNonce) + if !f(fd_MsgDepositClaim_event_nonce, value) { + return + } + } + if x.BlockHeight != uint64(0) { + value := protoreflect.ValueOfUint64(x.BlockHeight) + if !f(fd_MsgDepositClaim_block_height, value) { return } } if x.TokenContract != "" { value := protoreflect.ValueOfString(x.TokenContract) - if !f(fd_MsgConfirmBatch_token_contract, value) { + if !f(fd_MsgDepositClaim_token_contract, value) { return } } - if x.EthSigner != "" { - value := protoreflect.ValueOfString(x.EthSigner) - if !f(fd_MsgConfirmBatch_eth_signer, value) { + if x.Amount != "" { + value := protoreflect.ValueOfString(x.Amount) + if !f(fd_MsgDepositClaim_amount, value) { return } } - if x.Orchestrator != "" { - value := protoreflect.ValueOfString(x.Orchestrator) - if !f(fd_MsgConfirmBatch_orchestrator, value) { + if x.EthSender != "" { + value := protoreflect.ValueOfString(x.EthSender) + if !f(fd_MsgDepositClaim_eth_sender, value) { return } } - if x.Signature != "" { - value := protoreflect.ValueOfString(x.Signature) - if !f(fd_MsgConfirmBatch_signature, value) { + if x.FxReceiver != "" { + value := protoreflect.ValueOfString(x.FxReceiver) + if !f(fd_MsgDepositClaim_fx_receiver, value) { + return + } + } + if x.TargetIbc != "" { + value := protoreflect.ValueOfString(x.TargetIbc) + if !f(fd_MsgDepositClaim_target_ibc, value) { + return + } + } + if x.Orchestrator != "" { + value := protoreflect.ValueOfString(x.Orchestrator) + if !f(fd_MsgDepositClaim_orchestrator, value) { return } } @@ -2055,23 +2063,29 @@ func (x *fastReflection_MsgConfirmBatch) Range(f func(protoreflect.FieldDescript // 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_MsgConfirmBatch) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_MsgDepositClaim) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.gravity.v1.MsgConfirmBatch.nonce": - return x.Nonce != uint64(0) - case "fx.gravity.v1.MsgConfirmBatch.token_contract": + case "fx.gravity.v1.MsgDepositClaim.event_nonce": + return x.EventNonce != uint64(0) + case "fx.gravity.v1.MsgDepositClaim.block_height": + return x.BlockHeight != uint64(0) + case "fx.gravity.v1.MsgDepositClaim.token_contract": return x.TokenContract != "" - case "fx.gravity.v1.MsgConfirmBatch.eth_signer": - return x.EthSigner != "" - case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + case "fx.gravity.v1.MsgDepositClaim.amount": + return x.Amount != "" + case "fx.gravity.v1.MsgDepositClaim.eth_sender": + return x.EthSender != "" + case "fx.gravity.v1.MsgDepositClaim.fx_receiver": + return x.FxReceiver != "" + case "fx.gravity.v1.MsgDepositClaim.target_ibc": + return x.TargetIbc != "" + case "fx.gravity.v1.MsgDepositClaim.orchestrator": return x.Orchestrator != "" - case "fx.gravity.v1.MsgConfirmBatch.signature": - return x.Signature != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", fd.FullName())) } } @@ -2081,23 +2095,29 @@ func (x *fastReflection_MsgConfirmBatch) Has(fd protoreflect.FieldDescriptor) bo // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgConfirmBatch) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_MsgDepositClaim) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.gravity.v1.MsgConfirmBatch.nonce": - x.Nonce = uint64(0) - case "fx.gravity.v1.MsgConfirmBatch.token_contract": + case "fx.gravity.v1.MsgDepositClaim.event_nonce": + x.EventNonce = uint64(0) + case "fx.gravity.v1.MsgDepositClaim.block_height": + x.BlockHeight = uint64(0) + case "fx.gravity.v1.MsgDepositClaim.token_contract": x.TokenContract = "" - case "fx.gravity.v1.MsgConfirmBatch.eth_signer": - x.EthSigner = "" - case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + case "fx.gravity.v1.MsgDepositClaim.amount": + x.Amount = "" + case "fx.gravity.v1.MsgDepositClaim.eth_sender": + x.EthSender = "" + case "fx.gravity.v1.MsgDepositClaim.fx_receiver": + x.FxReceiver = "" + case "fx.gravity.v1.MsgDepositClaim.target_ibc": + x.TargetIbc = "" + case "fx.gravity.v1.MsgDepositClaim.orchestrator": x.Orchestrator = "" - case "fx.gravity.v1.MsgConfirmBatch.signature": - x.Signature = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", fd.FullName())) } } @@ -2107,28 +2127,37 @@ func (x *fastReflection_MsgConfirmBatch) Clear(fd protoreflect.FieldDescriptor) // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_MsgConfirmBatch) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgDepositClaim) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.gravity.v1.MsgConfirmBatch.nonce": - value := x.Nonce + case "fx.gravity.v1.MsgDepositClaim.event_nonce": + value := x.EventNonce return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgConfirmBatch.token_contract": + case "fx.gravity.v1.MsgDepositClaim.block_height": + value := x.BlockHeight + return protoreflect.ValueOfUint64(value) + case "fx.gravity.v1.MsgDepositClaim.token_contract": value := x.TokenContract return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgConfirmBatch.eth_signer": - value := x.EthSigner + case "fx.gravity.v1.MsgDepositClaim.amount": + value := x.Amount return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgConfirmBatch.orchestrator": - value := x.Orchestrator + case "fx.gravity.v1.MsgDepositClaim.eth_sender": + value := x.EthSender return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgConfirmBatch.signature": - value := x.Signature + case "fx.gravity.v1.MsgDepositClaim.fx_receiver": + value := x.FxReceiver + return protoreflect.ValueOfString(value) + case "fx.gravity.v1.MsgDepositClaim.target_ibc": + value := x.TargetIbc + return protoreflect.ValueOfString(value) + case "fx.gravity.v1.MsgDepositClaim.orchestrator": + value := x.Orchestrator return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", descriptor.FullName())) } } @@ -2142,23 +2171,29 @@ func (x *fastReflection_MsgConfirmBatch) Get(descriptor protoreflect.FieldDescri // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgConfirmBatch) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_MsgDepositClaim) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.gravity.v1.MsgConfirmBatch.nonce": - x.Nonce = value.Uint() - case "fx.gravity.v1.MsgConfirmBatch.token_contract": + case "fx.gravity.v1.MsgDepositClaim.event_nonce": + x.EventNonce = value.Uint() + case "fx.gravity.v1.MsgDepositClaim.block_height": + x.BlockHeight = value.Uint() + case "fx.gravity.v1.MsgDepositClaim.token_contract": x.TokenContract = value.Interface().(string) - case "fx.gravity.v1.MsgConfirmBatch.eth_signer": - x.EthSigner = value.Interface().(string) - case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + case "fx.gravity.v1.MsgDepositClaim.amount": + x.Amount = value.Interface().(string) + case "fx.gravity.v1.MsgDepositClaim.eth_sender": + x.EthSender = value.Interface().(string) + case "fx.gravity.v1.MsgDepositClaim.fx_receiver": + x.FxReceiver = value.Interface().(string) + case "fx.gravity.v1.MsgDepositClaim.target_ibc": + x.TargetIbc = value.Interface().(string) + case "fx.gravity.v1.MsgDepositClaim.orchestrator": x.Orchestrator = value.Interface().(string) - case "fx.gravity.v1.MsgConfirmBatch.signature": - x.Signature = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", fd.FullName())) } } @@ -2172,56 +2207,68 @@ func (x *fastReflection_MsgConfirmBatch) Set(fd protoreflect.FieldDescriptor, va // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgConfirmBatch) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgDepositClaim) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgConfirmBatch.nonce": - panic(fmt.Errorf("field nonce of message fx.gravity.v1.MsgConfirmBatch is not mutable")) - case "fx.gravity.v1.MsgConfirmBatch.token_contract": - panic(fmt.Errorf("field token_contract of message fx.gravity.v1.MsgConfirmBatch is not mutable")) - case "fx.gravity.v1.MsgConfirmBatch.eth_signer": - panic(fmt.Errorf("field eth_signer of message fx.gravity.v1.MsgConfirmBatch is not mutable")) - case "fx.gravity.v1.MsgConfirmBatch.orchestrator": - panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgConfirmBatch is not mutable")) - case "fx.gravity.v1.MsgConfirmBatch.signature": - panic(fmt.Errorf("field signature of message fx.gravity.v1.MsgConfirmBatch is not mutable")) + case "fx.gravity.v1.MsgDepositClaim.event_nonce": + panic(fmt.Errorf("field event_nonce of message fx.gravity.v1.MsgDepositClaim is not mutable")) + case "fx.gravity.v1.MsgDepositClaim.block_height": + panic(fmt.Errorf("field block_height of message fx.gravity.v1.MsgDepositClaim is not mutable")) + case "fx.gravity.v1.MsgDepositClaim.token_contract": + panic(fmt.Errorf("field token_contract of message fx.gravity.v1.MsgDepositClaim is not mutable")) + case "fx.gravity.v1.MsgDepositClaim.amount": + panic(fmt.Errorf("field amount of message fx.gravity.v1.MsgDepositClaim is not mutable")) + case "fx.gravity.v1.MsgDepositClaim.eth_sender": + panic(fmt.Errorf("field eth_sender of message fx.gravity.v1.MsgDepositClaim is not mutable")) + case "fx.gravity.v1.MsgDepositClaim.fx_receiver": + panic(fmt.Errorf("field fx_receiver of message fx.gravity.v1.MsgDepositClaim is not mutable")) + case "fx.gravity.v1.MsgDepositClaim.target_ibc": + panic(fmt.Errorf("field target_ibc of message fx.gravity.v1.MsgDepositClaim is not mutable")) + case "fx.gravity.v1.MsgDepositClaim.orchestrator": + panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgDepositClaim is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim 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_MsgConfirmBatch) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgDepositClaim) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgConfirmBatch.nonce": + case "fx.gravity.v1.MsgDepositClaim.event_nonce": return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgConfirmBatch.token_contract": + case "fx.gravity.v1.MsgDepositClaim.block_height": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.v1.MsgDepositClaim.token_contract": return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgConfirmBatch.eth_signer": + case "fx.gravity.v1.MsgDepositClaim.amount": return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgConfirmBatch.orchestrator": + case "fx.gravity.v1.MsgDepositClaim.eth_sender": return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgConfirmBatch.signature": + case "fx.gravity.v1.MsgDepositClaim.fx_receiver": + return protoreflect.ValueOfString("") + case "fx.gravity.v1.MsgDepositClaim.target_ibc": + return protoreflect.ValueOfString("") + case "fx.gravity.v1.MsgDepositClaim.orchestrator": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgConfirmBatch")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgConfirmBatch does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim 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_MsgConfirmBatch) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_MsgDepositClaim) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgConfirmBatch", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgDepositClaim", d.FullName())) } panic("unreachable") } @@ -2229,7 +2276,7 @@ func (x *fastReflection_MsgConfirmBatch) WhichOneof(d protoreflect.OneofDescript // 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_MsgConfirmBatch) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_MsgDepositClaim) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -2240,7 +2287,7 @@ func (x *fastReflection_MsgConfirmBatch) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgConfirmBatch) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_MsgDepositClaim) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -2252,7 +2299,7 @@ func (x *fastReflection_MsgConfirmBatch) SetUnknown(fields protoreflect.RawField // 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_MsgConfirmBatch) IsValid() bool { +func (x *fastReflection_MsgDepositClaim) IsValid() bool { return x != nil } @@ -2262,9 +2309,9 @@ func (x *fastReflection_MsgConfirmBatch) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgConfirmBatch) + x := input.Message.Interface().(*MsgDepositClaim) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2276,22 +2323,33 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { var n int var l int _ = l - if x.Nonce != 0 { - n += 1 + runtime.Sov(uint64(x.Nonce)) + if x.EventNonce != 0 { + n += 1 + runtime.Sov(uint64(x.EventNonce)) + } + if x.BlockHeight != 0 { + n += 1 + runtime.Sov(uint64(x.BlockHeight)) } l = len(x.TokenContract) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - l = len(x.EthSigner) + l = len(x.Amount) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - l = len(x.Orchestrator) + l = len(x.EthSender) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } - l = len(x.Signature) + l = len(x.FxReceiver) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.TargetIbc) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Orchestrator) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -2305,7 +2363,7 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgConfirmBatch) + x := input.Message.Interface().(*MsgDepositClaim) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2324,36 +2382,55 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.Signature) > 0 { - i -= len(x.Signature) - copy(dAtA[i:], x.Signature) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Signature))) - i-- - dAtA[i] = 0x2a - } if len(x.Orchestrator) > 0 { i -= len(x.Orchestrator) copy(dAtA[i:], x.Orchestrator) i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Orchestrator))) i-- - dAtA[i] = 0x22 + dAtA[i] = 0x42 } - if len(x.EthSigner) > 0 { - i -= len(x.EthSigner) - copy(dAtA[i:], x.EthSigner) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.EthSigner))) + if len(x.TargetIbc) > 0 { + i -= len(x.TargetIbc) + copy(dAtA[i:], x.TargetIbc) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TargetIbc))) i-- - dAtA[i] = 0x1a + dAtA[i] = 0x3a + } + if len(x.FxReceiver) > 0 { + i -= len(x.FxReceiver) + copy(dAtA[i:], x.FxReceiver) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.FxReceiver))) + i-- + dAtA[i] = 0x32 + } + if len(x.EthSender) > 0 { + i -= len(x.EthSender) + copy(dAtA[i:], x.EthSender) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.EthSender))) + i-- + dAtA[i] = 0x2a + } + if len(x.Amount) > 0 { + i -= len(x.Amount) + copy(dAtA[i:], x.Amount) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Amount))) + i-- + dAtA[i] = 0x22 } if len(x.TokenContract) > 0 { i -= len(x.TokenContract) copy(dAtA[i:], x.TokenContract) i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TokenContract))) i-- - dAtA[i] = 0x12 + dAtA[i] = 0x1a } - if x.Nonce != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.Nonce)) + if x.BlockHeight != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.BlockHeight)) + i-- + dAtA[i] = 0x10 + } + if x.EventNonce != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.EventNonce)) i-- dAtA[i] = 0x8 } @@ -2368,7 +2445,7 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgConfirmBatch) + x := input.Message.Interface().(*MsgDepositClaim) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -2400,17 +2477,17 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgConfirmBatch: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgDepositClaim: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgConfirmBatch: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgDepositClaim: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EventNonce", wireType) } - x.Nonce = 0 + x.EventNonce = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -2420,12 +2497,31 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { } b := dAtA[iNdEx] iNdEx++ - x.Nonce |= uint64(b&0x7F) << shift + x.EventNonce |= uint64(b&0x7F) << shift if b < 0x80 { break } } case 2: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BlockHeight", wireType) + } + x.BlockHeight = 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.BlockHeight |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: if wireType != 2 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TokenContract", wireType) } @@ -2457,9 +2553,9 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { } x.TokenContract = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: + case 4: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EthSigner", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -2487,11 +2583,11 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.EthSigner = string(dAtA[iNdEx:postIndex]) + x.Amount = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: + case 5: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EthSender", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -2519,11 +2615,11 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Orchestrator = string(dAtA[iNdEx:postIndex]) + x.EthSender = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 5: + case 6: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Signature", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field FxReceiver", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -2551,7 +2647,71 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Signature = string(dAtA[iNdEx:postIndex]) + x.FxReceiver = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TargetIbc", 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.TargetIbc = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 8: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", 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.Orchestrator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -2589,39 +2749,33 @@ func (x *fastReflection_MsgConfirmBatch) ProtoMethods() *protoiface.Methods { } var ( - md_MsgDepositClaim protoreflect.MessageDescriptor - fd_MsgDepositClaim_event_nonce protoreflect.FieldDescriptor - fd_MsgDepositClaim_block_height protoreflect.FieldDescriptor - fd_MsgDepositClaim_token_contract protoreflect.FieldDescriptor - fd_MsgDepositClaim_amount protoreflect.FieldDescriptor - fd_MsgDepositClaim_eth_sender protoreflect.FieldDescriptor - fd_MsgDepositClaim_fx_receiver protoreflect.FieldDescriptor - fd_MsgDepositClaim_target_ibc protoreflect.FieldDescriptor - fd_MsgDepositClaim_orchestrator protoreflect.FieldDescriptor + md_MsgWithdrawClaim protoreflect.MessageDescriptor + fd_MsgWithdrawClaim_event_nonce protoreflect.FieldDescriptor + fd_MsgWithdrawClaim_block_height protoreflect.FieldDescriptor + fd_MsgWithdrawClaim_batch_nonce protoreflect.FieldDescriptor + fd_MsgWithdrawClaim_token_contract protoreflect.FieldDescriptor + fd_MsgWithdrawClaim_orchestrator protoreflect.FieldDescriptor ) func init() { file_fx_gravity_v1_gravity_legacy_proto_init() - md_MsgDepositClaim = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgDepositClaim") - fd_MsgDepositClaim_event_nonce = md_MsgDepositClaim.Fields().ByName("event_nonce") - fd_MsgDepositClaim_block_height = md_MsgDepositClaim.Fields().ByName("block_height") - fd_MsgDepositClaim_token_contract = md_MsgDepositClaim.Fields().ByName("token_contract") - fd_MsgDepositClaim_amount = md_MsgDepositClaim.Fields().ByName("amount") - fd_MsgDepositClaim_eth_sender = md_MsgDepositClaim.Fields().ByName("eth_sender") - fd_MsgDepositClaim_fx_receiver = md_MsgDepositClaim.Fields().ByName("fx_receiver") - fd_MsgDepositClaim_target_ibc = md_MsgDepositClaim.Fields().ByName("target_ibc") - fd_MsgDepositClaim_orchestrator = md_MsgDepositClaim.Fields().ByName("orchestrator") + md_MsgWithdrawClaim = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgWithdrawClaim") + fd_MsgWithdrawClaim_event_nonce = md_MsgWithdrawClaim.Fields().ByName("event_nonce") + fd_MsgWithdrawClaim_block_height = md_MsgWithdrawClaim.Fields().ByName("block_height") + fd_MsgWithdrawClaim_batch_nonce = md_MsgWithdrawClaim.Fields().ByName("batch_nonce") + fd_MsgWithdrawClaim_token_contract = md_MsgWithdrawClaim.Fields().ByName("token_contract") + fd_MsgWithdrawClaim_orchestrator = md_MsgWithdrawClaim.Fields().ByName("orchestrator") } -var _ protoreflect.Message = (*fastReflection_MsgDepositClaim)(nil) +var _ protoreflect.Message = (*fastReflection_MsgWithdrawClaim)(nil) -type fastReflection_MsgDepositClaim MsgDepositClaim +type fastReflection_MsgWithdrawClaim MsgWithdrawClaim -func (x *MsgDepositClaim) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgDepositClaim)(x) +func (x *MsgWithdrawClaim) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgWithdrawClaim)(x) } -func (x *MsgDepositClaim) slowProtoReflect() protoreflect.Message { +func (x *MsgWithdrawClaim) slowProtoReflect() protoreflect.Message { mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2633,43 +2787,43 @@ func (x *MsgDepositClaim) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_MsgDepositClaim_messageType fastReflection_MsgDepositClaim_messageType -var _ protoreflect.MessageType = fastReflection_MsgDepositClaim_messageType{} +var _fastReflection_MsgWithdrawClaim_messageType fastReflection_MsgWithdrawClaim_messageType +var _ protoreflect.MessageType = fastReflection_MsgWithdrawClaim_messageType{} -type fastReflection_MsgDepositClaim_messageType struct{} +type fastReflection_MsgWithdrawClaim_messageType struct{} -func (x fastReflection_MsgDepositClaim_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgDepositClaim)(nil) +func (x fastReflection_MsgWithdrawClaim_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgWithdrawClaim)(nil) } -func (x fastReflection_MsgDepositClaim_messageType) New() protoreflect.Message { - return new(fastReflection_MsgDepositClaim) +func (x fastReflection_MsgWithdrawClaim_messageType) New() protoreflect.Message { + return new(fastReflection_MsgWithdrawClaim) } -func (x fastReflection_MsgDepositClaim_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgDepositClaim +func (x fastReflection_MsgWithdrawClaim_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgWithdrawClaim } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_MsgDepositClaim) Descriptor() protoreflect.MessageDescriptor { - return md_MsgDepositClaim +func (x *fastReflection_MsgWithdrawClaim) Descriptor() protoreflect.MessageDescriptor { + return md_MsgWithdrawClaim } // 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_MsgDepositClaim) Type() protoreflect.MessageType { - return _fastReflection_MsgDepositClaim_messageType +func (x *fastReflection_MsgWithdrawClaim) Type() protoreflect.MessageType { + return _fastReflection_MsgWithdrawClaim_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgDepositClaim) New() protoreflect.Message { - return new(fastReflection_MsgDepositClaim) +func (x *fastReflection_MsgWithdrawClaim) New() protoreflect.Message { + return new(fastReflection_MsgWithdrawClaim) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgDepositClaim) Interface() protoreflect.ProtoMessage { - return (*MsgDepositClaim)(x) +func (x *fastReflection_MsgWithdrawClaim) Interface() protoreflect.ProtoMessage { + return (*MsgWithdrawClaim)(x) } // Range iterates over every populated field in an undefined order, @@ -2677,52 +2831,34 @@ func (x *fastReflection_MsgDepositClaim) Interface() protoreflect.ProtoMessage { // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_MsgDepositClaim) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +func (x *fastReflection_MsgWithdrawClaim) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { if x.EventNonce != uint64(0) { value := protoreflect.ValueOfUint64(x.EventNonce) - if !f(fd_MsgDepositClaim_event_nonce, value) { + if !f(fd_MsgWithdrawClaim_event_nonce, value) { return } } if x.BlockHeight != uint64(0) { value := protoreflect.ValueOfUint64(x.BlockHeight) - if !f(fd_MsgDepositClaim_block_height, value) { - return - } - } - if x.TokenContract != "" { - value := protoreflect.ValueOfString(x.TokenContract) - if !f(fd_MsgDepositClaim_token_contract, value) { - return - } - } - if x.Amount != "" { - value := protoreflect.ValueOfString(x.Amount) - if !f(fd_MsgDepositClaim_amount, value) { - return - } - } - if x.EthSender != "" { - value := protoreflect.ValueOfString(x.EthSender) - if !f(fd_MsgDepositClaim_eth_sender, value) { + if !f(fd_MsgWithdrawClaim_block_height, value) { return } } - if x.FxReceiver != "" { - value := protoreflect.ValueOfString(x.FxReceiver) - if !f(fd_MsgDepositClaim_fx_receiver, value) { + if x.BatchNonce != uint64(0) { + value := protoreflect.ValueOfUint64(x.BatchNonce) + if !f(fd_MsgWithdrawClaim_batch_nonce, value) { return } } - if x.TargetIbc != "" { - value := protoreflect.ValueOfString(x.TargetIbc) - if !f(fd_MsgDepositClaim_target_ibc, value) { + if x.TokenContract != "" { + value := protoreflect.ValueOfString(x.TokenContract) + if !f(fd_MsgWithdrawClaim_token_contract, value) { return } } if x.Orchestrator != "" { value := protoreflect.ValueOfString(x.Orchestrator) - if !f(fd_MsgDepositClaim_orchestrator, value) { + if !f(fd_MsgWithdrawClaim_orchestrator, value) { return } } @@ -2739,29 +2875,23 @@ func (x *fastReflection_MsgDepositClaim) Range(f func(protoreflect.FieldDescript // 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_MsgDepositClaim) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_MsgWithdrawClaim) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.gravity.v1.MsgDepositClaim.event_nonce": + case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": return x.EventNonce != uint64(0) - case "fx.gravity.v1.MsgDepositClaim.block_height": + case "fx.gravity.v1.MsgWithdrawClaim.block_height": return x.BlockHeight != uint64(0) - case "fx.gravity.v1.MsgDepositClaim.token_contract": + case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": + return x.BatchNonce != uint64(0) + case "fx.gravity.v1.MsgWithdrawClaim.token_contract": return x.TokenContract != "" - case "fx.gravity.v1.MsgDepositClaim.amount": - return x.Amount != "" - case "fx.gravity.v1.MsgDepositClaim.eth_sender": - return x.EthSender != "" - case "fx.gravity.v1.MsgDepositClaim.fx_receiver": - return x.FxReceiver != "" - case "fx.gravity.v1.MsgDepositClaim.target_ibc": - return x.TargetIbc != "" - case "fx.gravity.v1.MsgDepositClaim.orchestrator": + case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": return x.Orchestrator != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", fd.FullName())) } } @@ -2771,29 +2901,23 @@ func (x *fastReflection_MsgDepositClaim) Has(fd protoreflect.FieldDescriptor) bo // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgDepositClaim) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_MsgWithdrawClaim) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.gravity.v1.MsgDepositClaim.event_nonce": + case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": x.EventNonce = uint64(0) - case "fx.gravity.v1.MsgDepositClaim.block_height": + case "fx.gravity.v1.MsgWithdrawClaim.block_height": x.BlockHeight = uint64(0) - case "fx.gravity.v1.MsgDepositClaim.token_contract": + case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": + x.BatchNonce = uint64(0) + case "fx.gravity.v1.MsgWithdrawClaim.token_contract": x.TokenContract = "" - case "fx.gravity.v1.MsgDepositClaim.amount": - x.Amount = "" - case "fx.gravity.v1.MsgDepositClaim.eth_sender": - x.EthSender = "" - case "fx.gravity.v1.MsgDepositClaim.fx_receiver": - x.FxReceiver = "" - case "fx.gravity.v1.MsgDepositClaim.target_ibc": - x.TargetIbc = "" - case "fx.gravity.v1.MsgDepositClaim.orchestrator": + case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": x.Orchestrator = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", fd.FullName())) } } @@ -2803,37 +2927,28 @@ func (x *fastReflection_MsgDepositClaim) Clear(fd protoreflect.FieldDescriptor) // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_MsgDepositClaim) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgWithdrawClaim) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.gravity.v1.MsgDepositClaim.event_nonce": + case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": value := x.EventNonce return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgDepositClaim.block_height": + case "fx.gravity.v1.MsgWithdrawClaim.block_height": value := x.BlockHeight return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgDepositClaim.token_contract": + case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": + value := x.BatchNonce + return protoreflect.ValueOfUint64(value) + case "fx.gravity.v1.MsgWithdrawClaim.token_contract": value := x.TokenContract return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgDepositClaim.amount": - value := x.Amount - return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgDepositClaim.eth_sender": - value := x.EthSender - return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgDepositClaim.fx_receiver": - value := x.FxReceiver - return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgDepositClaim.target_ibc": - value := x.TargetIbc - return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgDepositClaim.orchestrator": + case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": value := x.Orchestrator return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", descriptor.FullName())) } } @@ -2847,29 +2962,23 @@ func (x *fastReflection_MsgDepositClaim) Get(descriptor protoreflect.FieldDescri // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgDepositClaim) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_MsgWithdrawClaim) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.gravity.v1.MsgDepositClaim.event_nonce": + case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": x.EventNonce = value.Uint() - case "fx.gravity.v1.MsgDepositClaim.block_height": + case "fx.gravity.v1.MsgWithdrawClaim.block_height": x.BlockHeight = value.Uint() - case "fx.gravity.v1.MsgDepositClaim.token_contract": + case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": + x.BatchNonce = value.Uint() + case "fx.gravity.v1.MsgWithdrawClaim.token_contract": x.TokenContract = value.Interface().(string) - case "fx.gravity.v1.MsgDepositClaim.amount": - x.Amount = value.Interface().(string) - case "fx.gravity.v1.MsgDepositClaim.eth_sender": - x.EthSender = value.Interface().(string) - case "fx.gravity.v1.MsgDepositClaim.fx_receiver": - x.FxReceiver = value.Interface().(string) - case "fx.gravity.v1.MsgDepositClaim.target_ibc": - x.TargetIbc = value.Interface().(string) - case "fx.gravity.v1.MsgDepositClaim.orchestrator": + case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": x.Orchestrator = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", fd.FullName())) } } @@ -2883,68 +2992,56 @@ func (x *fastReflection_MsgDepositClaim) Set(fd protoreflect.FieldDescriptor, va // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgDepositClaim) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgWithdrawClaim) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgDepositClaim.event_nonce": - panic(fmt.Errorf("field event_nonce of message fx.gravity.v1.MsgDepositClaim is not mutable")) - case "fx.gravity.v1.MsgDepositClaim.block_height": - panic(fmt.Errorf("field block_height of message fx.gravity.v1.MsgDepositClaim is not mutable")) - case "fx.gravity.v1.MsgDepositClaim.token_contract": - panic(fmt.Errorf("field token_contract of message fx.gravity.v1.MsgDepositClaim is not mutable")) - case "fx.gravity.v1.MsgDepositClaim.amount": - panic(fmt.Errorf("field amount of message fx.gravity.v1.MsgDepositClaim is not mutable")) - case "fx.gravity.v1.MsgDepositClaim.eth_sender": - panic(fmt.Errorf("field eth_sender of message fx.gravity.v1.MsgDepositClaim is not mutable")) - case "fx.gravity.v1.MsgDepositClaim.fx_receiver": - panic(fmt.Errorf("field fx_receiver of message fx.gravity.v1.MsgDepositClaim is not mutable")) - case "fx.gravity.v1.MsgDepositClaim.target_ibc": - panic(fmt.Errorf("field target_ibc of message fx.gravity.v1.MsgDepositClaim is not mutable")) - case "fx.gravity.v1.MsgDepositClaim.orchestrator": - panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgDepositClaim is not mutable")) + case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": + panic(fmt.Errorf("field event_nonce of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) + case "fx.gravity.v1.MsgWithdrawClaim.block_height": + panic(fmt.Errorf("field block_height of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) + case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": + panic(fmt.Errorf("field batch_nonce of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) + case "fx.gravity.v1.MsgWithdrawClaim.token_contract": + panic(fmt.Errorf("field token_contract of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) + case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": + panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim 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_MsgDepositClaim) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgWithdrawClaim) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgDepositClaim.event_nonce": + case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgDepositClaim.block_height": + case "fx.gravity.v1.MsgWithdrawClaim.block_height": return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgDepositClaim.token_contract": - return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgDepositClaim.amount": - return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgDepositClaim.eth_sender": - return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgDepositClaim.fx_receiver": - return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgDepositClaim.target_ibc": + case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.v1.MsgWithdrawClaim.token_contract": return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgDepositClaim.orchestrator": + case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgDepositClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgDepositClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim 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_MsgDepositClaim) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_MsgWithdrawClaim) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgDepositClaim", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgWithdrawClaim", d.FullName())) } panic("unreachable") } @@ -2952,7 +3049,7 @@ func (x *fastReflection_MsgDepositClaim) WhichOneof(d protoreflect.OneofDescript // 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_MsgDepositClaim) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_MsgWithdrawClaim) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -2963,7 +3060,7 @@ func (x *fastReflection_MsgDepositClaim) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgDepositClaim) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_MsgWithdrawClaim) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -2975,7 +3072,7 @@ func (x *fastReflection_MsgDepositClaim) SetUnknown(fields protoreflect.RawField // 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_MsgDepositClaim) IsValid() bool { +func (x *fastReflection_MsgWithdrawClaim) IsValid() bool { return x != nil } @@ -2985,9 +3082,9 @@ func (x *fastReflection_MsgDepositClaim) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgDepositClaim) + x := input.Message.Interface().(*MsgWithdrawClaim) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3005,23 +3102,10 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { if x.BlockHeight != 0 { n += 1 + runtime.Sov(uint64(x.BlockHeight)) } - l = len(x.TokenContract) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Amount) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.EthSender) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.FxReceiver) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) + if x.BatchNonce != 0 { + n += 1 + runtime.Sov(uint64(x.BatchNonce)) } - l = len(x.TargetIbc) + l = len(x.TokenContract) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -3039,7 +3123,7 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgDepositClaim) + x := input.Message.Interface().(*MsgWithdrawClaim) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3063,42 +3147,19 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { copy(dAtA[i:], x.Orchestrator) i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Orchestrator))) i-- - dAtA[i] = 0x42 + dAtA[i] = 0x2a } - if len(x.TargetIbc) > 0 { - i -= len(x.TargetIbc) - copy(dAtA[i:], x.TargetIbc) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TargetIbc))) + if len(x.TokenContract) > 0 { + i -= len(x.TokenContract) + copy(dAtA[i:], x.TokenContract) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TokenContract))) i-- - dAtA[i] = 0x3a + dAtA[i] = 0x22 } - if len(x.FxReceiver) > 0 { - i -= len(x.FxReceiver) - copy(dAtA[i:], x.FxReceiver) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.FxReceiver))) + if x.BatchNonce != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.BatchNonce)) i-- - dAtA[i] = 0x32 - } - if len(x.EthSender) > 0 { - i -= len(x.EthSender) - copy(dAtA[i:], x.EthSender) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.EthSender))) - i-- - dAtA[i] = 0x2a - } - if len(x.Amount) > 0 { - i -= len(x.Amount) - copy(dAtA[i:], x.Amount) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Amount))) - i-- - dAtA[i] = 0x22 - } - if len(x.TokenContract) > 0 { - i -= len(x.TokenContract) - copy(dAtA[i:], x.TokenContract) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TokenContract))) - i-- - dAtA[i] = 0x1a + dAtA[i] = 0x18 } if x.BlockHeight != 0 { i = runtime.EncodeVarint(dAtA, i, uint64(x.BlockHeight)) @@ -3121,7 +3182,7 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgDepositClaim) + x := input.Message.Interface().(*MsgWithdrawClaim) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3153,10 +3214,10 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgDepositClaim: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgWithdrawClaim: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgDepositClaim: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgWithdrawClaim: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -3198,10 +3259,10 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { } } case 3: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TokenContract", wireType) + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BatchNonce", wireType) } - var stringLen uint64 + x.BatchNonce = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -3211,27 +3272,14 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + x.BatchNonce |= 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.TokenContract = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex case 4: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TokenContract", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -3259,105 +3307,9 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Amount = string(dAtA[iNdEx:postIndex]) + x.TokenContract = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 5: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EthSender", 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.EthSender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field FxReceiver", 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.FxReceiver = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 7: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TargetIbc", 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.TargetIbc = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 8: if wireType != 2 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) } @@ -3425,33 +3377,27 @@ func (x *fastReflection_MsgDepositClaim) ProtoMethods() *protoiface.Methods { } var ( - md_MsgWithdrawClaim protoreflect.MessageDescriptor - fd_MsgWithdrawClaim_event_nonce protoreflect.FieldDescriptor - fd_MsgWithdrawClaim_block_height protoreflect.FieldDescriptor - fd_MsgWithdrawClaim_batch_nonce protoreflect.FieldDescriptor - fd_MsgWithdrawClaim_token_contract protoreflect.FieldDescriptor - fd_MsgWithdrawClaim_orchestrator protoreflect.FieldDescriptor + md_MsgCancelSendToEth protoreflect.MessageDescriptor + fd_MsgCancelSendToEth_transaction_id protoreflect.FieldDescriptor + fd_MsgCancelSendToEth_sender protoreflect.FieldDescriptor ) func init() { file_fx_gravity_v1_gravity_legacy_proto_init() - md_MsgWithdrawClaim = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgWithdrawClaim") - fd_MsgWithdrawClaim_event_nonce = md_MsgWithdrawClaim.Fields().ByName("event_nonce") - fd_MsgWithdrawClaim_block_height = md_MsgWithdrawClaim.Fields().ByName("block_height") - fd_MsgWithdrawClaim_batch_nonce = md_MsgWithdrawClaim.Fields().ByName("batch_nonce") - fd_MsgWithdrawClaim_token_contract = md_MsgWithdrawClaim.Fields().ByName("token_contract") - fd_MsgWithdrawClaim_orchestrator = md_MsgWithdrawClaim.Fields().ByName("orchestrator") + md_MsgCancelSendToEth = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgCancelSendToEth") + fd_MsgCancelSendToEth_transaction_id = md_MsgCancelSendToEth.Fields().ByName("transaction_id") + fd_MsgCancelSendToEth_sender = md_MsgCancelSendToEth.Fields().ByName("sender") } -var _ protoreflect.Message = (*fastReflection_MsgWithdrawClaim)(nil) +var _ protoreflect.Message = (*fastReflection_MsgCancelSendToEth)(nil) -type fastReflection_MsgWithdrawClaim MsgWithdrawClaim +type fastReflection_MsgCancelSendToEth MsgCancelSendToEth -func (x *MsgWithdrawClaim) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgWithdrawClaim)(x) +func (x *MsgCancelSendToEth) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgCancelSendToEth)(x) } -func (x *MsgWithdrawClaim) slowProtoReflect() protoreflect.Message { +func (x *MsgCancelSendToEth) slowProtoReflect() protoreflect.Message { mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3463,43 +3409,43 @@ func (x *MsgWithdrawClaim) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_MsgWithdrawClaim_messageType fastReflection_MsgWithdrawClaim_messageType -var _ protoreflect.MessageType = fastReflection_MsgWithdrawClaim_messageType{} +var _fastReflection_MsgCancelSendToEth_messageType fastReflection_MsgCancelSendToEth_messageType +var _ protoreflect.MessageType = fastReflection_MsgCancelSendToEth_messageType{} -type fastReflection_MsgWithdrawClaim_messageType struct{} +type fastReflection_MsgCancelSendToEth_messageType struct{} -func (x fastReflection_MsgWithdrawClaim_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgWithdrawClaim)(nil) +func (x fastReflection_MsgCancelSendToEth_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgCancelSendToEth)(nil) } -func (x fastReflection_MsgWithdrawClaim_messageType) New() protoreflect.Message { - return new(fastReflection_MsgWithdrawClaim) +func (x fastReflection_MsgCancelSendToEth_messageType) New() protoreflect.Message { + return new(fastReflection_MsgCancelSendToEth) } -func (x fastReflection_MsgWithdrawClaim_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgWithdrawClaim +func (x fastReflection_MsgCancelSendToEth_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgCancelSendToEth } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_MsgWithdrawClaim) Descriptor() protoreflect.MessageDescriptor { - return md_MsgWithdrawClaim +func (x *fastReflection_MsgCancelSendToEth) Descriptor() protoreflect.MessageDescriptor { + return md_MsgCancelSendToEth } // 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_MsgWithdrawClaim) Type() protoreflect.MessageType { - return _fastReflection_MsgWithdrawClaim_messageType +func (x *fastReflection_MsgCancelSendToEth) Type() protoreflect.MessageType { + return _fastReflection_MsgCancelSendToEth_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgWithdrawClaim) New() protoreflect.Message { - return new(fastReflection_MsgWithdrawClaim) +func (x *fastReflection_MsgCancelSendToEth) New() protoreflect.Message { + return new(fastReflection_MsgCancelSendToEth) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgWithdrawClaim) Interface() protoreflect.ProtoMessage { - return (*MsgWithdrawClaim)(x) +func (x *fastReflection_MsgCancelSendToEth) Interface() protoreflect.ProtoMessage { + return (*MsgCancelSendToEth)(x) } // Range iterates over every populated field in an undefined order, @@ -3507,34 +3453,16 @@ func (x *fastReflection_MsgWithdrawClaim) Interface() protoreflect.ProtoMessage // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_MsgWithdrawClaim) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.EventNonce != uint64(0) { - value := protoreflect.ValueOfUint64(x.EventNonce) - if !f(fd_MsgWithdrawClaim_event_nonce, value) { - return - } - } - if x.BlockHeight != uint64(0) { - value := protoreflect.ValueOfUint64(x.BlockHeight) - if !f(fd_MsgWithdrawClaim_block_height, value) { - return - } - } - if x.BatchNonce != uint64(0) { - value := protoreflect.ValueOfUint64(x.BatchNonce) - if !f(fd_MsgWithdrawClaim_batch_nonce, value) { - return - } - } - if x.TokenContract != "" { - value := protoreflect.ValueOfString(x.TokenContract) - if !f(fd_MsgWithdrawClaim_token_contract, value) { +func (x *fastReflection_MsgCancelSendToEth) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.TransactionId != uint64(0) { + value := protoreflect.ValueOfUint64(x.TransactionId) + if !f(fd_MsgCancelSendToEth_transaction_id, value) { return } } - if x.Orchestrator != "" { - value := protoreflect.ValueOfString(x.Orchestrator) - if !f(fd_MsgWithdrawClaim_orchestrator, value) { + if x.Sender != "" { + value := protoreflect.ValueOfString(x.Sender) + if !f(fd_MsgCancelSendToEth_sender, value) { return } } @@ -3551,23 +3479,17 @@ func (x *fastReflection_MsgWithdrawClaim) Range(f func(protoreflect.FieldDescrip // 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_MsgWithdrawClaim) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_MsgCancelSendToEth) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": - return x.EventNonce != uint64(0) - case "fx.gravity.v1.MsgWithdrawClaim.block_height": - return x.BlockHeight != uint64(0) - case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": - return x.BatchNonce != uint64(0) - case "fx.gravity.v1.MsgWithdrawClaim.token_contract": - return x.TokenContract != "" - case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": - return x.Orchestrator != "" + case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": + return x.TransactionId != uint64(0) + case "fx.gravity.v1.MsgCancelSendToEth.sender": + return x.Sender != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth does not contain field %s", fd.FullName())) } } @@ -3577,23 +3499,17 @@ func (x *fastReflection_MsgWithdrawClaim) Has(fd protoreflect.FieldDescriptor) b // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgWithdrawClaim) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_MsgCancelSendToEth) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": - x.EventNonce = uint64(0) - case "fx.gravity.v1.MsgWithdrawClaim.block_height": - x.BlockHeight = uint64(0) - case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": - x.BatchNonce = uint64(0) - case "fx.gravity.v1.MsgWithdrawClaim.token_contract": - x.TokenContract = "" - case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": - x.Orchestrator = "" + case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": + x.TransactionId = uint64(0) + case "fx.gravity.v1.MsgCancelSendToEth.sender": + x.Sender = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth does not contain field %s", fd.FullName())) } } @@ -3603,28 +3519,19 @@ func (x *fastReflection_MsgWithdrawClaim) Clear(fd protoreflect.FieldDescriptor) // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_MsgWithdrawClaim) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgCancelSendToEth) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": - value := x.EventNonce - return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgWithdrawClaim.block_height": - value := x.BlockHeight - return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": - value := x.BatchNonce + case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": + value := x.TransactionId return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgWithdrawClaim.token_contract": - value := x.TokenContract - return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": - value := x.Orchestrator + case "fx.gravity.v1.MsgCancelSendToEth.sender": + value := x.Sender return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth does not contain field %s", descriptor.FullName())) } } @@ -3638,23 +3545,17 @@ func (x *fastReflection_MsgWithdrawClaim) Get(descriptor protoreflect.FieldDescr // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgWithdrawClaim) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_MsgCancelSendToEth) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": - x.EventNonce = value.Uint() - case "fx.gravity.v1.MsgWithdrawClaim.block_height": - x.BlockHeight = value.Uint() - case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": - x.BatchNonce = value.Uint() - case "fx.gravity.v1.MsgWithdrawClaim.token_contract": - x.TokenContract = value.Interface().(string) - case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": - x.Orchestrator = value.Interface().(string) + case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": + x.TransactionId = value.Uint() + case "fx.gravity.v1.MsgCancelSendToEth.sender": + x.Sender = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth does not contain field %s", fd.FullName())) } } @@ -3668,56 +3569,44 @@ func (x *fastReflection_MsgWithdrawClaim) Set(fd protoreflect.FieldDescriptor, v // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgWithdrawClaim) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgCancelSendToEth) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": - panic(fmt.Errorf("field event_nonce of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) - case "fx.gravity.v1.MsgWithdrawClaim.block_height": - panic(fmt.Errorf("field block_height of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) - case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": - panic(fmt.Errorf("field batch_nonce of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) - case "fx.gravity.v1.MsgWithdrawClaim.token_contract": - panic(fmt.Errorf("field token_contract of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) - case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": - panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgWithdrawClaim is not mutable")) + case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": + panic(fmt.Errorf("field transaction_id of message fx.gravity.v1.MsgCancelSendToEth is not mutable")) + case "fx.gravity.v1.MsgCancelSendToEth.sender": + panic(fmt.Errorf("field sender of message fx.gravity.v1.MsgCancelSendToEth is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth 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_MsgWithdrawClaim) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgCancelSendToEth) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgWithdrawClaim.event_nonce": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgWithdrawClaim.block_height": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgWithdrawClaim.batch_nonce": + case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgWithdrawClaim.token_contract": - return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgWithdrawClaim.orchestrator": + case "fx.gravity.v1.MsgCancelSendToEth.sender": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgWithdrawClaim")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgWithdrawClaim does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth 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_MsgWithdrawClaim) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_MsgCancelSendToEth) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgWithdrawClaim", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgCancelSendToEth", d.FullName())) } panic("unreachable") } @@ -3725,7 +3614,7 @@ func (x *fastReflection_MsgWithdrawClaim) WhichOneof(d protoreflect.OneofDescrip // 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_MsgWithdrawClaim) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_MsgCancelSendToEth) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -3736,7 +3625,7 @@ func (x *fastReflection_MsgWithdrawClaim) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgWithdrawClaim) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_MsgCancelSendToEth) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -3748,7 +3637,7 @@ func (x *fastReflection_MsgWithdrawClaim) SetUnknown(fields protoreflect.RawFiel // 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_MsgWithdrawClaim) IsValid() bool { +func (x *fastReflection_MsgCancelSendToEth) IsValid() bool { return x != nil } @@ -3758,9 +3647,9 @@ func (x *fastReflection_MsgWithdrawClaim) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_MsgCancelSendToEth) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgWithdrawClaim) + x := input.Message.Interface().(*MsgCancelSendToEth) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3772,20 +3661,10 @@ func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { var n int var l int _ = l - if x.EventNonce != 0 { - n += 1 + runtime.Sov(uint64(x.EventNonce)) - } - if x.BlockHeight != 0 { - n += 1 + runtime.Sov(uint64(x.BlockHeight)) - } - if x.BatchNonce != 0 { - n += 1 + runtime.Sov(uint64(x.BatchNonce)) - } - l = len(x.TokenContract) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) + if x.TransactionId != 0 { + n += 1 + runtime.Sov(uint64(x.TransactionId)) } - l = len(x.Orchestrator) + l = len(x.Sender) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -3799,7 +3678,7 @@ func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgWithdrawClaim) + x := input.Message.Interface().(*MsgCancelSendToEth) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3818,32 +3697,15 @@ func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.Orchestrator) > 0 { - i -= len(x.Orchestrator) - copy(dAtA[i:], x.Orchestrator) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Orchestrator))) - i-- - dAtA[i] = 0x2a - } - if len(x.TokenContract) > 0 { - i -= len(x.TokenContract) - copy(dAtA[i:], x.TokenContract) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.TokenContract))) - i-- - dAtA[i] = 0x22 - } - if x.BatchNonce != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.BatchNonce)) - i-- - dAtA[i] = 0x18 - } - if x.BlockHeight != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.BlockHeight)) + if len(x.Sender) > 0 { + i -= len(x.Sender) + copy(dAtA[i:], x.Sender) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) i-- - dAtA[i] = 0x10 + dAtA[i] = 0x12 } - if x.EventNonce != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.EventNonce)) + if x.TransactionId != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.TransactionId)) i-- dAtA[i] = 0x8 } @@ -3858,7 +3720,7 @@ func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgWithdrawClaim) + x := input.Message.Interface().(*MsgCancelSendToEth) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -3890,17 +3752,17 @@ func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgWithdrawClaim: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgCancelSendToEth: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgWithdrawClaim: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgCancelSendToEth: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EventNonce", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TransactionId", wireType) } - x.EventNonce = 0 + x.TransactionId = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -3910,84 +3772,14 @@ func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { } b := dAtA[iNdEx] iNdEx++ - x.EventNonce |= uint64(b&0x7F) << shift + x.TransactionId |= uint64(b&0x7F) << shift if b < 0x80 { break } } case 2: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BlockHeight", wireType) - } - x.BlockHeight = 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.BlockHeight |= 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 BatchNonce", wireType) - } - x.BatchNonce = 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.BatchNonce |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TokenContract", 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.TokenContract = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -4015,7 +3807,7 @@ func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.Orchestrator = string(dAtA[iNdEx:postIndex]) + x.Sender = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -4052,1199 +3844,86 @@ func (x *fastReflection_MsgWithdrawClaim) ProtoMethods() *protoiface.Methods { } } -var ( - md_MsgCancelSendToEth protoreflect.MessageDescriptor - fd_MsgCancelSendToEth_transaction_id protoreflect.FieldDescriptor - fd_MsgCancelSendToEth_sender protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_v1_gravity_legacy_proto_init() - md_MsgCancelSendToEth = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgCancelSendToEth") - fd_MsgCancelSendToEth_transaction_id = md_MsgCancelSendToEth.Fields().ByName("transaction_id") - fd_MsgCancelSendToEth_sender = md_MsgCancelSendToEth.Fields().ByName("sender") -} - -var _ protoreflect.Message = (*fastReflection_MsgCancelSendToEth)(nil) - -type fastReflection_MsgCancelSendToEth MsgCancelSendToEth - -func (x *MsgCancelSendToEth) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgCancelSendToEth)(x) -} - -func (x *MsgCancelSendToEth) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[6] - 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_MsgCancelSendToEth_messageType fastReflection_MsgCancelSendToEth_messageType -var _ protoreflect.MessageType = fastReflection_MsgCancelSendToEth_messageType{} - -type fastReflection_MsgCancelSendToEth_messageType struct{} - -func (x fastReflection_MsgCancelSendToEth_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgCancelSendToEth)(nil) -} -func (x fastReflection_MsgCancelSendToEth_messageType) New() protoreflect.Message { - return new(fastReflection_MsgCancelSendToEth) -} -func (x fastReflection_MsgCancelSendToEth_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgCancelSendToEth -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgCancelSendToEth) Descriptor() protoreflect.MessageDescriptor { - return md_MsgCancelSendToEth -} - -// 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_MsgCancelSendToEth) Type() protoreflect.MessageType { - return _fastReflection_MsgCancelSendToEth_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgCancelSendToEth) New() protoreflect.Message { - return new(fastReflection_MsgCancelSendToEth) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgCancelSendToEth) Interface() protoreflect.ProtoMessage { - return (*MsgCancelSendToEth)(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_MsgCancelSendToEth) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.TransactionId != uint64(0) { - value := protoreflect.ValueOfUint64(x.TransactionId) - if !f(fd_MsgCancelSendToEth_transaction_id, value) { - return - } - } - if x.Sender != "" { - value := protoreflect.ValueOfString(x.Sender) - if !f(fd_MsgCancelSendToEth_sender, 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_MsgCancelSendToEth) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": - return x.TransactionId != uint64(0) - case "fx.gravity.v1.MsgCancelSendToEth.sender": - return x.Sender != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth 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_MsgCancelSendToEth) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": - x.TransactionId = uint64(0) - case "fx.gravity.v1.MsgCancelSendToEth.sender": - x.Sender = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth 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_MsgCancelSendToEth) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": - value := x.TransactionId - return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgCancelSendToEth.sender": - value := x.Sender - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth 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_MsgCancelSendToEth) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": - x.TransactionId = value.Uint() - case "fx.gravity.v1.MsgCancelSendToEth.sender": - x.Sender = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth 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_MsgCancelSendToEth) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": - panic(fmt.Errorf("field transaction_id of message fx.gravity.v1.MsgCancelSendToEth is not mutable")) - case "fx.gravity.v1.MsgCancelSendToEth.sender": - panic(fmt.Errorf("field sender of message fx.gravity.v1.MsgCancelSendToEth is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth 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_MsgCancelSendToEth) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.v1.MsgCancelSendToEth.transaction_id": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgCancelSendToEth.sender": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgCancelSendToEth")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgCancelSendToEth 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_MsgCancelSendToEth) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgCancelSendToEth", 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_MsgCancelSendToEth) 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_MsgCancelSendToEth) 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_MsgCancelSendToEth) 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_MsgCancelSendToEth) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgCancelSendToEth) - 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.TransactionId != 0 { - n += 1 + runtime.Sov(uint64(x.TransactionId)) - } - l = len(x.Sender) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgCancelSendToEth) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.Sender) > 0 { - i -= len(x.Sender) - copy(dAtA[i:], x.Sender) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) - i-- - dAtA[i] = 0x12 - } - if x.TransactionId != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.TransactionId)) - i-- - dAtA[i] = 0x8 - } - 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().(*MsgCancelSendToEth) - 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: MsgCancelSendToEth: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgCancelSendToEth: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field TransactionId", wireType) - } - x.TransactionId = 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.TransactionId |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } - - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil - } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, - } -} - -var _ protoreflect.List = (*_MsgValsetUpdatedClaim_4_list)(nil) - -type _MsgValsetUpdatedClaim_4_list struct { - list *[]*BridgeValidator -} - -func (x *_MsgValsetUpdatedClaim_4_list) Len() int { - if x.list == nil { - return 0 - } - return len(*x.list) -} - -func (x *_MsgValsetUpdatedClaim_4_list) Get(i int) protoreflect.Value { - return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) -} - -func (x *_MsgValsetUpdatedClaim_4_list) Set(i int, value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*BridgeValidator) - (*x.list)[i] = concreteValue -} - -func (x *_MsgValsetUpdatedClaim_4_list) Append(value protoreflect.Value) { - valueUnwrapped := value.Message() - concreteValue := valueUnwrapped.Interface().(*BridgeValidator) - *x.list = append(*x.list, concreteValue) -} - -func (x *_MsgValsetUpdatedClaim_4_list) AppendMutable() protoreflect.Value { - v := new(BridgeValidator) - *x.list = append(*x.list, v) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_MsgValsetUpdatedClaim_4_list) Truncate(n int) { - for i := n; i < len(*x.list); i++ { - (*x.list)[i] = nil - } - *x.list = (*x.list)[:n] -} - -func (x *_MsgValsetUpdatedClaim_4_list) NewElement() protoreflect.Value { - v := new(BridgeValidator) - return protoreflect.ValueOfMessage(v.ProtoReflect()) -} - -func (x *_MsgValsetUpdatedClaim_4_list) IsValid() bool { - return x.list != nil -} - -var ( - md_MsgValsetUpdatedClaim protoreflect.MessageDescriptor - fd_MsgValsetUpdatedClaim_event_nonce protoreflect.FieldDescriptor - fd_MsgValsetUpdatedClaim_block_height protoreflect.FieldDescriptor - fd_MsgValsetUpdatedClaim_valset_nonce protoreflect.FieldDescriptor - fd_MsgValsetUpdatedClaim_members protoreflect.FieldDescriptor - fd_MsgValsetUpdatedClaim_orchestrator protoreflect.FieldDescriptor -) - -func init() { - file_fx_gravity_v1_gravity_legacy_proto_init() - md_MsgValsetUpdatedClaim = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgValsetUpdatedClaim") - fd_MsgValsetUpdatedClaim_event_nonce = md_MsgValsetUpdatedClaim.Fields().ByName("event_nonce") - fd_MsgValsetUpdatedClaim_block_height = md_MsgValsetUpdatedClaim.Fields().ByName("block_height") - fd_MsgValsetUpdatedClaim_valset_nonce = md_MsgValsetUpdatedClaim.Fields().ByName("valset_nonce") - fd_MsgValsetUpdatedClaim_members = md_MsgValsetUpdatedClaim.Fields().ByName("members") - fd_MsgValsetUpdatedClaim_orchestrator = md_MsgValsetUpdatedClaim.Fields().ByName("orchestrator") -} - -var _ protoreflect.Message = (*fastReflection_MsgValsetUpdatedClaim)(nil) - -type fastReflection_MsgValsetUpdatedClaim MsgValsetUpdatedClaim - -func (x *MsgValsetUpdatedClaim) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgValsetUpdatedClaim)(x) -} - -func (x *MsgValsetUpdatedClaim) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[7] - 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_MsgValsetUpdatedClaim_messageType fastReflection_MsgValsetUpdatedClaim_messageType -var _ protoreflect.MessageType = fastReflection_MsgValsetUpdatedClaim_messageType{} - -type fastReflection_MsgValsetUpdatedClaim_messageType struct{} - -func (x fastReflection_MsgValsetUpdatedClaim_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgValsetUpdatedClaim)(nil) -} -func (x fastReflection_MsgValsetUpdatedClaim_messageType) New() protoreflect.Message { - return new(fastReflection_MsgValsetUpdatedClaim) -} -func (x fastReflection_MsgValsetUpdatedClaim_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgValsetUpdatedClaim -} - -// Descriptor returns message descriptor, which contains only the protobuf -// type information for the message. -func (x *fastReflection_MsgValsetUpdatedClaim) Descriptor() protoreflect.MessageDescriptor { - return md_MsgValsetUpdatedClaim -} - -// 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_MsgValsetUpdatedClaim) Type() protoreflect.MessageType { - return _fastReflection_MsgValsetUpdatedClaim_messageType -} - -// New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgValsetUpdatedClaim) New() protoreflect.Message { - return new(fastReflection_MsgValsetUpdatedClaim) -} - -// Interface unwraps the message reflection interface and -// returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgValsetUpdatedClaim) Interface() protoreflect.ProtoMessage { - return (*MsgValsetUpdatedClaim)(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_MsgValsetUpdatedClaim) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.EventNonce != uint64(0) { - value := protoreflect.ValueOfUint64(x.EventNonce) - if !f(fd_MsgValsetUpdatedClaim_event_nonce, value) { - return - } - } - if x.BlockHeight != uint64(0) { - value := protoreflect.ValueOfUint64(x.BlockHeight) - if !f(fd_MsgValsetUpdatedClaim_block_height, value) { - return - } - } - if x.ValsetNonce != uint64(0) { - value := protoreflect.ValueOfUint64(x.ValsetNonce) - if !f(fd_MsgValsetUpdatedClaim_valset_nonce, value) { - return - } - } - if len(x.Members) != 0 { - value := protoreflect.ValueOfList(&_MsgValsetUpdatedClaim_4_list{list: &x.Members}) - if !f(fd_MsgValsetUpdatedClaim_members, value) { - return - } - } - if x.Orchestrator != "" { - value := protoreflect.ValueOfString(x.Orchestrator) - if !f(fd_MsgValsetUpdatedClaim_orchestrator, 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_MsgValsetUpdatedClaim) Has(fd protoreflect.FieldDescriptor) bool { - switch fd.FullName() { - case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": - return x.EventNonce != uint64(0) - case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": - return x.BlockHeight != uint64(0) - case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": - return x.ValsetNonce != uint64(0) - case "fx.gravity.v1.MsgValsetUpdatedClaim.members": - return len(x.Members) != 0 - case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": - return x.Orchestrator != "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim 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_MsgValsetUpdatedClaim) Clear(fd protoreflect.FieldDescriptor) { - switch fd.FullName() { - case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": - x.EventNonce = uint64(0) - case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": - x.BlockHeight = uint64(0) - case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": - x.ValsetNonce = uint64(0) - case "fx.gravity.v1.MsgValsetUpdatedClaim.members": - x.Members = nil - case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": - x.Orchestrator = "" - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim 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_MsgValsetUpdatedClaim) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { - switch descriptor.FullName() { - case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": - value := x.EventNonce - return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": - value := x.BlockHeight - return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": - value := x.ValsetNonce - return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.MsgValsetUpdatedClaim.members": - if len(x.Members) == 0 { - return protoreflect.ValueOfList(&_MsgValsetUpdatedClaim_4_list{}) - } - listValue := &_MsgValsetUpdatedClaim_4_list{list: &x.Members} - return protoreflect.ValueOfList(listValue) - case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": - value := x.Orchestrator - return protoreflect.ValueOfString(value) - default: - if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim 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_MsgValsetUpdatedClaim) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { - switch fd.FullName() { - case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": - x.EventNonce = value.Uint() - case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": - x.BlockHeight = value.Uint() - case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": - x.ValsetNonce = value.Uint() - case "fx.gravity.v1.MsgValsetUpdatedClaim.members": - lv := value.List() - clv := lv.(*_MsgValsetUpdatedClaim_4_list) - x.Members = *clv.list - case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": - x.Orchestrator = value.Interface().(string) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim 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_MsgValsetUpdatedClaim) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.v1.MsgValsetUpdatedClaim.members": - if x.Members == nil { - x.Members = []*BridgeValidator{} - } - value := &_MsgValsetUpdatedClaim_4_list{list: &x.Members} - return protoreflect.ValueOfList(value) - case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": - panic(fmt.Errorf("field event_nonce of message fx.gravity.v1.MsgValsetUpdatedClaim is not mutable")) - case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": - panic(fmt.Errorf("field block_height of message fx.gravity.v1.MsgValsetUpdatedClaim is not mutable")) - case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": - panic(fmt.Errorf("field valset_nonce of message fx.gravity.v1.MsgValsetUpdatedClaim is not mutable")) - case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": - panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgValsetUpdatedClaim is not mutable")) - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim 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_MsgValsetUpdatedClaim) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": - return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.MsgValsetUpdatedClaim.members": - list := []*BridgeValidator{} - return protoreflect.ValueOfList(&_MsgValsetUpdatedClaim_4_list{list: &list}) - case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": - return protoreflect.ValueOfString("") - default: - if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) - } - panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim 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_MsgValsetUpdatedClaim) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { - switch d.FullName() { - default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgValsetUpdatedClaim", 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_MsgValsetUpdatedClaim) 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_MsgValsetUpdatedClaim) 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_MsgValsetUpdatedClaim) 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_MsgValsetUpdatedClaim) ProtoMethods() *protoiface.Methods { - size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgValsetUpdatedClaim) - 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.EventNonce != 0 { - n += 1 + runtime.Sov(uint64(x.EventNonce)) - } - if x.BlockHeight != 0 { - n += 1 + runtime.Sov(uint64(x.BlockHeight)) - } - if x.ValsetNonce != 0 { - n += 1 + runtime.Sov(uint64(x.ValsetNonce)) - } - if len(x.Members) > 0 { - for _, e := range x.Members { - l = options.Size(e) - n += 1 + l + runtime.Sov(uint64(l)) - } - } - l = len(x.Orchestrator) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - if x.unknownFields != nil { - n += len(x.unknownFields) - } - return protoiface.SizeOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Size: n, - } - } - - marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgValsetUpdatedClaim) - if x == nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, nil - } - options := runtime.MarshalInputToOptions(input) - _ = options - size := options.Size(x) - dAtA := make([]byte, size) - i := len(dAtA) - _ = i - var l int - _ = l - if x.unknownFields != nil { - i -= len(x.unknownFields) - copy(dAtA[i:], x.unknownFields) - } - if len(x.Orchestrator) > 0 { - i -= len(x.Orchestrator) - copy(dAtA[i:], x.Orchestrator) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Orchestrator))) - i-- - dAtA[i] = 0x32 - } - if len(x.Members) > 0 { - for iNdEx := len(x.Members) - 1; iNdEx >= 0; iNdEx-- { - encoded, err := options.Marshal(x.Members[iNdEx]) - if err != nil { - return protoiface.MarshalOutput{ - NoUnkeyedLiterals: input.NoUnkeyedLiterals, - Buf: input.Buf, - }, err - } - i -= len(encoded) - copy(dAtA[i:], encoded) - i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) - i-- - dAtA[i] = 0x22 - } - } - if x.ValsetNonce != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.ValsetNonce)) - i-- - dAtA[i] = 0x18 - } - if x.BlockHeight != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.BlockHeight)) - i-- - dAtA[i] = 0x10 - } - if x.EventNonce != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.EventNonce)) - i-- - dAtA[i] = 0x8 - } - 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().(*MsgValsetUpdatedClaim) - 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: MsgValsetUpdatedClaim: wiretype end group for non-group") - } - if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgValsetUpdatedClaim: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EventNonce", wireType) - } - x.EventNonce = 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.EventNonce |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BlockHeight", wireType) - } - x.BlockHeight = 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.BlockHeight |= 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 ValsetNonce", wireType) - } - x.ValsetNonce = 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.ValsetNonce |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Members", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow - } - if iNdEx >= l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if postIndex > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - x.Members = append(x.Members, &BridgeValidator{}) - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Members[len(x.Members)-1]); err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - iNdEx = postIndex - case 6: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", 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.Orchestrator = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := runtime.Skip(dAtA[iNdEx:]) - if err != nil { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength - } - if (iNdEx + skippy) > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - if !options.DiscardUnknown { - x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) - } - iNdEx += skippy - } - } +var _ protoreflect.List = (*_MsgValsetUpdatedClaim_4_list)(nil) - if iNdEx > l { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF - } - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil +type _MsgValsetUpdatedClaim_4_list struct { + list *[]*BridgeValidator +} + +func (x *_MsgValsetUpdatedClaim_4_list) Len() int { + if x.list == nil { + return 0 } - return &protoiface.Methods{ - NoUnkeyedLiterals: struct{}{}, - Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, - Size: size, - Marshal: marshal, - Unmarshal: unmarshal, - Merge: nil, - CheckInitialized: nil, + return len(*x.list) +} + +func (x *_MsgValsetUpdatedClaim_4_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_MsgValsetUpdatedClaim_4_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*BridgeValidator) + (*x.list)[i] = concreteValue +} + +func (x *_MsgValsetUpdatedClaim_4_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*BridgeValidator) + *x.list = append(*x.list, concreteValue) +} + +func (x *_MsgValsetUpdatedClaim_4_list) AppendMutable() protoreflect.Value { + v := new(BridgeValidator) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_MsgValsetUpdatedClaim_4_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil } + *x.list = (*x.list)[:n] +} + +func (x *_MsgValsetUpdatedClaim_4_list) NewElement() protoreflect.Value { + v := new(BridgeValidator) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_MsgValsetUpdatedClaim_4_list) IsValid() bool { + return x.list != nil } var ( - md_BridgeValidator protoreflect.MessageDescriptor - fd_BridgeValidator_power protoreflect.FieldDescriptor - fd_BridgeValidator_eth_address protoreflect.FieldDescriptor + md_MsgValsetUpdatedClaim protoreflect.MessageDescriptor + fd_MsgValsetUpdatedClaim_event_nonce protoreflect.FieldDescriptor + fd_MsgValsetUpdatedClaim_block_height protoreflect.FieldDescriptor + fd_MsgValsetUpdatedClaim_valset_nonce protoreflect.FieldDescriptor + fd_MsgValsetUpdatedClaim_members protoreflect.FieldDescriptor + fd_MsgValsetUpdatedClaim_orchestrator protoreflect.FieldDescriptor ) func init() { file_fx_gravity_v1_gravity_legacy_proto_init() - md_BridgeValidator = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("BridgeValidator") - fd_BridgeValidator_power = md_BridgeValidator.Fields().ByName("power") - fd_BridgeValidator_eth_address = md_BridgeValidator.Fields().ByName("eth_address") + md_MsgValsetUpdatedClaim = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgValsetUpdatedClaim") + fd_MsgValsetUpdatedClaim_event_nonce = md_MsgValsetUpdatedClaim.Fields().ByName("event_nonce") + fd_MsgValsetUpdatedClaim_block_height = md_MsgValsetUpdatedClaim.Fields().ByName("block_height") + fd_MsgValsetUpdatedClaim_valset_nonce = md_MsgValsetUpdatedClaim.Fields().ByName("valset_nonce") + fd_MsgValsetUpdatedClaim_members = md_MsgValsetUpdatedClaim.Fields().ByName("members") + fd_MsgValsetUpdatedClaim_orchestrator = md_MsgValsetUpdatedClaim.Fields().ByName("orchestrator") } -var _ protoreflect.Message = (*fastReflection_BridgeValidator)(nil) +var _ protoreflect.Message = (*fastReflection_MsgValsetUpdatedClaim)(nil) -type fastReflection_BridgeValidator BridgeValidator +type fastReflection_MsgValsetUpdatedClaim MsgValsetUpdatedClaim -func (x *BridgeValidator) ProtoReflect() protoreflect.Message { - return (*fastReflection_BridgeValidator)(x) +func (x *MsgValsetUpdatedClaim) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgValsetUpdatedClaim)(x) } -func (x *BridgeValidator) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[8] +func (x *MsgValsetUpdatedClaim) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5255,43 +3934,43 @@ func (x *BridgeValidator) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_BridgeValidator_messageType fastReflection_BridgeValidator_messageType -var _ protoreflect.MessageType = fastReflection_BridgeValidator_messageType{} +var _fastReflection_MsgValsetUpdatedClaim_messageType fastReflection_MsgValsetUpdatedClaim_messageType +var _ protoreflect.MessageType = fastReflection_MsgValsetUpdatedClaim_messageType{} -type fastReflection_BridgeValidator_messageType struct{} +type fastReflection_MsgValsetUpdatedClaim_messageType struct{} -func (x fastReflection_BridgeValidator_messageType) Zero() protoreflect.Message { - return (*fastReflection_BridgeValidator)(nil) +func (x fastReflection_MsgValsetUpdatedClaim_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgValsetUpdatedClaim)(nil) } -func (x fastReflection_BridgeValidator_messageType) New() protoreflect.Message { - return new(fastReflection_BridgeValidator) +func (x fastReflection_MsgValsetUpdatedClaim_messageType) New() protoreflect.Message { + return new(fastReflection_MsgValsetUpdatedClaim) } -func (x fastReflection_BridgeValidator_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_BridgeValidator +func (x fastReflection_MsgValsetUpdatedClaim_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgValsetUpdatedClaim } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_BridgeValidator) Descriptor() protoreflect.MessageDescriptor { - return md_BridgeValidator +func (x *fastReflection_MsgValsetUpdatedClaim) Descriptor() protoreflect.MessageDescriptor { + return md_MsgValsetUpdatedClaim } // 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_BridgeValidator) Type() protoreflect.MessageType { - return _fastReflection_BridgeValidator_messageType +func (x *fastReflection_MsgValsetUpdatedClaim) Type() protoreflect.MessageType { + return _fastReflection_MsgValsetUpdatedClaim_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_BridgeValidator) New() protoreflect.Message { - return new(fastReflection_BridgeValidator) +func (x *fastReflection_MsgValsetUpdatedClaim) New() protoreflect.Message { + return new(fastReflection_MsgValsetUpdatedClaim) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_BridgeValidator) Interface() protoreflect.ProtoMessage { - return (*BridgeValidator)(x) +func (x *fastReflection_MsgValsetUpdatedClaim) Interface() protoreflect.ProtoMessage { + return (*MsgValsetUpdatedClaim)(x) } // Range iterates over every populated field in an undefined order, @@ -5299,16 +3978,34 @@ func (x *fastReflection_BridgeValidator) Interface() protoreflect.ProtoMessage { // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_BridgeValidator) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Power != uint64(0) { - value := protoreflect.ValueOfUint64(x.Power) - if !f(fd_BridgeValidator_power, value) { +func (x *fastReflection_MsgValsetUpdatedClaim) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.EventNonce != uint64(0) { + value := protoreflect.ValueOfUint64(x.EventNonce) + if !f(fd_MsgValsetUpdatedClaim_event_nonce, value) { return } } - if x.EthAddress != "" { - value := protoreflect.ValueOfString(x.EthAddress) - if !f(fd_BridgeValidator_eth_address, value) { + if x.BlockHeight != uint64(0) { + value := protoreflect.ValueOfUint64(x.BlockHeight) + if !f(fd_MsgValsetUpdatedClaim_block_height, value) { + return + } + } + if x.ValsetNonce != uint64(0) { + value := protoreflect.ValueOfUint64(x.ValsetNonce) + if !f(fd_MsgValsetUpdatedClaim_valset_nonce, value) { + return + } + } + if len(x.Members) != 0 { + value := protoreflect.ValueOfList(&_MsgValsetUpdatedClaim_4_list{list: &x.Members}) + if !f(fd_MsgValsetUpdatedClaim_members, value) { + return + } + } + if x.Orchestrator != "" { + value := protoreflect.ValueOfString(x.Orchestrator) + if !f(fd_MsgValsetUpdatedClaim_orchestrator, value) { return } } @@ -5325,17 +4022,23 @@ func (x *fastReflection_BridgeValidator) Range(f func(protoreflect.FieldDescript // 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_BridgeValidator) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_MsgValsetUpdatedClaim) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.gravity.v1.BridgeValidator.power": - return x.Power != uint64(0) - case "fx.gravity.v1.BridgeValidator.eth_address": - return x.EthAddress != "" + case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": + return x.EventNonce != uint64(0) + case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": + return x.BlockHeight != uint64(0) + case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": + return x.ValsetNonce != uint64(0) + case "fx.gravity.v1.MsgValsetUpdatedClaim.members": + return len(x.Members) != 0 + case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": + return x.Orchestrator != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim does not contain field %s", fd.FullName())) } } @@ -5345,17 +4048,23 @@ func (x *fastReflection_BridgeValidator) Has(fd protoreflect.FieldDescriptor) bo // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_BridgeValidator) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_MsgValsetUpdatedClaim) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.gravity.v1.BridgeValidator.power": - x.Power = uint64(0) - case "fx.gravity.v1.BridgeValidator.eth_address": - x.EthAddress = "" + case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": + x.EventNonce = uint64(0) + case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": + x.BlockHeight = uint64(0) + case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": + x.ValsetNonce = uint64(0) + case "fx.gravity.v1.MsgValsetUpdatedClaim.members": + x.Members = nil + case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": + x.Orchestrator = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim does not contain field %s", fd.FullName())) } } @@ -5365,19 +4074,31 @@ func (x *fastReflection_BridgeValidator) Clear(fd protoreflect.FieldDescriptor) // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_BridgeValidator) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgValsetUpdatedClaim) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.gravity.v1.BridgeValidator.power": - value := x.Power + case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": + value := x.EventNonce return protoreflect.ValueOfUint64(value) - case "fx.gravity.v1.BridgeValidator.eth_address": - value := x.EthAddress + case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": + value := x.BlockHeight + return protoreflect.ValueOfUint64(value) + case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": + value := x.ValsetNonce + return protoreflect.ValueOfUint64(value) + case "fx.gravity.v1.MsgValsetUpdatedClaim.members": + if len(x.Members) == 0 { + return protoreflect.ValueOfList(&_MsgValsetUpdatedClaim_4_list{}) + } + listValue := &_MsgValsetUpdatedClaim_4_list{list: &x.Members} + return protoreflect.ValueOfList(listValue) + case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": + value := x.Orchestrator return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim does not contain field %s", descriptor.FullName())) } } @@ -5391,17 +4112,25 @@ func (x *fastReflection_BridgeValidator) Get(descriptor protoreflect.FieldDescri // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_BridgeValidator) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_MsgValsetUpdatedClaim) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.gravity.v1.BridgeValidator.power": - x.Power = value.Uint() - case "fx.gravity.v1.BridgeValidator.eth_address": - x.EthAddress = value.Interface().(string) + case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": + x.EventNonce = value.Uint() + case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": + x.BlockHeight = value.Uint() + case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": + x.ValsetNonce = value.Uint() + case "fx.gravity.v1.MsgValsetUpdatedClaim.members": + lv := value.List() + clv := lv.(*_MsgValsetUpdatedClaim_4_list) + x.Members = *clv.list + case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": + x.Orchestrator = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim does not contain field %s", fd.FullName())) } } @@ -5415,44 +4144,61 @@ func (x *fastReflection_BridgeValidator) Set(fd protoreflect.FieldDescriptor, va // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_BridgeValidator) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { - switch fd.FullName() { - case "fx.gravity.v1.BridgeValidator.power": - panic(fmt.Errorf("field power of message fx.gravity.v1.BridgeValidator is not mutable")) - case "fx.gravity.v1.BridgeValidator.eth_address": - panic(fmt.Errorf("field eth_address of message fx.gravity.v1.BridgeValidator is not mutable")) +func (x *fastReflection_MsgValsetUpdatedClaim) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.v1.MsgValsetUpdatedClaim.members": + if x.Members == nil { + x.Members = []*BridgeValidator{} + } + value := &_MsgValsetUpdatedClaim_4_list{list: &x.Members} + return protoreflect.ValueOfList(value) + case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": + panic(fmt.Errorf("field event_nonce of message fx.gravity.v1.MsgValsetUpdatedClaim is not mutable")) + case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": + panic(fmt.Errorf("field block_height of message fx.gravity.v1.MsgValsetUpdatedClaim is not mutable")) + case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": + panic(fmt.Errorf("field valset_nonce of message fx.gravity.v1.MsgValsetUpdatedClaim is not mutable")) + case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": + panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgValsetUpdatedClaim is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim 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_BridgeValidator) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgValsetUpdatedClaim) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.BridgeValidator.power": + case "fx.gravity.v1.MsgValsetUpdatedClaim.event_nonce": return protoreflect.ValueOfUint64(uint64(0)) - case "fx.gravity.v1.BridgeValidator.eth_address": + case "fx.gravity.v1.MsgValsetUpdatedClaim.block_height": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.v1.MsgValsetUpdatedClaim.valset_nonce": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.v1.MsgValsetUpdatedClaim.members": + list := []*BridgeValidator{} + return protoreflect.ValueOfList(&_MsgValsetUpdatedClaim_4_list{list: &list}) + case "fx.gravity.v1.MsgValsetUpdatedClaim.orchestrator": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgValsetUpdatedClaim")) } - panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.MsgValsetUpdatedClaim 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_BridgeValidator) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_MsgValsetUpdatedClaim) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.BridgeValidator", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgValsetUpdatedClaim", d.FullName())) } panic("unreachable") } @@ -5460,7 +4206,7 @@ func (x *fastReflection_BridgeValidator) WhichOneof(d protoreflect.OneofDescript // 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_BridgeValidator) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_MsgValsetUpdatedClaim) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -5471,7 +4217,7 @@ func (x *fastReflection_BridgeValidator) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_BridgeValidator) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_MsgValsetUpdatedClaim) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -5483,7 +4229,7 @@ func (x *fastReflection_BridgeValidator) SetUnknown(fields protoreflect.RawField // 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_BridgeValidator) IsValid() bool { +func (x *fastReflection_MsgValsetUpdatedClaim) IsValid() bool { return x != nil } @@ -5493,9 +4239,9 @@ func (x *fastReflection_BridgeValidator) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_MsgValsetUpdatedClaim) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*BridgeValidator) + x := input.Message.Interface().(*MsgValsetUpdatedClaim) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5507,10 +4253,22 @@ func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { var n int var l int _ = l - if x.Power != 0 { - n += 1 + runtime.Sov(uint64(x.Power)) + if x.EventNonce != 0 { + n += 1 + runtime.Sov(uint64(x.EventNonce)) } - l = len(x.EthAddress) + if x.BlockHeight != 0 { + n += 1 + runtime.Sov(uint64(x.BlockHeight)) + } + if x.ValsetNonce != 0 { + n += 1 + runtime.Sov(uint64(x.ValsetNonce)) + } + if len(x.Members) > 0 { + for _, e := range x.Members { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + l = len(x.Orchestrator) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) } @@ -5524,7 +4282,7 @@ func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*BridgeValidator) + x := input.Message.Interface().(*MsgValsetUpdatedClaim) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5543,15 +4301,41 @@ func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.EthAddress) > 0 { - i -= len(x.EthAddress) - copy(dAtA[i:], x.EthAddress) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.EthAddress))) + if len(x.Orchestrator) > 0 { + i -= len(x.Orchestrator) + copy(dAtA[i:], x.Orchestrator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Orchestrator))) i-- - dAtA[i] = 0x12 + dAtA[i] = 0x32 } - if x.Power != 0 { - i = runtime.EncodeVarint(dAtA, i, uint64(x.Power)) + if len(x.Members) > 0 { + for iNdEx := len(x.Members) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.Members[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x22 + } + } + if x.ValsetNonce != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.ValsetNonce)) + i-- + dAtA[i] = 0x18 + } + if x.BlockHeight != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.BlockHeight)) + i-- + dAtA[i] = 0x10 + } + if x.EventNonce != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.EventNonce)) i-- dAtA[i] = 0x8 } @@ -5566,7 +4350,7 @@ func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*BridgeValidator) + x := input.Message.Interface().(*MsgValsetUpdatedClaim) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5598,17 +4382,17 @@ func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: BridgeValidator: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgValsetUpdatedClaim: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: BridgeValidator: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgValsetUpdatedClaim: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Power", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EventNonce", wireType) } - x.Power = 0 + x.EventNonce = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -5618,14 +4402,86 @@ func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { } b := dAtA[iNdEx] iNdEx++ - x.Power |= uint64(b&0x7F) << shift + x.EventNonce |= uint64(b&0x7F) << shift if b < 0x80 { break } } case 2: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BlockHeight", wireType) + } + x.BlockHeight = 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.BlockHeight |= 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 ValsetNonce", wireType) + } + x.ValsetNonce = 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.ValsetNonce |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 4: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EthAddress", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Members", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Members = append(x.Members, &BridgeValidator{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Members[len(x.Members)-1]); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -5653,7 +4509,7 @@ func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - x.EthAddress = string(dAtA[iNdEx:postIndex]) + x.Orchestrator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -5691,30 +4547,28 @@ func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { } var ( - md_MsgSetOrchestratorAddress protoreflect.MessageDescriptor - fd_MsgSetOrchestratorAddress_validator protoreflect.FieldDescriptor - fd_MsgSetOrchestratorAddress_orchestrator protoreflect.FieldDescriptor - fd_MsgSetOrchestratorAddress_eth_address protoreflect.FieldDescriptor + md_BridgeValidator protoreflect.MessageDescriptor + fd_BridgeValidator_power protoreflect.FieldDescriptor + fd_BridgeValidator_eth_address protoreflect.FieldDescriptor ) func init() { file_fx_gravity_v1_gravity_legacy_proto_init() - md_MsgSetOrchestratorAddress = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("MsgSetOrchestratorAddress") - fd_MsgSetOrchestratorAddress_validator = md_MsgSetOrchestratorAddress.Fields().ByName("validator") - fd_MsgSetOrchestratorAddress_orchestrator = md_MsgSetOrchestratorAddress.Fields().ByName("orchestrator") - fd_MsgSetOrchestratorAddress_eth_address = md_MsgSetOrchestratorAddress.Fields().ByName("eth_address") + md_BridgeValidator = File_fx_gravity_v1_gravity_legacy_proto.Messages().ByName("BridgeValidator") + fd_BridgeValidator_power = md_BridgeValidator.Fields().ByName("power") + fd_BridgeValidator_eth_address = md_BridgeValidator.Fields().ByName("eth_address") } -var _ protoreflect.Message = (*fastReflection_MsgSetOrchestratorAddress)(nil) +var _ protoreflect.Message = (*fastReflection_BridgeValidator)(nil) -type fastReflection_MsgSetOrchestratorAddress MsgSetOrchestratorAddress +type fastReflection_BridgeValidator BridgeValidator -func (x *MsgSetOrchestratorAddress) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgSetOrchestratorAddress)(x) +func (x *BridgeValidator) ProtoReflect() protoreflect.Message { + return (*fastReflection_BridgeValidator)(x) } -func (x *MsgSetOrchestratorAddress) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[9] +func (x *BridgeValidator) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5725,43 +4579,43 @@ func (x *MsgSetOrchestratorAddress) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_MsgSetOrchestratorAddress_messageType fastReflection_MsgSetOrchestratorAddress_messageType -var _ protoreflect.MessageType = fastReflection_MsgSetOrchestratorAddress_messageType{} +var _fastReflection_BridgeValidator_messageType fastReflection_BridgeValidator_messageType +var _ protoreflect.MessageType = fastReflection_BridgeValidator_messageType{} -type fastReflection_MsgSetOrchestratorAddress_messageType struct{} +type fastReflection_BridgeValidator_messageType struct{} -func (x fastReflection_MsgSetOrchestratorAddress_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgSetOrchestratorAddress)(nil) +func (x fastReflection_BridgeValidator_messageType) Zero() protoreflect.Message { + return (*fastReflection_BridgeValidator)(nil) } -func (x fastReflection_MsgSetOrchestratorAddress_messageType) New() protoreflect.Message { - return new(fastReflection_MsgSetOrchestratorAddress) +func (x fastReflection_BridgeValidator_messageType) New() protoreflect.Message { + return new(fastReflection_BridgeValidator) } -func (x fastReflection_MsgSetOrchestratorAddress_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgSetOrchestratorAddress +func (x fastReflection_BridgeValidator_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_BridgeValidator } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_MsgSetOrchestratorAddress) Descriptor() protoreflect.MessageDescriptor { - return md_MsgSetOrchestratorAddress +func (x *fastReflection_BridgeValidator) Descriptor() protoreflect.MessageDescriptor { + return md_BridgeValidator } // 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_MsgSetOrchestratorAddress) Type() protoreflect.MessageType { - return _fastReflection_MsgSetOrchestratorAddress_messageType +func (x *fastReflection_BridgeValidator) Type() protoreflect.MessageType { + return _fastReflection_BridgeValidator_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgSetOrchestratorAddress) New() protoreflect.Message { - return new(fastReflection_MsgSetOrchestratorAddress) +func (x *fastReflection_BridgeValidator) New() protoreflect.Message { + return new(fastReflection_BridgeValidator) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgSetOrchestratorAddress) Interface() protoreflect.ProtoMessage { - return (*MsgSetOrchestratorAddress)(x) +func (x *fastReflection_BridgeValidator) Interface() protoreflect.ProtoMessage { + return (*BridgeValidator)(x) } // Range iterates over every populated field in an undefined order, @@ -5769,22 +4623,16 @@ func (x *fastReflection_MsgSetOrchestratorAddress) Interface() protoreflect.Prot // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_MsgSetOrchestratorAddress) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Validator != "" { - value := protoreflect.ValueOfString(x.Validator) - if !f(fd_MsgSetOrchestratorAddress_validator, value) { - return - } - } - if x.Orchestrator != "" { - value := protoreflect.ValueOfString(x.Orchestrator) - if !f(fd_MsgSetOrchestratorAddress_orchestrator, value) { +func (x *fastReflection_BridgeValidator) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Power != uint64(0) { + value := protoreflect.ValueOfUint64(x.Power) + if !f(fd_BridgeValidator_power, value) { return } } if x.EthAddress != "" { value := protoreflect.ValueOfString(x.EthAddress) - if !f(fd_MsgSetOrchestratorAddress_eth_address, value) { + if !f(fd_BridgeValidator_eth_address, value) { return } } @@ -5801,19 +4649,17 @@ func (x *fastReflection_MsgSetOrchestratorAddress) Range(f func(protoreflect.Fie // 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_MsgSetOrchestratorAddress) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_BridgeValidator) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": - return x.Validator != "" - case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": - return x.Orchestrator != "" - case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + case "fx.gravity.v1.BridgeValidator.power": + return x.Power != uint64(0) + case "fx.gravity.v1.BridgeValidator.eth_address": return x.EthAddress != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", fd.FullName())) } } @@ -5823,19 +4669,17 @@ func (x *fastReflection_MsgSetOrchestratorAddress) Has(fd protoreflect.FieldDesc // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgSetOrchestratorAddress) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_BridgeValidator) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": - x.Validator = "" - case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": - x.Orchestrator = "" - case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + case "fx.gravity.v1.BridgeValidator.power": + x.Power = uint64(0) + case "fx.gravity.v1.BridgeValidator.eth_address": x.EthAddress = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", fd.FullName())) } } @@ -5845,22 +4689,19 @@ func (x *fastReflection_MsgSetOrchestratorAddress) Clear(fd protoreflect.FieldDe // 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_MsgSetOrchestratorAddress) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_BridgeValidator) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": - value := x.Validator - return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": - value := x.Orchestrator - return protoreflect.ValueOfString(value) - case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + case "fx.gravity.v1.BridgeValidator.power": + value := x.Power + return protoreflect.ValueOfUint64(value) + case "fx.gravity.v1.BridgeValidator.eth_address": value := x.EthAddress return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", descriptor.FullName())) } } @@ -5874,19 +4715,17 @@ func (x *fastReflection_MsgSetOrchestratorAddress) Get(descriptor protoreflect.F // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgSetOrchestratorAddress) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_BridgeValidator) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": - x.Validator = value.Interface().(string) - case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": - x.Orchestrator = value.Interface().(string) - case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + case "fx.gravity.v1.BridgeValidator.power": + x.Power = value.Uint() + case "fx.gravity.v1.BridgeValidator.eth_address": x.EthAddress = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator does not contain field %s", fd.FullName())) } } @@ -5900,48 +4739,44 @@ func (x *fastReflection_MsgSetOrchestratorAddress) Set(fd protoreflect.FieldDesc // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgSetOrchestratorAddress) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_BridgeValidator) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": - panic(fmt.Errorf("field validator of message fx.gravity.v1.MsgSetOrchestratorAddress is not mutable")) - case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": - panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgSetOrchestratorAddress is not mutable")) - case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": - panic(fmt.Errorf("field eth_address of message fx.gravity.v1.MsgSetOrchestratorAddress is not mutable")) + case "fx.gravity.v1.BridgeValidator.power": + panic(fmt.Errorf("field power of message fx.gravity.v1.BridgeValidator is not mutable")) + case "fx.gravity.v1.BridgeValidator.eth_address": + panic(fmt.Errorf("field eth_address of message fx.gravity.v1.BridgeValidator is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator 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_MsgSetOrchestratorAddress) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_BridgeValidator) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": - return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": - return protoreflect.ValueOfString("") - case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + case "fx.gravity.v1.BridgeValidator.power": + return protoreflect.ValueOfUint64(uint64(0)) + case "fx.gravity.v1.BridgeValidator.eth_address": return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.BridgeValidator")) } - panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message fx.gravity.v1.BridgeValidator 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_MsgSetOrchestratorAddress) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_BridgeValidator) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgSetOrchestratorAddress", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.BridgeValidator", d.FullName())) } panic("unreachable") } @@ -5949,7 +4784,7 @@ func (x *fastReflection_MsgSetOrchestratorAddress) WhichOneof(d protoreflect.One // 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_MsgSetOrchestratorAddress) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_BridgeValidator) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -5960,7 +4795,7 @@ func (x *fastReflection_MsgSetOrchestratorAddress) GetUnknown() protoreflect.Raw // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgSetOrchestratorAddress) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_BridgeValidator) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -5972,7 +4807,7 @@ func (x *fastReflection_MsgSetOrchestratorAddress) SetUnknown(fields protoreflec // 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_MsgSetOrchestratorAddress) IsValid() bool { +func (x *fastReflection_BridgeValidator) IsValid() bool { return x != nil } @@ -5982,9 +4817,9 @@ func (x *fastReflection_MsgSetOrchestratorAddress) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_BridgeValidator) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgSetOrchestratorAddress) + x := input.Message.Interface().(*BridgeValidator) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -5996,13 +4831,8 @@ func (x *fastReflection_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Me var n int var l int _ = l - l = len(x.Validator) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.Orchestrator) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) + if x.Power != 0 { + n += 1 + runtime.Sov(uint64(x.Power)) } l = len(x.EthAddress) if l > 0 { @@ -6018,7 +4848,7 @@ func (x *fastReflection_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Me } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgSetOrchestratorAddress) + x := input.Message.Interface().(*BridgeValidator) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6042,21 +4872,12 @@ func (x *fastReflection_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Me copy(dAtA[i:], x.EthAddress) i = runtime.EncodeVarint(dAtA, i, uint64(len(x.EthAddress))) i-- - dAtA[i] = 0x1a - } - if len(x.Orchestrator) > 0 { - i -= len(x.Orchestrator) - copy(dAtA[i:], x.Orchestrator) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Orchestrator))) - i-- dAtA[i] = 0x12 } - if len(x.Validator) > 0 { - i -= len(x.Validator) - copy(dAtA[i:], x.Validator) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Validator))) + if x.Power != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.Power)) i-- - dAtA[i] = 0xa + dAtA[i] = 0x8 } if input.Buf != nil { input.Buf = append(input.Buf, dAtA...) @@ -6069,7 +4890,7 @@ func (x *fastReflection_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Me }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgSetOrchestratorAddress) + x := input.Message.Interface().(*BridgeValidator) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -6101,17 +4922,17 @@ func (x *fastReflection_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Me fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSetOrchestratorAddress: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: BridgeValidator: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSetOrchestratorAddress: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: BridgeValidator: 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 Validator", wireType) + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Power", wireType) } - var stringLen uint64 + x.Power = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow @@ -6121,57 +4942,12 @@ func (x *fastReflection_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Me } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + x.Power |= 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.Validator = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex case 2: - if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", 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.Orchestrator = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: if wireType != 2 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EthAddress", wireType) } @@ -6270,7 +5046,7 @@ func (x *MsgFxOriginatedTokenClaim) ProtoReflect() protoreflect.Message { } func (x *MsgFxOriginatedTokenClaim) slowProtoReflect() protoreflect.Message { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[10] + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7127,74 +5903,6 @@ func (x *MsgSendToEth) GetBridgeFee() *v1beta1.Coin { return nil } -// Deprecated: after upgrade v3 -type MsgRequestBatch struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` - Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` - MinimumFee string `protobuf:"bytes,3,opt,name=minimum_fee,json=minimumFee,proto3" json:"minimum_fee,omitempty"` - FeeReceive string `protobuf:"bytes,4,opt,name=fee_receive,json=feeReceive,proto3" json:"fee_receive,omitempty"` - BaseFee string `protobuf:"bytes,5,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"` -} - -func (x *MsgRequestBatch) Reset() { - *x = MsgRequestBatch{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgRequestBatch) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgRequestBatch) ProtoMessage() {} - -// Deprecated: Use MsgRequestBatch.ProtoReflect.Descriptor instead. -func (*MsgRequestBatch) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{2} -} - -func (x *MsgRequestBatch) GetSender() string { - if x != nil { - return x.Sender - } - return "" -} - -func (x *MsgRequestBatch) GetDenom() string { - if x != nil { - return x.Denom - } - return "" -} - -func (x *MsgRequestBatch) GetMinimumFee() string { - if x != nil { - return x.MinimumFee - } - return "" -} - -func (x *MsgRequestBatch) GetFeeReceive() string { - if x != nil { - return x.FeeReceive - } - return "" -} - -func (x *MsgRequestBatch) GetBaseFee() string { - if x != nil { - return x.BaseFee - } - return "" -} - // Deprecated: after upgrade v3 type MsgConfirmBatch struct { state protoimpl.MessageState @@ -7211,7 +5919,7 @@ type MsgConfirmBatch struct { func (x *MsgConfirmBatch) Reset() { *x = MsgConfirmBatch{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[3] + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7225,7 +5933,7 @@ func (*MsgConfirmBatch) ProtoMessage() {} // Deprecated: Use MsgConfirmBatch.ProtoReflect.Descriptor instead. func (*MsgConfirmBatch) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{3} + return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{2} } func (x *MsgConfirmBatch) GetNonce() uint64 { @@ -7282,7 +5990,7 @@ type MsgDepositClaim struct { func (x *MsgDepositClaim) Reset() { *x = MsgDepositClaim{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[4] + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7296,7 +6004,7 @@ func (*MsgDepositClaim) ProtoMessage() {} // Deprecated: Use MsgDepositClaim.ProtoReflect.Descriptor instead. func (*MsgDepositClaim) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{4} + return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{3} } func (x *MsgDepositClaim) GetEventNonce() uint64 { @@ -7371,7 +6079,7 @@ type MsgWithdrawClaim struct { func (x *MsgWithdrawClaim) Reset() { *x = MsgWithdrawClaim{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[5] + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7385,7 +6093,7 @@ func (*MsgWithdrawClaim) ProtoMessage() {} // Deprecated: Use MsgWithdrawClaim.ProtoReflect.Descriptor instead. func (*MsgWithdrawClaim) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{5} + return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{4} } func (x *MsgWithdrawClaim) GetEventNonce() uint64 { @@ -7436,7 +6144,7 @@ type MsgCancelSendToEth struct { func (x *MsgCancelSendToEth) Reset() { *x = MsgCancelSendToEth{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[6] + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7450,7 +6158,7 @@ func (*MsgCancelSendToEth) ProtoMessage() {} // Deprecated: Use MsgCancelSendToEth.ProtoReflect.Descriptor instead. func (*MsgCancelSendToEth) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{6} + return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{5} } func (x *MsgCancelSendToEth) GetTransactionId() uint64 { @@ -7483,7 +6191,7 @@ type MsgValsetUpdatedClaim struct { func (x *MsgValsetUpdatedClaim) Reset() { *x = MsgValsetUpdatedClaim{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[7] + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7497,7 +6205,7 @@ func (*MsgValsetUpdatedClaim) ProtoMessage() {} // Deprecated: Use MsgValsetUpdatedClaim.ProtoReflect.Descriptor instead. func (*MsgValsetUpdatedClaim) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{7} + return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{6} } func (x *MsgValsetUpdatedClaim) GetEventNonce() uint64 { @@ -7548,7 +6256,7 @@ type BridgeValidator struct { func (x *BridgeValidator) Reset() { *x = BridgeValidator{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[8] + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7562,7 +6270,7 @@ func (*BridgeValidator) ProtoMessage() {} // Deprecated: Use BridgeValidator.ProtoReflect.Descriptor instead. func (*BridgeValidator) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{8} + return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{7} } func (x *BridgeValidator) GetPower() uint64 { @@ -7579,58 +6287,6 @@ func (x *BridgeValidator) GetEthAddress() string { return "" } -// Deprecated: after upgrade v3 -type MsgSetOrchestratorAddress struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Validator string `protobuf:"bytes,1,opt,name=validator,proto3" json:"validator,omitempty"` - Orchestrator string `protobuf:"bytes,2,opt,name=orchestrator,proto3" json:"orchestrator,omitempty"` - EthAddress string `protobuf:"bytes,3,opt,name=eth_address,json=ethAddress,proto3" json:"eth_address,omitempty"` -} - -func (x *MsgSetOrchestratorAddress) Reset() { - *x = MsgSetOrchestratorAddress{} - if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgSetOrchestratorAddress) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgSetOrchestratorAddress) ProtoMessage() {} - -// Deprecated: Use MsgSetOrchestratorAddress.ProtoReflect.Descriptor instead. -func (*MsgSetOrchestratorAddress) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{9} -} - -func (x *MsgSetOrchestratorAddress) GetValidator() string { - if x != nil { - return x.Validator - } - return "" -} - -func (x *MsgSetOrchestratorAddress) GetOrchestrator() string { - if x != nil { - return x.Orchestrator - } - return "" -} - -func (x *MsgSetOrchestratorAddress) GetEthAddress() string { - if x != nil { - return x.EthAddress - } - return "" -} - // Deprecated: after upgrade v3 type MsgFxOriginatedTokenClaim struct { state protoimpl.MessageState @@ -7649,7 +6305,7 @@ type MsgFxOriginatedTokenClaim struct { func (x *MsgFxOriginatedTokenClaim) Reset() { *x = MsgFxOriginatedTokenClaim{} if protoimpl.UnsafeEnabled { - mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[10] + mi := &file_fx_gravity_v1_gravity_legacy_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7663,7 +6319,7 @@ func (*MsgFxOriginatedTokenClaim) ProtoMessage() {} // Deprecated: Use MsgFxOriginatedTokenClaim.ProtoReflect.Descriptor instead. func (*MsgFxOriginatedTokenClaim) Descriptor() ([]byte, []int) { - return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{10} + return file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP(), []int{8} } func (x *MsgFxOriginatedTokenClaim) GetEventNonce() uint64 { @@ -7745,122 +6401,100 @@ var file_fx_gravity_v1_gravity_legacy_proto_rawDesc = []byte{ 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, - 0x65, 0x46, 0x65, 0x65, 0x22, 0xda, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x3e, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, - 0x6d, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, - 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, - 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x69, - 0x6d, 0x75, 0x6d, 0x46, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x65, 0x65, - 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, - 0x66, 0x65, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xda, - 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, - 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, - 0x65, 0x22, 0xaf, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, - 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x74, 0x68, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x65, - 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x22, 0xb6, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, - 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x12, 0x35, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, - 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x74, 0x68, - 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, - 0x74, 0x68, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x78, 0x5f, 0x72, - 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, - 0x78, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x5f, 0x69, 0x62, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x62, 0x63, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, 0x68, - 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xc2, 0x01, 0x0a, - 0x10, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x43, 0x6c, 0x61, 0x69, - 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, - 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, - 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, - 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6e, - 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, - 0x68, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x22, 0x0a, - 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x22, 0x53, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x65, - 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x74, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x16, - 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0xdc, 0x01, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x56, 0x61, - 0x6c, 0x73, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x43, 0x6c, 0x61, 0x69, 0x6d, + 0x65, 0x46, 0x65, 0x65, 0x22, 0xaf, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x25, + 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x74, 0x68, 0x5f, 0x73, 0x69, 0x67, + 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x74, 0x68, 0x53, 0x69, + 0x67, 0x6e, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, + 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, + 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, + 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xb6, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x44, 0x65, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, + 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x35, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, + 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x65, 0x74, 0x68, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x65, 0x74, 0x68, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x66, + 0x78, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x66, 0x78, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x62, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x62, 0x63, 0x12, 0x22, 0x0a, 0x0c, 0x6f, + 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, + 0xc2, 0x01, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x43, + 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, + 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, + 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x63, + 0x68, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x62, + 0x61, 0x74, 0x63, 0x68, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x22, 0x53, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x43, 0x61, 0x6e, 0x63, 0x65, + 0x6c, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x45, 0x74, 0x68, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0xdc, 0x01, 0x0a, 0x15, 0x4d, 0x73, + 0x67, 0x56, 0x61, 0x6c, 0x73, 0x65, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x43, 0x6c, + 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, + 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, + 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x73, 0x65, + 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x76, + 0x61, 0x6c, 0x73, 0x65, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x6d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x66, 0x78, + 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, + 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x48, 0x0a, 0x0f, 0x42, 0x72, 0x69, 0x64, + 0x67, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x70, + 0x6f, 0x77, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, + 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x74, 0x68, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x74, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x22, 0xf2, 0x01, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x46, 0x78, 0x4f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, - 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x73, 0x65, 0x74, 0x5f, 0x6e, - 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x73, - 0x65, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, - 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x48, 0x0a, 0x0f, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x1f, - 0x0a, 0x0b, 0x65, 0x74, 0x68, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x74, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, - 0x7e, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x4f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, 0x09, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, - 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1f, - 0x0a, 0x0b, 0x65, 0x74, 0x68, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x74, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, - 0xf2, 0x01, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x46, 0x78, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x65, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x1f, 0x0a, - 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x21, - 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, - 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x79, - 0x6d, 0x62, 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x73, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x73, - 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x42, 0xa7, 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, - 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x76, 0x31, 0x42, 0x12, 0x47, 0x72, 0x61, 0x76, - 0x69, 0x74, 0x79, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, - 0x5a, 0x28, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, - 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, - 0x3b, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, 0x47, 0x58, - 0xaa, 0x02, 0x0d, 0x46, 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x56, 0x31, - 0xca, 0x02, 0x0d, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x56, 0x31, - 0xe2, 0x02, 0x19, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x5c, 0x56, 0x31, - 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0f, 0x46, - 0x78, 0x3a, 0x3a, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x69, 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, + 0x61, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x64, 0x65, 0x63, 0x69, 0x6d, + 0x61, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, + 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0xa7, 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, + 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x76, 0x31, 0x42, 0x12, 0x47, + 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x50, 0x01, 0x5a, 0x28, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, + 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x76, 0x31, 0xa2, 0x02, 0x03, + 0x46, 0x47, 0x58, 0xaa, 0x02, 0x0d, 0x46, 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0d, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x19, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, + 0x02, 0x0f, 0x46, 0x78, 0x3a, 0x3a, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x56, + 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -7875,30 +6509,28 @@ func file_fx_gravity_v1_gravity_legacy_proto_rawDescGZIP() []byte { return file_fx_gravity_v1_gravity_legacy_proto_rawDescData } -var file_fx_gravity_v1_gravity_legacy_proto_msgTypes = make([]protoimpl.MessageInfo, 11) +var file_fx_gravity_v1_gravity_legacy_proto_msgTypes = make([]protoimpl.MessageInfo, 9) var file_fx_gravity_v1_gravity_legacy_proto_goTypes = []interface{}{ (*MsgValsetConfirm)(nil), // 0: fx.gravity.v1.MsgValsetConfirm (*MsgSendToEth)(nil), // 1: fx.gravity.v1.MsgSendToEth - (*MsgRequestBatch)(nil), // 2: fx.gravity.v1.MsgRequestBatch - (*MsgConfirmBatch)(nil), // 3: fx.gravity.v1.MsgConfirmBatch - (*MsgDepositClaim)(nil), // 4: fx.gravity.v1.MsgDepositClaim - (*MsgWithdrawClaim)(nil), // 5: fx.gravity.v1.MsgWithdrawClaim - (*MsgCancelSendToEth)(nil), // 6: fx.gravity.v1.MsgCancelSendToEth - (*MsgValsetUpdatedClaim)(nil), // 7: fx.gravity.v1.MsgValsetUpdatedClaim - (*BridgeValidator)(nil), // 8: fx.gravity.v1.BridgeValidator - (*MsgSetOrchestratorAddress)(nil), // 9: fx.gravity.v1.MsgSetOrchestratorAddress - (*MsgFxOriginatedTokenClaim)(nil), // 10: fx.gravity.v1.MsgFxOriginatedTokenClaim - (*v1beta1.Coin)(nil), // 11: cosmos.base.v1beta1.Coin + (*MsgConfirmBatch)(nil), // 2: fx.gravity.v1.MsgConfirmBatch + (*MsgDepositClaim)(nil), // 3: fx.gravity.v1.MsgDepositClaim + (*MsgWithdrawClaim)(nil), // 4: fx.gravity.v1.MsgWithdrawClaim + (*MsgCancelSendToEth)(nil), // 5: fx.gravity.v1.MsgCancelSendToEth + (*MsgValsetUpdatedClaim)(nil), // 6: fx.gravity.v1.MsgValsetUpdatedClaim + (*BridgeValidator)(nil), // 7: fx.gravity.v1.BridgeValidator + (*MsgFxOriginatedTokenClaim)(nil), // 8: fx.gravity.v1.MsgFxOriginatedTokenClaim + (*v1beta1.Coin)(nil), // 9: cosmos.base.v1beta1.Coin } var file_fx_gravity_v1_gravity_legacy_proto_depIdxs = []int32{ - 11, // 0: fx.gravity.v1.MsgSendToEth.amount:type_name -> cosmos.base.v1beta1.Coin - 11, // 1: fx.gravity.v1.MsgSendToEth.bridge_fee:type_name -> cosmos.base.v1beta1.Coin - 8, // 2: fx.gravity.v1.MsgValsetUpdatedClaim.members:type_name -> fx.gravity.v1.BridgeValidator - 3, // [3:3] is the sub-list for method output_type - 3, // [3:3] is the sub-list for method input_type - 3, // [3:3] is the sub-list for extension type_name - 3, // [3:3] is the sub-list for extension extendee - 0, // [0:3] is the sub-list for field type_name + 9, // 0: fx.gravity.v1.MsgSendToEth.amount:type_name -> cosmos.base.v1beta1.Coin + 9, // 1: fx.gravity.v1.MsgSendToEth.bridge_fee:type_name -> cosmos.base.v1beta1.Coin + 7, // 2: fx.gravity.v1.MsgValsetUpdatedClaim.members:type_name -> fx.gravity.v1.BridgeValidator + 3, // [3:3] is the sub-list for method output_type + 3, // [3:3] is the sub-list for method input_type + 3, // [3:3] is the sub-list for extension type_name + 3, // [3:3] is the sub-list for extension extendee + 0, // [0:3] is the sub-list for field type_name } func init() { file_fx_gravity_v1_gravity_legacy_proto_init() } @@ -7932,18 +6564,6 @@ func file_fx_gravity_v1_gravity_legacy_proto_init() { } } file_fx_gravity_v1_gravity_legacy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgRequestBatch); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_v1_gravity_legacy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgConfirmBatch); i { case 0: return &v.state @@ -7955,7 +6575,7 @@ func file_fx_gravity_v1_gravity_legacy_proto_init() { return nil } } - file_fx_gravity_v1_gravity_legacy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_fx_gravity_v1_gravity_legacy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgDepositClaim); i { case 0: return &v.state @@ -7967,7 +6587,7 @@ func file_fx_gravity_v1_gravity_legacy_proto_init() { return nil } } - file_fx_gravity_v1_gravity_legacy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_fx_gravity_v1_gravity_legacy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgWithdrawClaim); i { case 0: return &v.state @@ -7979,7 +6599,7 @@ func file_fx_gravity_v1_gravity_legacy_proto_init() { return nil } } - file_fx_gravity_v1_gravity_legacy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_fx_gravity_v1_gravity_legacy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgCancelSendToEth); i { case 0: return &v.state @@ -7991,7 +6611,7 @@ func file_fx_gravity_v1_gravity_legacy_proto_init() { return nil } } - file_fx_gravity_v1_gravity_legacy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_fx_gravity_v1_gravity_legacy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgValsetUpdatedClaim); i { case 0: return &v.state @@ -8003,7 +6623,7 @@ func file_fx_gravity_v1_gravity_legacy_proto_init() { return nil } } - file_fx_gravity_v1_gravity_legacy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_fx_gravity_v1_gravity_legacy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BridgeValidator); i { case 0: return &v.state @@ -8015,19 +6635,7 @@ func file_fx_gravity_v1_gravity_legacy_proto_init() { return nil } } - file_fx_gravity_v1_gravity_legacy_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSetOrchestratorAddress); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_fx_gravity_v1_gravity_legacy_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_fx_gravity_v1_gravity_legacy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgFxOriginatedTokenClaim); i { case 0: return &v.state @@ -8046,7 +6654,7 @@ func file_fx_gravity_v1_gravity_legacy_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_fx_gravity_v1_gravity_legacy_proto_rawDesc, NumEnums: 0, - NumMessages: 11, + NumMessages: 9, NumExtensions: 0, NumServices: 0, }, diff --git a/api/fx/gravity/v1/legacy.pulsar.go b/api/fx/gravity/v1/legacy.pulsar.go new file mode 100644 index 00000000..ab537fd9 --- /dev/null +++ b/api/fx/gravity/v1/legacy.pulsar.go @@ -0,0 +1,1492 @@ +// Code generated by protoc-gen-go-pulsar. DO NOT EDIT. +package gravityv1 + +import ( + _ "cosmossdk.io/api/cosmos/base/v1beta1" + fmt "fmt" + runtime "github.com/cosmos/cosmos-proto/runtime" + _ "github.com/cosmos/gogoproto/gogoproto" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoiface "google.golang.org/protobuf/runtime/protoiface" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + io "io" + reflect "reflect" + sync "sync" +) + +var ( + md_MsgRequestBatch protoreflect.MessageDescriptor + fd_MsgRequestBatch_sender protoreflect.FieldDescriptor + fd_MsgRequestBatch_denom protoreflect.FieldDescriptor + fd_MsgRequestBatch_minimum_fee protoreflect.FieldDescriptor + fd_MsgRequestBatch_fee_receive protoreflect.FieldDescriptor + fd_MsgRequestBatch_base_fee protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_v1_legacy_proto_init() + md_MsgRequestBatch = File_fx_gravity_v1_legacy_proto.Messages().ByName("MsgRequestBatch") + fd_MsgRequestBatch_sender = md_MsgRequestBatch.Fields().ByName("sender") + fd_MsgRequestBatch_denom = md_MsgRequestBatch.Fields().ByName("denom") + fd_MsgRequestBatch_minimum_fee = md_MsgRequestBatch.Fields().ByName("minimum_fee") + fd_MsgRequestBatch_fee_receive = md_MsgRequestBatch.Fields().ByName("fee_receive") + fd_MsgRequestBatch_base_fee = md_MsgRequestBatch.Fields().ByName("base_fee") +} + +var _ protoreflect.Message = (*fastReflection_MsgRequestBatch)(nil) + +type fastReflection_MsgRequestBatch MsgRequestBatch + +func (x *MsgRequestBatch) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgRequestBatch)(x) +} + +func (x *MsgRequestBatch) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_v1_legacy_proto_msgTypes[0] + 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_MsgRequestBatch_messageType fastReflection_MsgRequestBatch_messageType +var _ protoreflect.MessageType = fastReflection_MsgRequestBatch_messageType{} + +type fastReflection_MsgRequestBatch_messageType struct{} + +func (x fastReflection_MsgRequestBatch_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgRequestBatch)(nil) +} +func (x fastReflection_MsgRequestBatch_messageType) New() protoreflect.Message { + return new(fastReflection_MsgRequestBatch) +} +func (x fastReflection_MsgRequestBatch_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgRequestBatch +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgRequestBatch) Descriptor() protoreflect.MessageDescriptor { + return md_MsgRequestBatch +} + +// 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_MsgRequestBatch) Type() protoreflect.MessageType { + return _fastReflection_MsgRequestBatch_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgRequestBatch) New() protoreflect.Message { + return new(fastReflection_MsgRequestBatch) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgRequestBatch) Interface() protoreflect.ProtoMessage { + return (*MsgRequestBatch)(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_MsgRequestBatch) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Sender != "" { + value := protoreflect.ValueOfString(x.Sender) + if !f(fd_MsgRequestBatch_sender, value) { + return + } + } + if x.Denom != "" { + value := protoreflect.ValueOfString(x.Denom) + if !f(fd_MsgRequestBatch_denom, value) { + return + } + } + if x.MinimumFee != "" { + value := protoreflect.ValueOfString(x.MinimumFee) + if !f(fd_MsgRequestBatch_minimum_fee, value) { + return + } + } + if x.FeeReceive != "" { + value := protoreflect.ValueOfString(x.FeeReceive) + if !f(fd_MsgRequestBatch_fee_receive, value) { + return + } + } + if x.BaseFee != "" { + value := protoreflect.ValueOfString(x.BaseFee) + if !f(fd_MsgRequestBatch_base_fee, 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_MsgRequestBatch) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.v1.MsgRequestBatch.sender": + return x.Sender != "" + case "fx.gravity.v1.MsgRequestBatch.denom": + return x.Denom != "" + case "fx.gravity.v1.MsgRequestBatch.minimum_fee": + return x.MinimumFee != "" + case "fx.gravity.v1.MsgRequestBatch.fee_receive": + return x.FeeReceive != "" + case "fx.gravity.v1.MsgRequestBatch.base_fee": + return x.BaseFee != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch 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_MsgRequestBatch) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.v1.MsgRequestBatch.sender": + x.Sender = "" + case "fx.gravity.v1.MsgRequestBatch.denom": + x.Denom = "" + case "fx.gravity.v1.MsgRequestBatch.minimum_fee": + x.MinimumFee = "" + case "fx.gravity.v1.MsgRequestBatch.fee_receive": + x.FeeReceive = "" + case "fx.gravity.v1.MsgRequestBatch.base_fee": + x.BaseFee = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch 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_MsgRequestBatch) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.v1.MsgRequestBatch.sender": + value := x.Sender + return protoreflect.ValueOfString(value) + case "fx.gravity.v1.MsgRequestBatch.denom": + value := x.Denom + return protoreflect.ValueOfString(value) + case "fx.gravity.v1.MsgRequestBatch.minimum_fee": + value := x.MinimumFee + return protoreflect.ValueOfString(value) + case "fx.gravity.v1.MsgRequestBatch.fee_receive": + value := x.FeeReceive + return protoreflect.ValueOfString(value) + case "fx.gravity.v1.MsgRequestBatch.base_fee": + value := x.BaseFee + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch 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_MsgRequestBatch) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.v1.MsgRequestBatch.sender": + x.Sender = value.Interface().(string) + case "fx.gravity.v1.MsgRequestBatch.denom": + x.Denom = value.Interface().(string) + case "fx.gravity.v1.MsgRequestBatch.minimum_fee": + x.MinimumFee = value.Interface().(string) + case "fx.gravity.v1.MsgRequestBatch.fee_receive": + x.FeeReceive = value.Interface().(string) + case "fx.gravity.v1.MsgRequestBatch.base_fee": + x.BaseFee = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch 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_MsgRequestBatch) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.v1.MsgRequestBatch.sender": + panic(fmt.Errorf("field sender of message fx.gravity.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.v1.MsgRequestBatch.denom": + panic(fmt.Errorf("field denom of message fx.gravity.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.v1.MsgRequestBatch.minimum_fee": + panic(fmt.Errorf("field minimum_fee of message fx.gravity.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.v1.MsgRequestBatch.fee_receive": + panic(fmt.Errorf("field fee_receive of message fx.gravity.v1.MsgRequestBatch is not mutable")) + case "fx.gravity.v1.MsgRequestBatch.base_fee": + panic(fmt.Errorf("field base_fee of message fx.gravity.v1.MsgRequestBatch is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch 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_MsgRequestBatch) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.v1.MsgRequestBatch.sender": + return protoreflect.ValueOfString("") + case "fx.gravity.v1.MsgRequestBatch.denom": + return protoreflect.ValueOfString("") + case "fx.gravity.v1.MsgRequestBatch.minimum_fee": + return protoreflect.ValueOfString("") + case "fx.gravity.v1.MsgRequestBatch.fee_receive": + return protoreflect.ValueOfString("") + case "fx.gravity.v1.MsgRequestBatch.base_fee": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgRequestBatch")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgRequestBatch 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_MsgRequestBatch) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgRequestBatch", 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_MsgRequestBatch) 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_MsgRequestBatch) 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_MsgRequestBatch) 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_MsgRequestBatch) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgRequestBatch) + 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.Sender) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Denom) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.MinimumFee) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.FeeReceive) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.BaseFee) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgRequestBatch) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.BaseFee) > 0 { + i -= len(x.BaseFee) + copy(dAtA[i:], x.BaseFee) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.BaseFee))) + i-- + dAtA[i] = 0x2a + } + if len(x.FeeReceive) > 0 { + i -= len(x.FeeReceive) + copy(dAtA[i:], x.FeeReceive) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.FeeReceive))) + i-- + dAtA[i] = 0x22 + } + if len(x.MinimumFee) > 0 { + i -= len(x.MinimumFee) + copy(dAtA[i:], x.MinimumFee) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.MinimumFee))) + i-- + dAtA[i] = 0x1a + } + if len(x.Denom) > 0 { + i -= len(x.Denom) + copy(dAtA[i:], x.Denom) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Denom))) + i-- + dAtA[i] = 0x12 + } + if len(x.Sender) > 0 { + i -= len(x.Sender) + copy(dAtA[i:], x.Sender) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Sender))) + 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().(*MsgRequestBatch) + 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: MsgRequestBatch: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgRequestBatch: 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 Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Denom", 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.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field MinimumFee", 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.MinimumFee = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field FeeReceive", 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.FeeReceive = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BaseFee", 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.BaseFee = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgSetOrchestratorAddress protoreflect.MessageDescriptor + fd_MsgSetOrchestratorAddress_validator protoreflect.FieldDescriptor + fd_MsgSetOrchestratorAddress_orchestrator protoreflect.FieldDescriptor + fd_MsgSetOrchestratorAddress_eth_address protoreflect.FieldDescriptor +) + +func init() { + file_fx_gravity_v1_legacy_proto_init() + md_MsgSetOrchestratorAddress = File_fx_gravity_v1_legacy_proto.Messages().ByName("MsgSetOrchestratorAddress") + fd_MsgSetOrchestratorAddress_validator = md_MsgSetOrchestratorAddress.Fields().ByName("validator") + fd_MsgSetOrchestratorAddress_orchestrator = md_MsgSetOrchestratorAddress.Fields().ByName("orchestrator") + fd_MsgSetOrchestratorAddress_eth_address = md_MsgSetOrchestratorAddress.Fields().ByName("eth_address") +} + +var _ protoreflect.Message = (*fastReflection_MsgSetOrchestratorAddress)(nil) + +type fastReflection_MsgSetOrchestratorAddress MsgSetOrchestratorAddress + +func (x *MsgSetOrchestratorAddress) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgSetOrchestratorAddress)(x) +} + +func (x *MsgSetOrchestratorAddress) slowProtoReflect() protoreflect.Message { + mi := &file_fx_gravity_v1_legacy_proto_msgTypes[1] + 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_MsgSetOrchestratorAddress_messageType fastReflection_MsgSetOrchestratorAddress_messageType +var _ protoreflect.MessageType = fastReflection_MsgSetOrchestratorAddress_messageType{} + +type fastReflection_MsgSetOrchestratorAddress_messageType struct{} + +func (x fastReflection_MsgSetOrchestratorAddress_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgSetOrchestratorAddress)(nil) +} +func (x fastReflection_MsgSetOrchestratorAddress_messageType) New() protoreflect.Message { + return new(fastReflection_MsgSetOrchestratorAddress) +} +func (x fastReflection_MsgSetOrchestratorAddress_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgSetOrchestratorAddress +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgSetOrchestratorAddress) Descriptor() protoreflect.MessageDescriptor { + return md_MsgSetOrchestratorAddress +} + +// 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_MsgSetOrchestratorAddress) Type() protoreflect.MessageType { + return _fastReflection_MsgSetOrchestratorAddress_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgSetOrchestratorAddress) New() protoreflect.Message { + return new(fastReflection_MsgSetOrchestratorAddress) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgSetOrchestratorAddress) Interface() protoreflect.ProtoMessage { + return (*MsgSetOrchestratorAddress)(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_MsgSetOrchestratorAddress) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Validator != "" { + value := protoreflect.ValueOfString(x.Validator) + if !f(fd_MsgSetOrchestratorAddress_validator, value) { + return + } + } + if x.Orchestrator != "" { + value := protoreflect.ValueOfString(x.Orchestrator) + if !f(fd_MsgSetOrchestratorAddress_orchestrator, value) { + return + } + } + if x.EthAddress != "" { + value := protoreflect.ValueOfString(x.EthAddress) + if !f(fd_MsgSetOrchestratorAddress_eth_address, 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_MsgSetOrchestratorAddress) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": + return x.Validator != "" + case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": + return x.Orchestrator != "" + case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + return x.EthAddress != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": + x.Validator = "" + case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": + x.Orchestrator = "" + case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + x.EthAddress = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": + value := x.Validator + return protoreflect.ValueOfString(value) + case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": + value := x.Orchestrator + return protoreflect.ValueOfString(value) + case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + value := x.EthAddress + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": + x.Validator = value.Interface().(string) + case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": + x.Orchestrator = value.Interface().(string) + case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + x.EthAddress = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": + panic(fmt.Errorf("field validator of message fx.gravity.v1.MsgSetOrchestratorAddress is not mutable")) + case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": + panic(fmt.Errorf("field orchestrator of message fx.gravity.v1.MsgSetOrchestratorAddress is not mutable")) + case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + panic(fmt.Errorf("field eth_address of message fx.gravity.v1.MsgSetOrchestratorAddress is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "fx.gravity.v1.MsgSetOrchestratorAddress.validator": + return protoreflect.ValueOfString("") + case "fx.gravity.v1.MsgSetOrchestratorAddress.orchestrator": + return protoreflect.ValueOfString("") + case "fx.gravity.v1.MsgSetOrchestratorAddress.eth_address": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: fx.gravity.v1.MsgSetOrchestratorAddress")) + } + panic(fmt.Errorf("message fx.gravity.v1.MsgSetOrchestratorAddress 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_MsgSetOrchestratorAddress) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in fx.gravity.v1.MsgSetOrchestratorAddress", 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) 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_MsgSetOrchestratorAddress) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgSetOrchestratorAddress) + 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.Validator) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Orchestrator) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.EthAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgSetOrchestratorAddress) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.EthAddress) > 0 { + i -= len(x.EthAddress) + copy(dAtA[i:], x.EthAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.EthAddress))) + i-- + dAtA[i] = 0x1a + } + if len(x.Orchestrator) > 0 { + i -= len(x.Orchestrator) + copy(dAtA[i:], x.Orchestrator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Orchestrator))) + i-- + dAtA[i] = 0x12 + } + if len(x.Validator) > 0 { + i -= len(x.Validator) + copy(dAtA[i:], x.Validator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Validator))) + 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().(*MsgSetOrchestratorAddress) + 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: MsgSetOrchestratorAddress: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgSetOrchestratorAddress: 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 Validator", 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.Validator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", 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.Orchestrator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field EthAddress", 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.EthAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.27.0 +// protoc (unknown) +// source: fx/gravity/v1/legacy.proto + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// Deprecated: after upgrade v3 +type MsgRequestBatch struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` + MinimumFee string `protobuf:"bytes,3,opt,name=minimum_fee,json=minimumFee,proto3" json:"minimum_fee,omitempty"` + FeeReceive string `protobuf:"bytes,4,opt,name=fee_receive,json=feeReceive,proto3" json:"fee_receive,omitempty"` + BaseFee string `protobuf:"bytes,5,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"` +} + +func (x *MsgRequestBatch) Reset() { + *x = MsgRequestBatch{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_v1_legacy_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgRequestBatch) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgRequestBatch) ProtoMessage() {} + +// Deprecated: Use MsgRequestBatch.ProtoReflect.Descriptor instead. +func (*MsgRequestBatch) Descriptor() ([]byte, []int) { + return file_fx_gravity_v1_legacy_proto_rawDescGZIP(), []int{0} +} + +func (x *MsgRequestBatch) GetSender() string { + if x != nil { + return x.Sender + } + return "" +} + +func (x *MsgRequestBatch) GetDenom() string { + if x != nil { + return x.Denom + } + return "" +} + +func (x *MsgRequestBatch) GetMinimumFee() string { + if x != nil { + return x.MinimumFee + } + return "" +} + +func (x *MsgRequestBatch) GetFeeReceive() string { + if x != nil { + return x.FeeReceive + } + return "" +} + +func (x *MsgRequestBatch) GetBaseFee() string { + if x != nil { + return x.BaseFee + } + return "" +} + +// Deprecated: after upgrade v3 +type MsgSetOrchestratorAddress struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Validator string `protobuf:"bytes,1,opt,name=validator,proto3" json:"validator,omitempty"` + Orchestrator string `protobuf:"bytes,2,opt,name=orchestrator,proto3" json:"orchestrator,omitempty"` + EthAddress string `protobuf:"bytes,3,opt,name=eth_address,json=ethAddress,proto3" json:"eth_address,omitempty"` +} + +func (x *MsgSetOrchestratorAddress) Reset() { + *x = MsgSetOrchestratorAddress{} + if protoimpl.UnsafeEnabled { + mi := &file_fx_gravity_v1_legacy_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgSetOrchestratorAddress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgSetOrchestratorAddress) ProtoMessage() {} + +// Deprecated: Use MsgSetOrchestratorAddress.ProtoReflect.Descriptor instead. +func (*MsgSetOrchestratorAddress) Descriptor() ([]byte, []int) { + return file_fx_gravity_v1_legacy_proto_rawDescGZIP(), []int{1} +} + +func (x *MsgSetOrchestratorAddress) GetValidator() string { + if x != nil { + return x.Validator + } + return "" +} + +func (x *MsgSetOrchestratorAddress) GetOrchestrator() string { + if x != nil { + return x.Orchestrator + } + return "" +} + +func (x *MsgSetOrchestratorAddress) GetEthAddress() string { + if x != nil { + return x.EthAddress + } + return "" +} + +var File_fx_gravity_v1_legacy_proto protoreflect.FileDescriptor + +var file_fx_gravity_v1_legacy_proto_rawDesc = []byte{ + 0x0a, 0x1a, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, 0x2f, + 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0d, 0x66, 0x78, + 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x2e, 0x76, 0x31, 0x1a, 0x1e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2f, 0x63, 0x6f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, + 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x22, 0xda, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x14, 0x0a, + 0x05, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, + 0x6e, 0x6f, 0x6d, 0x12, 0x3e, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x66, + 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, + 0x1f, 0x15, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, + 0x61, 0x74, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x0a, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, + 0x46, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, + 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x65, 0x65, 0x52, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x15, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, + 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x22, 0x7e, + 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x74, 0x4f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x63, + 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1f, 0x0a, + 0x0b, 0x65, 0x74, 0x68, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x65, 0x74, 0x68, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0xa0, + 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, + 0x79, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x50, 0x01, 0x5a, 0x28, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, + 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x76, 0x31, 0xa2, 0x02, 0x03, + 0x46, 0x47, 0x58, 0xaa, 0x02, 0x0d, 0x46, 0x78, 0x2e, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0d, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x19, 0x46, 0x78, 0x5c, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, + 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, + 0x02, 0x0f, 0x46, 0x78, 0x3a, 0x3a, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x56, + 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_fx_gravity_v1_legacy_proto_rawDescOnce sync.Once + file_fx_gravity_v1_legacy_proto_rawDescData = file_fx_gravity_v1_legacy_proto_rawDesc +) + +func file_fx_gravity_v1_legacy_proto_rawDescGZIP() []byte { + file_fx_gravity_v1_legacy_proto_rawDescOnce.Do(func() { + file_fx_gravity_v1_legacy_proto_rawDescData = protoimpl.X.CompressGZIP(file_fx_gravity_v1_legacy_proto_rawDescData) + }) + return file_fx_gravity_v1_legacy_proto_rawDescData +} + +var file_fx_gravity_v1_legacy_proto_msgTypes = make([]protoimpl.MessageInfo, 2) +var file_fx_gravity_v1_legacy_proto_goTypes = []interface{}{ + (*MsgRequestBatch)(nil), // 0: fx.gravity.v1.MsgRequestBatch + (*MsgSetOrchestratorAddress)(nil), // 1: fx.gravity.v1.MsgSetOrchestratorAddress +} +var file_fx_gravity_v1_legacy_proto_depIdxs = []int32{ + 0, // [0:0] is the sub-list for method output_type + 0, // [0:0] is the sub-list for method input_type + 0, // [0:0] is the sub-list for extension type_name + 0, // [0:0] is the sub-list for extension extendee + 0, // [0:0] is the sub-list for field type_name +} + +func init() { file_fx_gravity_v1_legacy_proto_init() } +func file_fx_gravity_v1_legacy_proto_init() { + if File_fx_gravity_v1_legacy_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_fx_gravity_v1_legacy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgRequestBatch); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_fx_gravity_v1_legacy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgSetOrchestratorAddress); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_fx_gravity_v1_legacy_proto_rawDesc, + NumEnums: 0, + NumMessages: 2, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_fx_gravity_v1_legacy_proto_goTypes, + DependencyIndexes: file_fx_gravity_v1_legacy_proto_depIdxs, + MessageInfos: file_fx_gravity_v1_legacy_proto_msgTypes, + }.Build() + File_fx_gravity_v1_legacy_proto = out.File + file_fx_gravity_v1_legacy_proto_rawDesc = nil + file_fx_gravity_v1_legacy_proto_goTypes = nil + file_fx_gravity_v1_legacy_proto_depIdxs = nil +} diff --git a/api/fx/ibc/applications/transfer/v1/ibc_legacy.pulsar.go b/api/fx/ibc/applications/transfer/v1/ibc_legacy.pulsar.go index 1574f066..4ad01508 100644 --- a/api/fx/ibc/applications/transfer/v1/ibc_legacy.pulsar.go +++ b/api/fx/ibc/applications/transfer/v1/ibc_legacy.pulsar.go @@ -1507,6 +1507,8 @@ const ( // MsgTransfer defines a msg to transfer fungible tokens (i.e Coins) between // ICS20 enabled chains. See ICS Spec here: // https://github.com/cosmos/ics/tree/master/spec/ics-020-fungible-token-transfer#data-structures +// +// Deprecated: Do not use. type MsgTransfer struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1636,6 +1638,8 @@ func (x *MsgTransfer) GetMemo() string { // breaking changes In these cases, the RevisionNumber is incremented so that // height continues to be monitonically increasing even as the RevisionHeight // gets reset +// +// Deprecated: Do not use. type Height struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1692,7 +1696,7 @@ var file_fx_ibc_applications_transfer_v1_ibc_legacy_proto_rawDesc = []byte{ 0x2e, 0x76, 0x31, 0x1a, 0x1e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x6f, 0x67, 0x6f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, - 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x96, 0x04, 0x0a, 0x0b, 0x4d, 0x73, + 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x98, 0x04, 0x0a, 0x0b, 0x4d, 0x73, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xf2, 0xde, 0x1f, 0x12, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, @@ -1725,32 +1729,32 @@ var file_fx_ibc_applications_transfer_v1_ibc_legacy_proto_rawDesc = []byte{ 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x3a, 0x08, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, - 0x1f, 0x00, 0x22, 0x64, 0x0a, 0x06, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x27, 0x0a, 0x0f, - 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, - 0x6e, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, - 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x08, - 0x88, 0xa0, 0x1f, 0x01, 0x98, 0xa0, 0x1f, 0x01, 0x42, 0x93, 0x02, 0x0a, 0x23, 0x63, 0x6f, 0x6d, - 0x2e, 0x66, 0x78, 0x2e, 0x69, 0x62, 0x63, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x2e, 0x76, 0x31, - 0x42, 0x0e, 0x49, 0x62, 0x63, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, - 0x50, 0x01, 0x5a, 0x3b, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, - 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x69, 0x62, 0x63, 0x2f, 0x61, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, - 0x72, 0x2f, 0x76, 0x31, 0x3b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x76, 0x31, 0xa2, - 0x02, 0x04, 0x46, 0x49, 0x41, 0x54, 0xaa, 0x02, 0x1f, 0x46, 0x78, 0x2e, 0x49, 0x62, 0x63, 0x2e, - 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x66, 0x65, 0x72, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1f, 0x46, 0x78, 0x5c, 0x49, 0x62, - 0x63, 0x5c, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5c, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x2b, 0x46, 0x78, 0x5c, - 0x49, 0x62, 0x63, 0x5c, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x5c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x23, 0x46, 0x78, 0x3a, 0x3a, 0x49, - 0x62, 0x63, 0x3a, 0x3a, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x3a, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x3a, 0x0a, 0x18, 0x01, 0x88, 0xa0, 0x1f, 0x00, + 0xe8, 0xa0, 0x1f, 0x00, 0x22, 0x66, 0x0a, 0x06, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x27, + 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, + 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x69, 0x73, + 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x3a, 0x0a, 0x18, 0x01, 0x88, 0xa0, 0x1f, 0x01, 0x98, 0xa0, 0x1f, 0x01, 0x42, 0x93, 0x02, 0x0a, + 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x69, 0x62, 0x63, 0x2e, 0x61, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, + 0x72, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x49, 0x62, 0x63, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, + 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x69, 0x62, 0x63, 0x2f, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x74, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x65, 0x72, 0x2f, 0x76, 0x31, 0x3b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, + 0x72, 0x76, 0x31, 0xa2, 0x02, 0x04, 0x46, 0x49, 0x41, 0x54, 0xaa, 0x02, 0x1f, 0x46, 0x78, 0x2e, + 0x49, 0x62, 0x63, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1f, 0x46, + 0x78, 0x5c, 0x49, 0x62, 0x63, 0x5c, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x5c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5c, 0x56, 0x31, 0xe2, 0x02, + 0x2b, 0x46, 0x78, 0x5c, 0x49, 0x62, 0x63, 0x5c, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x5c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5c, 0x56, 0x31, + 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x23, 0x46, + 0x78, 0x3a, 0x3a, 0x49, 0x62, 0x63, 0x3a, 0x3a, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x3a, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x3a, 0x3a, + 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/api/fx/staking/v1/staking_legacy.pulsar.go b/api/fx/staking/v1/staking_legacy.pulsar.go index 35b22306..e426daaf 100644 --- a/api/fx/staking/v1/staking_legacy.pulsar.go +++ b/api/fx/staking/v1/staking_legacy.pulsar.go @@ -1217,6 +1217,7 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) +// Deprecated: Do not use. type MsgGrantPrivilege struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1276,6 +1277,7 @@ func (x *MsgGrantPrivilege) GetSignature() string { return "" } +// Deprecated: Do not use. type MsgEditConsensusPubKey struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1336,7 +1338,7 @@ var file_fx_staking_v1_staking_legacy_proto_rawDesc = []byte{ 0x2e, 0x76, 0x31, 0x1a, 0x19, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, - 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xce, 0x01, 0x0a, 0x11, 0x4d, 0x73, + 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd2, 0x01, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, @@ -1349,28 +1351,29 @@ var file_fx_staking_v1_staking_legacy_proto_rawDesc = []byte{ 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x08, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xa1, 0x01, 0x0a, 0x16, 0x4d, - 0x73, 0x67, 0x45, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x50, - 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x42, 0x18, 0xca, 0xb4, - 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, - 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x42, 0xa7, - 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x78, 0x2e, 0x73, 0x74, 0x61, 0x6b, 0x69, 0x6e, - 0x67, 0x2e, 0x76, 0x31, 0x42, 0x12, 0x53, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x4c, 0x65, 0x67, - 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x28, 0x63, 0x6f, 0x73, 0x6d, - 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, - 0x73, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x74, 0x61, 0x6b, 0x69, - 0x6e, 0x67, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, 0x53, 0x58, 0xaa, 0x02, 0x0d, 0x46, 0x78, 0x2e, - 0x53, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0d, 0x46, 0x78, 0x5c, - 0x53, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x19, 0x46, 0x78, 0x5c, - 0x53, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0f, 0x46, 0x78, 0x3a, 0x3a, 0x53, 0x74, 0x61, - 0x6b, 0x69, 0x6e, 0x67, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xa5, + 0x01, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x45, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, + 0x73, 0x75, 0x73, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x75, + 0x62, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, + 0x42, 0x18, 0xca, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x72, 0x79, + 0x70, 0x74, 0x6f, 0x2e, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, + 0x65, 0x79, 0x3a, 0x02, 0x18, 0x01, 0x42, 0xa7, 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x66, + 0x78, 0x2e, 0x73, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x31, 0x42, 0x12, 0x53, 0x74, + 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x50, 0x01, 0x5a, 0x28, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, + 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x78, 0x2f, 0x73, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x2f, + 0x76, 0x31, 0x3b, 0x73, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x46, + 0x53, 0x58, 0xaa, 0x02, 0x0d, 0x46, 0x78, 0x2e, 0x53, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x2e, + 0x56, 0x31, 0xca, 0x02, 0x0d, 0x46, 0x78, 0x5c, 0x53, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5c, + 0x56, 0x31, 0xe2, 0x02, 0x19, 0x46, 0x78, 0x5c, 0x53, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5c, + 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, + 0x0f, 0x46, 0x78, 0x3a, 0x3a, 0x53, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x3a, 0x3a, 0x56, 0x31, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/app/app.go b/app/app.go index 3b3fb5fb..4f1e4097 100644 --- a/app/app.go +++ b/app/app.go @@ -61,6 +61,7 @@ import ( gaspricev1 "github.com/pundiai/fx-core/v8/server/grpc/gasprice/v1" gaspricev2 "github.com/pundiai/fx-core/v8/server/grpc/gasprice/v2" fxtypes "github.com/pundiai/fx-core/v8/types" + legacytypes "github.com/pundiai/fx-core/v8/types/legacy" "github.com/pundiai/fx-core/v8/x/crosschain" "github.com/pundiai/fx-core/v8/x/crosschain/keeper" crosschaintypes "github.com/pundiai/fx-core/v8/x/crosschain/types" @@ -118,6 +119,9 @@ func New( ibcmiddlewaretypes.RegisterLegacyAminoCodec(legacyAmino) ibcmiddlewaretypes.RegisterInterfaces(interfaceRegistry) + legacytypes.RegisterInterfaces(interfaceRegistry) + legacytypes.RegisterLegacyAminoCodec(legacyAmino) + legacy.Cdc = legacyAmino // App Opts diff --git a/app/app_test.go b/app/app_test.go index 87059d45..1ecf4e9f 100644 --- a/app/app_test.go +++ b/app/app_test.go @@ -8,8 +8,8 @@ import ( "github.com/pundiai/fx-core/v8/testutil/helpers" "github.com/pundiai/fx-core/v8/types/legacy" + "github.com/pundiai/fx-core/v8/types/legacy/gravity" crosschaintypes "github.com/pundiai/fx-core/v8/x/crosschain/types" - erc20types "github.com/pundiai/fx-core/v8/x/erc20/types" ) func Test_MsgServiceRouter(t *testing.T) { @@ -17,19 +17,37 @@ func Test_MsgServiceRouter(t *testing.T) { msgServiceRouter := myApp.MsgServiceRouter() deprecated := map[string]struct{}{ - sdk.MsgTypeURL(&crosschaintypes.MsgSetOrchestratorAddress{}): {}, - sdk.MsgTypeURL(&crosschaintypes.MsgAddOracleDeposit{}): {}, - sdk.MsgTypeURL(&legacy.MsgUpdateParams{}): {}, - sdk.MsgTypeURL(&legacy.MsgUpdateFXParams{}): {}, - sdk.MsgTypeURL(&legacy.MsgUpdateEGFParams{}): {}, - sdk.MsgTypeURL(&crosschaintypes.MsgCancelSendToExternal{}): {}, - sdk.MsgTypeURL(&crosschaintypes.MsgIncreaseBridgeFee{}): {}, - sdk.MsgTypeURL(&crosschaintypes.MsgRequestBatch{}): {}, - sdk.MsgTypeURL(&erc20types.MsgConvertDenom{}): {}, - sdk.MsgTypeURL(&erc20types.MsgConvertERC20{}): {}, - sdk.MsgTypeURL(&erc20types.MsgUpdateDenomAlias{}): {}, - sdk.MsgTypeURL(&erc20types.MsgRegisterERC20{}): {}, - sdk.MsgTypeURL(&erc20types.MsgRegisterCoin{}): {}, + sdk.MsgTypeURL(&legacy.MsgUpdateParams{}): {}, + sdk.MsgTypeURL(&legacy.MsgUpdateFXParams{}): {}, + sdk.MsgTypeURL(&legacy.MsgUpdateEGFParams{}): {}, + + sdk.MsgTypeURL(&legacy.MsgConvertDenom{}): {}, + sdk.MsgTypeURL(&legacy.MsgConvertERC20{}): {}, + sdk.MsgTypeURL(&legacy.MsgUpdateDenomAlias{}): {}, + sdk.MsgTypeURL(&legacy.MsgRegisterERC20{}): {}, + sdk.MsgTypeURL(&legacy.MsgRegisterCoin{}): {}, + + sdk.MsgTypeURL(&legacy.MsgValsetConfirm{}): {}, + sdk.MsgTypeURL(&legacy.MsgConfirmBatch{}): {}, + sdk.MsgTypeURL(&gravity.MsgSetOrchestratorAddress{}): {}, + sdk.MsgTypeURL(&legacy.MsgFxOriginatedTokenClaim{}): {}, + sdk.MsgTypeURL(&gravity.MsgRequestBatch{}): {}, + sdk.MsgTypeURL(&legacy.MsgWithdrawClaim{}): {}, + sdk.MsgTypeURL(&legacy.MsgSendToEth{}): {}, + sdk.MsgTypeURL(&legacy.MsgCancelSendToEth{}): {}, + sdk.MsgTypeURL(&legacy.MsgValsetUpdatedClaim{}): {}, + sdk.MsgTypeURL(&legacy.MsgDepositClaim{}): {}, + + sdk.MsgTypeURL(&legacy.MsgGrantPrivilege{}): {}, + sdk.MsgTypeURL(&legacy.MsgEditConsensusPubKey{}): {}, + + sdk.MsgTypeURL(&legacy.MsgSetOrchestratorAddress{}): {}, + sdk.MsgTypeURL(&legacy.MsgAddOracleDeposit{}): {}, + sdk.MsgTypeURL(&legacy.MsgCancelSendToExternal{}): {}, + sdk.MsgTypeURL(&legacy.MsgIncreaseBridgeFee{}): {}, + sdk.MsgTypeURL(&legacy.MsgRequestBatch{}): {}, + + sdk.MsgTypeURL(&legacy.MsgTransfer{}): {}, // MsgClaim sdk.MsgTypeURL(&crosschaintypes.MsgSendToExternalClaim{}): {}, diff --git a/app/encoding_test.go b/app/encoding_test.go index 0779d170..b942cbf3 100644 --- a/app/encoding_test.go +++ b/app/encoding_test.go @@ -44,7 +44,7 @@ func TestRegisterInterfaces(t *testing.T) { for implInterfaces.Next() { count2++ } - assert.Equal(t, 299, count2) + assert.Equal(t, 312, count2) // This number can only increase, not decrease. typeURLMap := interfaceRegistry.FieldByName("typeURLMap").MapRange() for typeURLMap.Next() { diff --git a/app/interface_registry.json b/app/interface_registry.json index 260fab1f..5261cabd 100644 --- a/app/interface_registry.json +++ b/app/interface_registry.json @@ -247,9 +247,22 @@ "/fx.gravity.crosschain.v1.MsgWithdrawReward", "/fx.gravity.crosschain.v1.MsgWithdrawRewardResponse", "/fx.gravity.crosschain.v1.UpdateChainOraclesProposal", + "/fx.gravity.v1.MsgCancelSendToEth", + "/fx.gravity.v1.MsgConfirmBatch", + "/fx.gravity.v1.MsgDepositClaim", + "/fx.gravity.v1.MsgFxOriginatedTokenClaim", + "/fx.gravity.v1.MsgRequestBatch", + "/fx.gravity.v1.MsgSendToEth", + "/fx.gravity.v1.MsgSetOrchestratorAddress", + "/fx.gravity.v1.MsgValsetConfirm", + "/fx.gravity.v1.MsgValsetUpdatedClaim", + "/fx.gravity.v1.MsgWithdrawClaim", "/fx.ibc.applications.transfer.v1.IbcCallEvmPacket", + "/fx.ibc.applications.transfer.v1.MsgTransfer", "/fx.migrate.v1.MsgMigrateAccount", "/fx.migrate.v1.MsgMigrateAccountResponse", + "/fx.staking.v1.MsgEditConsensusPubKey", + "/fx.staking.v1.MsgGrantPrivilege", "/ibc.applications.transfer.v1.MsgTransfer", "/ibc.applications.transfer.v1.MsgTransferResponse", "/ibc.applications.transfer.v1.MsgUpdateParams", @@ -440,7 +453,20 @@ "/fx.gravity.crosschain.v1.MsgUpdateChainOracles", "/fx.gravity.crosschain.v1.MsgUpdateParams", "/fx.gravity.crosschain.v1.MsgWithdrawReward", + "/fx.gravity.v1.MsgCancelSendToEth", + "/fx.gravity.v1.MsgConfirmBatch", + "/fx.gravity.v1.MsgDepositClaim", + "/fx.gravity.v1.MsgFxOriginatedTokenClaim", + "/fx.gravity.v1.MsgRequestBatch", + "/fx.gravity.v1.MsgSendToEth", + "/fx.gravity.v1.MsgSetOrchestratorAddress", + "/fx.gravity.v1.MsgValsetConfirm", + "/fx.gravity.v1.MsgValsetUpdatedClaim", + "/fx.gravity.v1.MsgWithdrawClaim", + "/fx.ibc.applications.transfer.v1.MsgTransfer", "/fx.migrate.v1.MsgMigrateAccount", + "/fx.staking.v1.MsgEditConsensusPubKey", + "/fx.staking.v1.MsgGrantPrivilege", "/ibc.applications.transfer.v1.MsgTransfer", "/ibc.applications.transfer.v1.MsgUpdateParams", "/ibc.core.channel.v1.MsgAcknowledgement", diff --git a/docs/statik/statik.go b/docs/statik/statik.go index 3b4945ac..eff0c448 100644 --- a/docs/statik/statik.go +++ b/docs/statik/statik.go @@ -8,7 +8,7 @@ import ( func init() { - data := "PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00 \x00favicon-16x16.pngUT\x05\x00\x01\x80Cm8\x00\xbd\x01B\xfe\x89PNG\x0d\n\x1a\n\x00\x00\x00\x0dIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xffa\x00\x00\x01\x84IDATx\x01\x95S\x03Luq\x1c\xfd\x8c\xf1\xc3\xec0\xa7)\xcda\xb6k6\xb2\x9b\xf9\xb2k\xc85/\xdb\x8dqx\xc6\x94m\xcc{\xef\x7fO\xff\xf3l\xdc\xed\xf2\xe0\xfe\xf8\xc9\xffP\x14\x11/\x14[\xa3P\xc4\xa1\xbc?\xf1t>7\x12s\x13\x03\x85\xca7IR a\xb5j\x8f\xa71\xbe]\x88\xf6\xb9L\xf0\x1c\x93\xcf\xda\xe3)\x10\x93f\x8d\xe4\x06\x13\xcf\xde<\x9b\xd14\x95\x8a\x92\x81OA\xcfF\x89\xdd<\x9b M\xe6}L\xe4\x07\x15\xc5\xf5\xe3\xffI\x0c{\xd6\x8d\xffs\x994\xbasfh\xae?\xafk\x1aprw\x10 <\xb9\xdb\xc7\x86\xa6\xd1\x19I\n\xa8\xb1\xd7\x84y3g\x171T$\xb5c\x7fq\xfbbq\xbfk\x8e'\x1dQ\xb0\xc2,\x92\x0bx|;F\xe5\xf0\xef\x00\x83\xf2\xa1\x1fx|?q\xbd\xcb\xc2\x16\x80ZF\xf0\xc4J\xf3\xe3\xe4n1\xcc\x17k`:}\xcby\xe8\x98\xcbB\xc7|6z\x97r\xd14\x9d\x06\xd3\xf9\x8a\xe4\x94\x90\x8b\xb6\xd9\x0cP\xebc@\xd0|\xbe*\xc94\xc8\xa7\x98'\xcdh\x00\xe3\xd92\xa6vK}\x0cB\xa4\xf0+D\n\xc7\x81)\xb0\x10\x9a\xe3\xa9\xd8\x8bx\xe4(\xa2\xbb\x8dl\x0d\x01\xb6\x8a-\xf378\xbe\xdd\xc7\xa6\xb6\xc9\xd9\xc6d\xd8\\m\xf4\x0c\x92 uQ\x0e\xd2\xf5\xb3\xd1\xf1w\xdfQ\x16\xb34a$\xa1\xc4\xc4(V\xbcF\xd9\xdf\xa4\x91\xe9\xb0&,\x12+\xcd\x93\xcf\x1c\x1cb\xdc\xca\x00qt\xeb\xcc-\x14\x89\xfe\xfc\x0fm2j\x88\xec\xccs\x18\x00\x00\x00\x00IEND\xaeB`\x82\x01\x00\x00\xff\xffPK\x07\x08\xd4`4t\xc7\x01\x00\x00\xbd\x01\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00 \x00favicon-32x32.pngUT\x05\x00\x01\x80Cm8\x00u\x04\x8a\xfb\x89PNG\x0d\n\x1a\n\x00\x00\x00\x0dIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\x00\x00szz\xf4\x00\x00\x04|ID\xc4\xcf\xd0@\x04&%\xad\x1e\x16\x0f\xf7\x8d\x97AR\xfa\xca\xe7l\x87\x05\xf8\xd2\xfb\x0c\x84\x1d\x0dLVY\xdc/ju\x13\x1a\x88\xd2\xa0\xaaa\x82|nzp_\xf4\x03\xc8 \xd4;^\x8a9}\xeeu\x9a\x91 `\x04\x14s\xec\xe1\x0c\xc6]\xa3\x05``\xd1w\x12*~ \x00\xf3\xae\xd3\xa0\x9cb\x82\xa2bx(\xb3n\x1fqx\xd2\xf2\xda4\x1d\x8a}\x1ck\xd4>\x9cI+\xeb\xb3\xf4k\xc8u`L\x93\xf3]4\xb5\xd0\xc3\xe33\xd9\xee\xd7\xf2\xd9\x19\xea\x18\xc9\xc1Y:\x18\xfb(-\xadN\x82\x06e\xd5\x1f0\xa2\x1dV\xf8\xbe0\xc1\x985\x01\xf8\xd2~\\\xa6\xa5\xb5)&\xf6\x98V\x80l\xe4\x03\xf8\x03\x04\x00s\x9a^\xec\x85\x00\xf4+\x0b\x00\xe1:G\xf2p\x96\x0e\xc4,\xe46\x1e5\xbbP\xdd\x15J\x80}\xce\xa4\xe2\xc8{m\xa4\xe2\xc3\xc2\x01\x07\xc0\xdb\xa4\x18-\xa1\x931\xba\x10S\xfa%\xb6P`\x10\x19v\x99#|Gg\x9b \x10W\xf6\x8dI1\xba\x92\xd66\x17E\x12\xfa\xd9\xa8\xf3UTe\n\x1b\x95\x9d\x81f\xe5\x18\xa5umc\x81\x86\xa6\xeb\xec \x804\xcbg\x17\xa19\xfa\xc6\xf7<\xa3\xbd\xf2\x0e\x7f\x02\x80\x97Y\xc7\xac\x184$h\xa3v\xba! \xcc{\xcd\xb4!\xb1\xd8\x92%h\xe3\x93\xdc\xd3_\xda1\xe6\xaei\xcf\x83\xa6p\xbc$\xf0\xb2\xda\x94\xa2q\x14B@\x13\xdb\xff\xf3\xd7\x0d\xfaA\xb9\xc5n{\x8e\xd6Y\x08\x01u\xc1'~\x16\x8e\xe9\x04\xa2\xfbA+\xc74\x0c\x98\xab\xd7:\xfc0\xd1v\xaf$\xa2#\xb7\xf1\x08\xfdm!OXh8\x10j|g\xd1\xe0a\xb2\x99\x04\x9a[y\x9a\xbdk\xf24C$\xa0\x9e#\x9f\xa3\xa8\x001\xc6\x1a\"\xc0\xe4i\xa6\xcc0\xf3\xf7\xb7\xf5XE\xb8\xe0\xa1\xc9\xc2\x0c\x90\x83\x80$\x838\xdf\xd6\xe3\xd4\x82FNG\x0f\x876\x8a\xbf1\xa8d(\xa7@\x8cQX\x90\xdb\x19\x9f\xc5YG\xe9\x9e\x00\xa5y3]\x9aJ\xe1\"\x00\x00\x00\x00IEND\xaeB`\x82\x01\x00\x00\xff\xffPK\x07\x086B\xc8\xd7\x7f\x04\x00\x00u\x04\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\n\x00 \x00index.htmlUT\x05\x00\x01\x80Cm8\xacTmk\xdbH\x10\xfe\xee_1\xd9|Hrd\xa5\xbc\xdc\x85C'\x99#\x97+\x0d\xa44\x90\xf8C)\xa5\xac\xb4#y\xea\xd5\xae\xd8]\xf9%!\xff\xbd\xe8\xcdJ\xeb\xd0\x96P\x0c\xd6\xe8y\xc6\xcf\xcc>;\xe3x\x8fsx{\xff\xee\x06rc\xc1y\xe1)\x03I\xce[JkOFCZk\xa9\x10\xd2\x9a\x94\x04\xce\xa7\x93x\xef\xea\xfd\x7f\xf7\x1fn\xff\x87\xb9/\xd5t\x127\x0fPB\x17 C\xcd\xa6\x13\x80x\x8eB6\x01@\\\xa2\x17\x90\xcd\x85u\xe8\x136\xbb\x7f\xc3\xfff=\xe5\xc9+\x9c\xde\xadDQ\xa0\x85\xd9u\x1cvH\xc7*\xd2\x0b\xb0\xa8\x12\xe6\xfcF\xa1\x9b#z\x06s\x8by\xc2\xe6\xdeW.\n\xc3ZW\x8b\"\xc8L\x19\xbaN\x85\xd7\xc4\x9b\xf6\xff\xfd3\xf8+8y\x86\x06\x99s\x0c\xc2\x1dm\xca\x8cf\xe07\x15&\x8cJQ`X\xe9b(\x93\x8be\xc3\xf3\xf3\xb3\xf5\xf9Y\xd0\x12\x8e\x1e\xd0%\xacE^\xadwz\xb1>\xbd\xf8F\xafEF\xbd\xf6\xc4]\x0c\xad\xcd}\xf8\xd8?\x01R\xb3\xe6\x8e\x1eH\x17\x11\xa4\xc6J\xb4<5\xeb\x7f\xb6\xbcY\xa2\xcd\x95YE\xc0K\xf3\xc0]f\x8dR\xa9\xb0\x8e/\xd1z\xca\x84\xda\xcd\xe5\x9b\x08\xba\xc4\x81{\x9a\xf4\xc1\x1f\xc7C\x10\xa5\x98\x1b\x8b\xe3\xbb\xc8=\xda\x1f\xf6Gz\x8e\x96\xfc\x8ehj\xe4f\xe7\x87\xa5\xb0\x05\xe9\xe8dl/\x15\xd9\xa2\xb0\xa6\xd62\x82\xfd\\4\x9fQ\xaa\xf9\x8e\xc3\xad_q\xd8\x8d^\x136\xf2\xbd\x9f\x92\x96@2a\xe3<\xb0i\x1cJZ\x0e~g\x96*\x0f\xcef\xaf\x99-\xde\xedH\xf0\xc51\xc8\xacq\xceX*HO\xe3\xb0\xd3\xfd=E\x9c\x17Z\ne4\xf2\xca\xa2C\xffk\xf5\xba\x97\x15iiV\x81\xd1\xca\x08 \xe4\xb5\xce\x9a\xf5><\x82\xc7\xe1:\xc2\x10.\xdb-\x17\xe06\xcec\xd9\xe3\x99\xd1\xceCM\x90@\xbf\xab\xb3\xeb\xcb\xf6\xc4\x87\xe3\xb5\xd5VE\xc0\x82\xa1\xe1`#J\xc5\x8e\xb7\xb44\xe5g\x92\x11\x1c\xec\x8f':xF#V7\xa4\x17\xed\xb8x[\xe3Hugu\x11|\xdcB\xf0}\x1fA\x9f\x14\x88\x8a\xdc\xf1Kyw[\xf3n\xdb\xd4m\xce\xa7g\x95T]\x90\xfeY\xa5.)\xb82\xab\xd6\xcb\x99U/i)\xb11\xb5\x8f\x80\x8d\x85oZ\x88\x0d\x93{4\xd8\xde_M\xeboM-\xf8\xd4N\xf2x\x7fq\xd8\xcdr\x1cv\x7f\xb9_\x03\x00\x00\xff\xffPK\x07\x08R\xb2\xb0\x8fo\x02\x00\x00\xb6\x05\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00 \x00swagger.yamlUT\x05\x00\x01\x80Cm8\xec\xbd{\x93\xdc6\xba\xe6\xf9\xbf>\x05\xd6\x11;\x92\xcfHU\xb2\xddv\x9f\xd1nw\xac$\xcb\xee\x9a\xb0\xad\x1aI\xee3\x1b'\xce\xa6\x91$2\x93]L2M\x80uiw\x7f\xf7\x0d\\x'.d2K\xe5\xd6\xf3F8\xacJ\x92 \x00\xe2\xc6\xf7\xf7\xe0%\xbf\xa1\xdb-+^\x90\xc7_\x9e=\x7f\xfc(\xc96\xf9\x8bG\x84\x88D\xa4\xec\x05\xb9,\xb38!//\xbe\xfb\xdf\xe4\xdd\x9b\xf7\x1f\x08\xcdb\xb2}w\xf9\x9a|O\x05\xbb\xa1w$\xce#\xfe\x88\x90\x98\xf1\xa8H\x0e\"\xc9\xb3\x17\xe4\xa5>7\xc9\x04+64bd\x93\x17\x84\x0b*\x18\xf9\xb5dE\xc2\xf8S\x92\xb2-\x8d\xee\x88(h\xc6i$\xaf\x93\xc9\\\xb3\x82\xab$\x9e\x9f\xfd\xe1\xec\xf9\xa3]\xce\xc5\x0b\xb2\xb9}V0.\xce6e\xa6N\xbc=K\xf2G<\xda\xb1=\xe32\xab\xcf\xc8N\x88\x03\x7ft\xa0b\xa7~8gb\xc7\x8a}\x92\x89\xf3\x0dc{Z\\1q~\xfd\xc5\xf9\x9ar\xb6\xda0&\xcf!d\xcb\x84\xfe\x07!\xbc\xdc\xefiq\xf7\x82\xbc\xa2\x9c}\xc7\xeal\x12\xb1cD^E6\x8c\x91|\xa3\xfe>\xd0\x82e\x82\xac\xd3<\xba\xaa~\x8b\xca\xa2\xf9\xf1\xcc\xa4\x9a\x1fXAe\x86/\xe2:es\xa8`\xfc\x90g\\\xe7_\xdb\xe3/\x9f?\x7f\xdc\xfc9\xa8R^F\x11\xe3|S\xa6\xf5\xd5g\xad\xb3U}\xd0\xf6\xf5\x84\x88\xbb\x03{A\xf2\xf5\xdfX$:\x07\x0e\x85\xcc\x9bH\xda\xf7\xd7\xd6\xad\xa2\xb6\xe9\xc4\xb8(\x92l;<\xa8[Ku5It\xd5\xbd\xb9\xb8\xfc\xe2\xeb\xaf\xffG]\x85\x9d\xeb:\xe5\xfb_%+\xeeL\x1d\xbd3\xc5#\x05\x13e\x91\x8d'\xd5\x94=f\x1bZ\xa6\xc2^u\x19)3v{`\x91`1aE\x91\x17\xa7\xacAu\x83I\xd5\x17\xe5\xb1\xb5\xbee\x1f\xda\xb2bpt\x93\x17{*\xd4\xf1\xaf\xbe\xec\x1d\xdd3\xce\xe9v\xda#\x8c\x99\xa0I:(Lu\x0d-\nz78\x96\x08\xb6\x1f\xb9\xc4Qm\xda\xec\x95\xd7\\\xbe*\x8bt\xfc\xa8\xa7)J\xbb\xa6i9R~m\xde\xab\x9b\xda]\xdf\x89\xaa\xcd\n\xbam\xe5\xf6\x99n\xb0\xae\xb1F\x8e\x04\xab-\xe5\x8e\xc1F\x9e\xf2=\xe5\x9d\xd1fK9)9\x8b \x15\x84\x92mr\xcd23\xd4\xecX\xb2\xddU\xd5\xd9\x1d[LB\xe6\xd8\x83\x1d\\\xea\xdah\x9b\xf3q\xb4\x9a\xf97\x7f\x18^\xaaG\x1dYef\xc0\xd1#\x06\x8bM\x95m\xeb:\xd162\xe4\x98\xaa\x1b\x8c9u\x02\xfai\xc8\x19\xacz\x1c\xfaA`\x00\xc2\x00\xf4\x90\x07\xa0\x03-\xe8\xde1\xfa\\\xaa\xe3\x9d\xb1G]\xc2\x04+\xb8\\\xd7\xdc6\xe9\x91}\x1e\x97)\x1b]\xd8|W\x9d\xa4\x134\xa7<\xd81\xa8]-m\xebdF\x9f$;v\x921U5\xeczo*\xa1UKg\x96\xc6jiw\xeeV\x97\xe5+\xfb\xe2\x8b\xd4i\xaf\xf3\xd2x\x08a)\xe5\"\x89\x12q\xb7\xda\x97\xa9H\x0ei\xc2>zM\x8df\xaa]G{z\x9b\xec\xcb\xbd\x9a,\xd3d\x9f\x08bi\x9f\xa4\xd5\xd4\xd4\xf4\xba\xa7w\xb6\xca\xda\xd1k6ZE\x19]\xa7l\xa5\xe7`W\xd58\xc6\xd7\xc5j\xa6\x9d\x173Zp\xb9p\xbb\xd9%\xd1\xae\xb3l\x0bkAiT\xa6j`\x95\xeb\x19\x9dz\xaa\xa6Z\xc7 \x15\xe5|\x9fs\xe5\xb8`b\xd7w8\xf4\xad\xbasX\xf7[\xa0\x88\x96.\xd5*\xa6Z\x7f\x8a\x9c\xac\xad\xedfG\x8b-\x8bm=I\xe4\x84\xb3,\x96\xb3\xba|\xd61\xc9\xb3\xa6\xab\x0e\xae\xa9\xfc>\xed\x19\xd0L\x13\x7f\xfdq8\x05v\xaew\xf7\x1a\xb5`\xd1\xe9\xd6\xab\xedv\xfa\xd5\xa4\xaf\xeaV\xb5F\xb96\xb9K\xb2-\xb9=g\xd7\xfb^rc\xd30V\xe2\xbd\xa3X\x89\x7f\x9c\x958\xbb\xde\xcb58\x8d\"\xb9|8\xff\x8d\xc6q\xc18\xff\xa7}9\xfeR\x9fZ\xaf\xc7iF\xde\xc8\xe4X\xb9'&\x99\xd1\xe5\xf7\x1b\xb13\x97\x9a\xa3\x0fv\xe5\xbd\xa6)\xcd\xc6\xa6\x0c\xe7S\xe8\xcdU*\x89\xeam\xbf\xfa\xd38a\xe5\x00U/\xe3\x92<\xeb\xcf^\xb2s\xadv\x94\xef\x8e\xc9B\x9dH\x95\x89\x1d\xbb}\xa6\x1b\x89\x1cS\xe4a\xd5V8\xd9\x14\xf9^\xe7\xeb\xed\xcb~V\xb2|zMT-\xb1\x1c_\xb6tr\xa9\xd2\xafrh\x9a\xcfcN8\xfb\xb5d\xf2HV\xee\xd7\xac\xe8\xe6*`\xf46-\xad\x1e\xbe\x13\xdb\xc8-\x7fUW\x9cw\x1bge\xef._\x93=\x13\xbb<\xc6\xe0\x8d\xc1\xdb1\xfc\x86-\xc4 yI~~\xf7\xc3y\xc1x^\x16\xb2}\xd3\xbd|o\xa7\x82\x94Y\xf2k\xc9\xd2;\x92\xc4,\x13\xc9\xa6\xf2u\xa8\xa6\x9ao\xac \xcas8+\x12\x9a&\x7f\xb7\xaf\xadT\x1d\x88<\xcaS\xb2.7\x1bVT\x0f\xed\x8c|\xd8%\xdc\x94\x8d\xecK.H\x94g\x82&\x19\xa1cU\xa9-e\x94\x0b\xfb\xbd\xf2\x8c\x91\xcf\xce?S\x0b>\x1a V\xc8\xbb0\"\xdf\xcf\x08g\xdb=\xcbD5\x16\xfe\xfc\xee\x87\xc7\x9c\x1c\xa8\xd8YSS\x99*\xd8\xa1`\x9ce\x8e\xbb\xca\xe46e\x9a\xde\x91_K\x9a\xca\x1a\x8cu\xfd\x9a[\xa9\x9a|B9I2{\"\xbf\xc8\xac\x9co\xf3|\x9b\xb23Ug\xebrs\xf6m\xa9'\xb2_>\xd7%Q\xc9\xf2]^\xa61Y3\x99\xa0-=*\xdf\xb7\xf3,\x89h\xaa\xfa\x90\xfd\xceO\xd8\xd9\xf6\xec\xa9\xac\xdaX>\x8a\xcf\xce>\x93\xc3V\x96\x0b9.\xb2\x83`\xf1\xe7g\x8f\xec\x97_d\xe4 +;\x89\xd8S\"\x98\\\x14\x97\xbc\xa4\xb2:\x0e\x05\x8b\xf2\xfd!IeNE\xae\xa7\xa4$\xa3\xc5\xb0\x87UF\xd3T\xd5\x17\xd7\x8dS\xec\x98\xf5\x05\x98\x10=\xd6\x91D\xc8%|)\x87\xdbL\xc3\xc6<\x13\xecV=\xea\x97\xd9\xdd\x19\xf9K~\xc3\xaeY\xf1\xd4\xf1\x12Dd\x83\xe0\xe6\xbdT&%vV7\x85\x19A\x19\xf9e'\xc4\xe1\x97\xa7\xfa\xff\xfc\x97\xa7$/H\x96\x9b\xa3OUk\x8chFr\xd5;e\x8d\xd8\x13d\x82\x94\x07BU\xd9\x1d\xf7e\xc55+t\xd5\xec\xe9\x81\xeb\xa6\xa5r.\xf2\xaag\xe9w\x86D\xbd\xc0\x11:\xf6\x0e\xa7m\x93\xa7i~\xc3_8\x9e\xed\xbf\x91\x8bMS\"\xd9,\x0eE~\x9d\xc4,\xae\x0b-\x7f\xa4\x9c\x97{\xf9\"\xeeH\xe8eF\xfe\xf2\xe1\xc3%\xf9\xfe\xcd\x07\xf9~e\xba\xa0\xeecw KcB\xadW\xffg\xbf[|\xb8;\xb0\xff\xfa\xcf\xff\xb2^`V\xb5\xb2=\xe8\xf6f\xa6\x11\xf5\x84\x0eE\x1e\x97\x11\x93\x0bH5\x85\x8d\xbd\xc3k\xfb7\xf2\xf2pH\x93\x88\x9a\xba,\x98l\x9f\xf9\x8d~\xdd\x8ch$\xc7\x96<\xbf*\x0fr\x9e-Sa^ \x1d\xe3\x93jW\xb6\xc3\xaa\x11\xaa<\xee\xe8\xb5j\x82\xfbV\x1f\x8au'\xa2U\x91\xe4\xbf\xaf\xf3$&4\xb37,b2\xa8\x86\x8f\x82m\xf2\x82=\xad\x12\x90\xe9R\x91\xac\x934\x11w$c,\xe6\xfa5\x9a\xa8!\xaf\xb8v\x94D\x95E{\xf3\xd4E\xaa\xcf\x9e\x91'?sVi\x14d-\xc9\xe6)\xc7,\xdd>iF\xb7\xae\xd2\xaf\x0bF\xaf\xe4\x18d\x12>\xfb\xdc\xde\xa2~\xca\x05{A\x84\x9cC*\xd9\x03U\xe50c\x97\x11\x1c\xa4w\x84^\xd3$\xa5\xeb\xd49\\\xca\xf6\x98o6I\x94\xd0\xd43\x97\xad\xcb\x0d)\x98\x9c\x89\xd8S\xe55IDu\xd3\x9a\x84\xd5\xfd\xd2\x9a\xd4\x9am\x93,\x93\x85\xbdI\xc4\xce1\xb9\xdc\x1d\xd8\x99n\xff\xf4\x90\xf0\xb3(\xdf\xbbF\xe3\xf7Z\xf5Ar\xf9j$\x07\x8a\xac?J\x91'f\xf9\xc9\xf6\x07qg\xba\xf6\x98oZ\xdb^9\xe7\xd6\x8eAI\x15Z\x16\x82$\xfbC\xca\xe4$\xab]t\xfc\xc0\xa2d\x93D\x84\xb3=\xcdD\x12\x8d\xba\xcbN\xf2\x06\xda\xb7\xd0U\xd2\x8fr8Z3Be\xa6\x92\xb8\xb5\xc0\x19\xacc\xcc\xe4N\xd7\xf9\xb5\xbdM\x9b*0]a\xac\xf8!9\xfb\xe5ev\xf7K\xb5\xff%\x1b\xf2D&\xf5\xb3*\xc8\x87\xfc\xc9\x7f\x93i}N~s\x8c\xe1\xae\xf4\xfe\xe9\xae\xbb/=u\xf7?\xe95]\xac\xf2\xc8\x9f\xd4\xdaP\xdee\x81\x1aJ\xf8\x93\xef\xf2\xfc,J)\xe7\x9e\n\xd2Y\x94\x17\xe92\xb6.\xb4\xe7\xe1\x9f\xd6#\xe7\xe7\xb2Y\x87\xe5\xf1=\xdd3\xb9tz\xa9s\xbbe\xe2[\xedR\xb8\xc8\xb8\xa0Y\xc4\x9e|>'\xf3\xa3\xe9\xb8\xca\xe2l\x05_yZ\xc1\xe5\x9d\xd8\xe5\x99\xa3\x1d\xe8<~\x97\xe7O\xce\xce\xce\xec\x13[\xdd\x06\x9e8\xcfQ\xfdH\xb5\x90\xb9\x0dD&r\xa1k\xfc\xdb7\xef_\xbf\xbb\xb8\xfc\xf0\xf6\xdd\xe7\xb6\xf9\x8e\x98\xdb\xea>\xe7\xbe\xb1\xbe\xb5\xb36\xff\xe0\xa9\xcd\xefs{E\xaa\x9a|\xf1'\xf2\xdf\x0e\xeb\xb3\xef\xf2\xfc\xb7\xb3\xb33{;\x94\x99~*\x17\xd4\xf2\n\x9a\xdd\x1d\xd6g?\xb1\x1bO\xfe\x93\x8d\xba\xe2\xff\xf8\x13\xc9\x92\xd4\xd9\xf0\x9c\x95\xec\xe8\x1e\xee\xebz\x05t$cr\xaa\xcbv\xf6s\xb6\xa7\x05\xdf\xd1\xf4C\xae\x07\x8f\xa5\x8a1z\xec\x83R\x9eDW\xf5\x9e\xc7\xe7\x8f\xc7oe\xd6\x0bU\x96\x95'\x800\xd3G>\xdb\xe4\xf9\xd9\x9a\x16\xaa\xb0\xb7\xe7wg\x7f\xffL\xd7\xa2z/\x1dM\xcf\xfe\x9a\xae\xb2\xfa\x99L\xc3\xb6T\xf8\x9f\xef\xdf\xfed9$\x9f\xb4<\xdcx\x9d\xf4J:\x97\xa3\x88Y\x06\xea7\xdb\x92\xd7Pp[\xa6\xb4\x18Oo\x98\x8c\xbc$f\xcd\xc2\xed)a\xfb5\x8b\xe3f \xf7T\xbf\x90\x8c%G-\xfe\xab\xd6\xa2j\xa3^\xe5\x7f\xf9\x7fd\x05\xfdb\xdc)\xf5\xc2\xb5\xfd\x08\xc6\xbb\x81\x19\xb6^8^\xc1ht%\xc7\xae\xc6%\xb0IRf\x9fm\xaa\xb1\xee\x92\x15<\xcf\x9c\x9d\xd3\xf8\"7I\xc1\xc5J=\xc7?\x91/\xec)\xd7\x17\xc8\xa6W\x9d\xff\xe5\xe4yO\x9a+W\x9f\xa9\xba\xfc\xec\x05\xf9l\xacov\xab\xe1L\x97\xf2\xb3\xa7\xae\xf4T\xf9~\xa2{\x99\xe6\xff\xad\x8b\xf0g\xe7\x05\xb2|\xbd\xf3\xa7\x16\xf2bc^9\xbbmM\xb7\x86\x84\x93\x1b\x96\xa6\xcf\xae\xb2\xfc&S\xa3\xc9\x8erBITr\x91\xf7\xa9\xb66\xdd\x87\xc6\x8et\x9b\xfcS\xfd\n\xd3\xeb\x07z\x88leG6`\xcb\xeb%\xd5Mz\xfcf\xbf\xa8\xceX\xb5\xf3]\x9e\x1au\x82\xce\xb9\xee\xcaIV\xf7\x0f\xa2}\xa0\xe3I\xe9.3~\x1f\x95\x85\xb3zR\x7f\"G\xaf\xaa\n\x07\xce\xb1\xcag\xfc_\xff\xf9_\x9f;:\xd2\x12m\xae{Cw\xb3SU%\x93\xfc\xe2\xec\xcb/\xbe\xe4\x9f9\x9a\x90\xfe\x7f\xa3_h\xb3d\xd9\xcf^\x10\x83\x8b[it\xde\xa3\xcd\xe1\n\xbf\xb1\x8a\x13\xef\xd8m}L\xe4Z>AZ\x04PN\x0b\xed\x81)QR\xc7\xcehX\xb0_\xcb\xa4`\xf1\x0b\"\x8a\xb2\xfd(G\x1c\x15\xe1\x1c\xdc\x80Z\x1e\x02\xc2\xff\xd18 ^\x19\xbe\xdb\xdd\x8dS3_J\xc6\xa8\xaf\x91j\xf3$\xdb\xa6M\x01\x1aLn\xa3\xe8\xe6f\xe6((\xfa8E\x0f\x80\xc4\xa6\"\xa7@\xe2n\xddW\x06Hl\x0c\x90\x18\x90\xb81@b@\xe2\xc6\x00\x89\x05 \xf1\xb8\x01\x12W\x06H\x0cH\x0cH\x1c\xb8J\x02$\xae\x0d\x90\xb8m\x80\xc4\x80\xc4#\x06H\x0cH\xec\xab|@b\xeb5\x80\xc4\x1d\x03$\x06$\x06$\x06$\xeeX(\xb0\x03$V\x06H\x0cH<\x1d\x12W\x1c\xf0\xe3Ab_t\xc6?\xb7\xd1\xf0\x02\x81\x1a\x9f6-#Q\xdbc\x93}\x92\xd2BVK?\xf4\xd1cn\xa6\xea\xa7d]\nBS\x9e\x93h\xc7\xa2+N\xd2<\x8b\xf3\xc6\xab\xb6\xa3E\xbc\xc9\x8b+\x15\xf0\xb2\xe4v\xdc\x8cx\x90\x88\x07 DL\x80\x88\x95\x01\x11\x0b b b b b b \xe2\xca\x80\x88k\x03\"\x06\"\x06\"&\x93)'\x10q\xc7\xa6U\x1e\x101\x101\x101\x101\x10q\xdb\x80\x88\x81\x88\x81\x88\x81\x88;\x17\x00\x11\x03\x11\x7f\x04D\x1c\x0eX\xa3<\x0e\xdb\x82\xfb:\x8f\xed\x9bn\xd3\x94D\xb9\x1c\xa6\xda\xfbl\x9d!\xaaer\xe6\xf7\x07\xcb9]\xcc\xcd\x13\x8fy\xd4\x9f2\x88\x19\xddt.\xd3\xf6{\x81\xa2i\xd6 z\xf3\x84\xbac\x7f'\xc5\x7f\x8c\xee\xbc\x95\x15=e\xdb\xadz\xce\xef._\xf7\xd2\xc2\x9e[\x00U\xaf71\xc4!G\x00T\x01T\xadg\x02\xa8*\x03P\x1d\x1a\x80*\x80\xaa\xcd\x00T\x01T\x95\x01\xa8\x02\xa8\x02\xa8\x02\xa8j\x03P\x9d\xc3$\x01T\x01T\x1b\x03P\x1d\x1a\x80*\x80*\x80*\x80*\x80*\x80*\x80\xea\xa7\x00T\xefs\xcf\xad\xa2\x80\x1fk\xc3\xad\xfe2\xfaj\xc2G\x8a_\xab+\x02>U\xfc\x98\x9bs\xc9\xcb.\xcb\xec\x81\xe1Vr\x8f\xaa\xa2>XB\xackK\x97g\x12\xfb\x1b\xe0\xe0vJUc\xa9\xbeSo~\xad\xdc<]\xae^Y\xf5!\xdf\x89\xd9\x98\xf2 \xe1\xfa[\xc1\xd3\xbe\"L\xaa\x13W\xfa\xe8\xb294\xfb\x8a\xbb\xb7\xe8\xe5\xd0d\xabsm@\xd8\xeaNc\x0c\xa2\xe8c\xa9\x9cw\xdbt\xef\x14D\xb46\x06\xba\x0e\xba\xde\x18\xe8:\xe8zc\xa0\xeb\x02t}\xdc@\xd7+\x03]\x07]\x07]\x0f\\%\x81\xae\xd7\x06\xba\xde6\xd0u\xd0\xf5\x11\x03]\x07]\xf7U>\xe8\xba\xf5\x1a\xd0\xf5\x8e\x81\xae\x83\xae\x83\xae\x83\xaew,\x94t\x82\xae+\x03]\x07]\x9fN\xd7?\xf6g\x8f\x19\x17\xc9\x9e\n\xb6\xdaRn\x87\xeao\xccY\xdfS\xde\xf8Zt\x11\x7fab\xb7b\xcd\xf1_Hq\x88\x08=$&\x8dnP\xe9\xe6\xbcGU\xa9\x1e(K\xaf\xeb\xa3mN\x9fP\x18\x17\xdeR\xde \x12]U],\x8f\xf4.*\x98\x98\x99\x87Q\x8f\x94\xc9\xc1\xa8\xaf\xa7`\xa2\x01\xc92w,&1\x15T\xef\xfcf\xd7\xfb\xda\x9bA\x9eh\x97\xb3|\xfb\x93g\x8c$\xc6\xcb\xc3!M*\xe7\\\xc1\xaeY1J\xb1\xf2C\x94\xc7\x03\x17\xe0\xf5~5\x9d\xf0\xd6\xa5\xab\xae\xae\xbb\xa0\xa1\xd1\xa6L\xeb;r\xbd'\xec\x96E\xa5,\xcc\xa3\x91\x14Z\x8d\xb4f\xec\x8al0\xde\xe9\x08U\xe3\xab\xd3\x00&\xef\x1d\x05&\x0fs\xb3\x12`r`r\xeb\x99\xc0\xe4\xca\x80\xc9\x87\x06L\x0eLn3`r`re\xc0\xe4\xc0\xe4\xc0\xe4\xc0\xe4\xda\x80\xc9\xe7\x90f`r`\xf2\xc6\x80\xc9\x87\x06L\x0eL\x0eL\x0eL\x0eL\x0eL\x0eL\xfe\xc9c\xf2bkg\xe4\xc5\x967\xe3#\x97\xfd\xf2o\xb2\xebk7A5{\xa9\x9f\x0cJ\xee\x93\xf1_\x0d\xce\xae\xacA\xe3\x1b\x9ar\x0f\x1b'6\x8fD\x95\xf7-\xe5\xab\x88\x1el\xd97\x87k$\xa8Gl=oo)'\xf2\x98\xf6\xd2\x95\x9c\xc5'\xcbz\x8f2W\x99?\x14\xf9!\xe7\xacXy\x84\n\xfd\xf3\xaa\xb9G\xe6\x87q\xf9\xd2\xad\xbfI\x9ddJ\xbb\xa0\xefz\xb2\xc2\x8c>\x87hG\x93l\x95\xc4\xb6\"\xf4\x9c1\xd5\xe95\xf8M\x0e_|\xfd\xb5\xfe\x99$\xb1l\xae\xca\xfbW\xe4\xfb\xb1\x92v\xd2\xda1\x1a\xb3\x81 c\xb1\xe2\x8e?\xba\xfc\x9a\x15E\x123\xeb3\xe3\x82\n\xd6\x9cFX\x16\xe5jt\xe4\xaa\xb7\x9c,\xbb\xad\xa73AX\"v\xab\x88\xa6\xa9CT\"v\xafi\x9a\x8e\nJ\xe4\x95n%\x89\xbe\xf8QU\xb4\x07\xaa\"\xd9Q\xbe\x9b\x84\xbf\xdd*\x0d\x99\\\xd5Skm\x91(h\xc6\xa9\xd6ft\xbb\xabF\xb8\xf2\xa2\x91\xb4\xe2d\xb3a\x05\xaf;\xc4\xd8L\xf4\x81e\xb1~\xac\x84\xef\xe8\x97_\x7f\xd3\xc9A\xfb\xc6\xea3\x01g\xe4=\x1bMGy\xb6_\x9c\x9fo\x13\xb1+\xd7j\x92\x12u\xd2\xed\x7f&\x9c\x97\x8c\x9f\x7f\xf3\xf5W\xff\xc3\x02\x03\x0b\xb6a\x05\xcb\xa2\xfe,\x9d\xe6\xdb\x07\"\x1a\xb0\x86\xdf\xd0\x16\xe00\xafBHt\x87f\xb9L/h$\xf4\x92\xa9\xf1\x8e\xaa\xc6p\xcd\xb2q*/\xf2C\x12y23^?\xda\xac\xb5\xa4-\xa04\x9d\x8e\xa7\xb3\xa3\xa0$I\x13\xaeq\xbf\xfe\xad\xfd\xd6\xdc.\xef\xf8\x9bHL\x05=\xa2\x8a\x03\x98\x84\xab#jS\x02)\xbd\xb6Lx\xa3z\xea\xe5\xffi\xc5\xdb\xad\xe9\xbc|u\xf1\xcc\x0c\xe6\xa3\xe7\xa8 \xca\x1a\xacD\xdb\x842[\x04j\xda\xfc\xa5n\xe7\xa6j\x9b\xf5bA\xd7F\x7ft\xb8q`\xee$\x8b\xd2\xd2Vrq\xbb\x1a\x1fB\xcda\x7f\xa1MyLB\xd5\xe2\xa0\x9d9\xcb\xf8\xa8n\x9ed1\xbb=\xe2\xeeS\xaa\xbc\xba\xdd\xd8\xf0j\xfc#\xc3\x95Je\xfa\xa1,SW\xdeg\xdf\x9e\x04N\xf5\xe4\xef\xb3\xe6;\xd5\x9e\xe6[\x7fu\x17l\x9f_\xb3\xd8\x9d\xbfu\x9e\xa7\x8c\xda\x98v\x08X$\xcd\xadT\xcb-JF\x92\x8d\xa6\xea2\x9f7J\x86x\xcd\n9\x0f\xc4%S\x9a\x03\xbd\xe4\xb5\xbfX\x16,/\xb64K\xb8ZL\x9d\x91\xff7/\xb5\xcc\xe3@\xef\x08\x15\x82e\xcd\xbbp\xc2\x8d\xc7(\xb1\x0b\xcd\xee\xf2\x92\x14,b\xc9\xb5\xaa\xd7\xe2U,\xe4\x8bo\x91\\\xb3\xf8)I\xce\xd8\x99|\xaaZ\x06S\xd5\x80\xcc3\x7fJ\xd6\xa5P\xf2\x0b\xce\xa2\xb2\xd0\xc5\x1cK\xb0\xce\xe2\xb0E\xf8\xdb\x83ly=Ofo\x8c\xaf\xfc\xe0\xba\x99\x8f\xcb\xb4v\xccu\x95\xf2\x7f\xfdQ'\xf2\xa8*\xdf\x03\xd5\xca\xb7\xab\xa2m\xdd\x0e\xa9\xebC\x8f*\xba\x01\xd7\xc5o\xd5\xccpYf\xcd\x10\xf1\x02nv\xbd_\xc5,\xcb\xf7v\xfa\xedt\xed\x86\xf8F[wi\x8b\xda\xd4R3\xbfb\x19Q\x87\x92L\xcf\xfc\xcaW-rR\x946\x14 /|\xf3\xd7\x1fug\xb0\xcd\x9eJ\x8c\xa2 \xdb\xd8:\x96et\x9d\xb2UT0*,\x8em\xe1\x15:\xfa4\xa5\x9d\x9b\x10\x91o\xb7)\xe3\xa6\x0f\xb7\xf2g \xbf!\x9a\xe3I]\xef\xcf^\xebd*_\xa9\xa3P\xf5\xd6\x94\xbe-W$\x05\x81\x83\n\xa4\xb2\xdelg\xe9\x9b\xab8\xb7\xa2\xa0+\x96\x1c\x1c\xd2\x0c\x97\xc0\xdf)\xef\xf7\xb6l\xdbX\xdd6S[MF;K\x82\xd6;\xd7\x9b\x8bKN\xccw+U\x85\xe4\xd9&\x19\xbb\xaf\x9e\xc2\"u\xd8Rj\xcf\x13j\xa7\xd0\xc9\x8e\xec2z*\xd4\x07\xcd\x92\xd0\x92L3\xde8\xea\xde\xaa\xaa\xf1\x0d;\xd2v\xf9^N\xbe4^\xa9\xd9\xd7\xeem\x0bxT\xfej!\xc3;\x12~\x93\x88hG\x9edIJ\xb2\\>\x9f\xab\xa7\xe49\xf9\x13\xa1i\xc1h\xecB\xb6uR6\xd7YL\xf3\x95L\xf0\xde\n\xd7\xbd!\x89\xf2B\xcfg\x9a\x18\x7f\xd8\xb1o_\xbe%;Z\xc4\xcf\xe4Y\xa6\xec\x8e\xf4t2\xed\xba\xf1\x16\xd5\x80\"_a\xdd\xda\xf1\x89\xa5\xad\xe0T\xd5\xd2ov\xccpU#\xd1\xad\xf0\x15'\x0ee\x89\\W\xc8\xc5\xb0\xee)\x9d\x9a\xb2\x0d\x84rm\xf9\xfc\xde\x9en\xe7vr8\xf9\xe2\xeb\xe7\xfd\xdd\x85\xdfSN\x0eE\x12\xb1\n\xce;\xfc\xc6\xe4\xc9\xc8\xbe\xb5J\x19|.\x87\xabj\xbf\xda\x17_?\xff\xdc\xdc\xd0\x91\xdc_\xbe\x9b\xd0`La\\;:\x96\xaf:u\xb7\xaa\xe6\xfe\xf2\x9d\x16\x89>\xc9\x18\x8b\x8d @\xaf\xf8\x95\xab\xd3\x91Z\x94&Z\x15o\x9c\xa2[S\xe9\x8d&\xc2:$\xe8\xd7\x91%\x9b\xcc\xe3N\x92\xbap_\xbfR\xcf\xa1z \x8f]\x99\xf9\xf7\xe53\xf3\xef\x9d\xcc\xfc\xbb7\x1f\xeb\xbb\xbf\xd3L$\xe5~\xc9\xac8\xdbC\xff\x8e\xe4U\xf5C5!\x0c[\xb2\xcbm\xd2\x9a0\x88\xda-jR\xb35\x83(W\x08N$Y~H\xd9\xbd\x15{\xf4\xb6\xe4u\xe7\xd7a\x058\x12\x1c\x9b1 \x8dDrM\x85\xbd\x13\x1c\xd4\x9ab]\x16\xdb{+\xf9\xe0\x96\xe4\xb2\xfee\xe4\x91+w\x94C\x94Gz\x95f+i\"\xcfY\x97\xe9\xbd\x95\xb3wCra\xfev4k\xe2\x1a\xd3;\xcd\xbaJ\xdcV\xda}\x99\x14\xabmJ\xa3\x84\x15\xf7V\xe2\x91\x9b\x927\xc9\xe1\xd9\x97_\xfd\xfb\x1f\xc8\x93u\xbe_\x93\x98\xa5\xf4\xee\xf3N\x158\x12\xb4.\x05\xfd\x0d{\xcd\x8a4\xc9\xee\xad\xe8\x9d\xdb\x91W\xea\xaf\x91\x07\xfd\xa7Ni\x1c\xe9\xb5G0\x95\x98\xad\x9ci\x9e\xc5\xf9\xfd\x95\xb3s;\xf2\x83\xfak\xa1r\xea\xa4m\xe5\xa4E\x91\xdf\xdc{\x8b\x1e\xbb\xabj\xd2\x7f\xf8\xea\x0f_\x8f5iW\x13\xb1UOx\xa3\xde\x16\xf4\xee\xde\xeb`\xe4\xa6r5\xf1\xec\xeb/\xbe\xfaj~\xaf\x9e[\x05{Vl\xd9*c\x82\x1f\xd2D\xdc[%\x8c\xde\x96\xfc5)D\xa9\xb7\x0b\\\x19\xda\xfea\xc7\xc8\x8f\xf2d\"rGz%\x97\x93\x1a\xa1$c\xe2F\xbd\x00\xcat\x85E\x83H\x08\x97k\xd9\x1dMV\"\xd9[\x95\x9f\x0b\x96\xb7\xba_\xf5L\xe5m\x9d\x0f\xce\xea\xb9h\xa7f]\x83\xd1,*\xb3\xfb*\x9b\xbe\xdb2%\xd3iYWW\x05\xdd\x96\xec\xbe\xca\xa5\xef\xb6L\xb9tZ\xe3\xe5\ns2\xbf\xde\xd1${=\xe2\xf7\xaavI\xb7O\xf0\xb8\xb7d\x7f\x91ot\xff\xc6\xe3\xab=\x15\xbb\xb3\x8bLTbW\xcb\x05I\xa6\xfcA$\xdf\x90\x7f['[y\xc5\x98\xe3Y\xedNX\x95\xd9\xa1\xc8\x85\xda\x05\xb8\x12\xb7N\xff\xa6\xcb[\x12V1\xa3\xb7\xac\xab(\xd9\x90\x82\x1dRz\xf7\xac>N\x9e$g\x8cd\xd6\xe7\xa5\xdf3m\x15\xc1\x93m\xc6\xe2\xcf\xdb\xdbA\xb9\xdad\xb3ff\xcb+\x8b\xab\xfd%\xdau\xbc\xa7\xd1.\xc9F\xb5\xd7\xfa\xa5\\\xbd\xbc\xaf\xb2r.\xa5\x08\x08\x98\xd0\xa9\xca\xde]+\x9e\xd8\xc4\x051\xbe\x02\xe5C\x1099\xb0\x82'|\xe4y\x9b^t\xd9&;\x8d7v\x80v\x1eYs4x\xb8\n\xbb\xe9tG\xf7\xabv6\xa8*\xff\x86\x82\x81\xb2Q+\xac\xd6Kn\x0c/a3k\xef(6\xb3\xfaZec\xd8\xcc\x8a\xcd\xac\xe3\x86\xcd\xac\xca\xb0\x99uh\xd8\xcc\x8a\xcd\xac6\xc3fVlfU\x86\xcd\xac\xd8\xcc\x8a\xcd\xac\xd8\xcc\xaa\x0d\x9bY\xe7\xec\x07\xc5fVlfm\x0c\x9bY\x87\x86\xcd\xac\xd8\xcc\x8a\xcd\xac\xd8\xcc\x8a\xcd\xac\xd8\xcc\x8a\xcd\xac\x9f\xc2f\xd6\xf0\x8dm\\\xe4\x05\xdd\xb2\xf3\xdf\xcc\xce\xc9\x7f\x9e\xffv\xc5\xee\xfe\xa9/\x1e\xdb\xe9\xf6^_\xd0\xd9\xea\xb6\xa6\xa9\\\xba\xaa\xb16MI\x94\xcb\x11KV4%<\xc9\xb6)#4\x8a\xf2\xb2\xa1\xc8\x9d\x9do&Es\xe8\xc1\xee{\xb3\xb8Z\x9cN\x16\xbf\x87BOIm\xdai\x9e\x88\xe1\xc9\xfa\xb8\x8e\x8b\xcdy\x1e%\xea\xad[9\x1f\xc6\xbb\xc36\xb9f\x19\xb9b\xbdx\xed\x01\x04\xd6<\x87\x1a\xc1&6\xfa*\x7fUW\x9cw\x1f]e\xef._\xf7\xfb\x8e^\xaf\x80\xc7\x82\xc7\x82\xc7\x1a\x03\x8f\x05\x8fm\x0c\x08\xfc\xda\x03\x05M UQ\x94\xde8\xaaU\xae\xaf\xd8\x9d-\xc7W\xec\xae\x034\xe5\xdf\xd5[v;o\xcbe+\x1cw\x8b\x82F\x9d8Ec\x88\xbb\xe5\xba\xf8 \xcf\xd7Q\xa8z\x11\xca~\x89\xd9\xba\xdc\xaeD}\xc2\xab\xbb\x9f\xd4\x9e\xda_:_\x91\x1e9\xed/\x94\xef~\xa9\x82A\x9b\x13;@\xbc\xb9\xa99\xfa`\x99xL\x05\x9d\x84,\xc3>\x83\xab\xbe\x93\xdc\xc7\xcf-\x0f\x8d\xfar\xb5\xe8\xf9S\xcc\xb5\xea\xd9758\xd8P\xdcz\xa2U\xd2u2\xa0\xd2\xbd\xa3\xa0\xd2a^M\x02*\x0d*m=\x13TZ\x19\xa8\xf4\xd0@\xa5A\xa5m\x06*\x0d*\xad\x0cT\x1aT\x1aT\x1aTZ\x1b\xa8\xf4\x1c\xb0\x0b*\x0d*\xdd\x18\xa8\xf4\xd0@\xa5A\xa5A\xa5A\xa5A\xa5A\xa5A\xa5?u*\xadA\xa9\xfe\xba\xda\x99\xfa\xa3\xfd\xba\xdby\xa7\xd6G\x95\x9b\xb2z.\x7f\xa3\xd7T\x9fa\x8e\xf6\x19\xf4\x91_\xf3\x1c\xcfe\xb2gy)l\xd9\xec\xbd\xfa\x9b\xb3[\x1f \x15\xadO\xdf\xd6G7\xe4k\xc2Y\xa4\xbe=\xd6wn\xcb\xd7\xa5\xf7\xea\x06\xcf\x94WReGf\xb3sVD\xd3\x94\xdfG\xf9\x0b\xc6nY\x14X|}r\x87\xd37!\xa1\x15\x1f7\xb3I\xfdpe\x9f\x96\x83\xb1\xc8\xc9\xb6\x1b\x9d\x7fM\xa3\xab\x85\x0b\xe8\xfd2p\xa7\xe4q\xc2\xd5\xa7\x1c\xb9\xa0\x9d\x8f't*\xa0s\x92 \xf4\xae\xbf\xf8\x18]\x91\x88\x1eDY\xb0cK\xd1\x0fp\xee\xc9m\x7f\xf3\xb4%\xbfF3\xd1\xe4X\xffp\xafyf\xebrk\xcd\xa9wio\xfd\xf5\x07.\xef\xb7\xe8\xc3OX\x06\x16\x7f\xde\xb7/\x1d_\xb5\x1d\xff*\xde\xfd\xd6F\xfb\xab\x96\x81\xf50\xebC\x98\xd6!P\x7f\xfa\xf2~\x0b\xdd\xfe\xc4e`\xa1g}\x15\xd3Vh\xf3\x1d\xcc\xfb-\xf4\xc8\x87.\x03\xcb>\xf9\x13\x99\xfd\x1a\xe9\xa4\xe6\xfa\"\xe4\xfd\xd6\xc8\xf0\xb3\x97\x81\x152\xef{\x99\x0f\xbe>\xc6\xbe\x80\x19X#\xb3>\x9eY\x7f\"\xb3\x93T\xffs\x99\xf7[\x07\x9d\xafp\xda\n?\xe3\xd3\x99\xcd\x072\xef\xb7<\xad\xefn\xdaJ3\xf9c\x99\xd5'1\xef\xb7$\xad/m\xdaJ2\xf9\xf3\x98\xd5G0\xef\xa3$,S\x8e\xd2=\xdb\xe7\x9d\xb4;%\xe8\x9c\xd48S\xcd\xdf\xf7\xe9K59)\x98(\x8bl\x15SA=yn\x9d\xd9d\\Q0\xe3O\xcd7D\x9f\xa3vN\xddK!4\x17X\xfd\x8d\xe7\x99\xf9\xc9V\x88\xe1\x99D\xff\xaf,X\x871\xe8\xcf\x94R\x0d\xf5\xf4s?\xb6(!\xadG\xedE\\\xd5\xbd\xc1V\x8c>>b\xfbC\xae\xf5\xa1\xfa\xbb\x9fy\x9clj!\xbb\xc8\xc9\xf7L\xecH\x92\x91\xbc\x88Y!\x7f\xe0\xc9\xbeL\xe5\xa9}\xa7\x1a\xdblX$\x948\x92\x89\xdd*\xa2i\xbap\xb9-\n\xde\xd1\xeaP\x13\x8c\xbf:\xf4\xbc\xdb\xc03\xfdw\xb5/D\xe1TNX\x16\xe5\x8a\xfer\"\x1f\xff\xfd\x96J\x17DC-g)V\x0d\xf8\xaa[cl\x9c'\xa7\xca\xf18\xd4\xd2\xd9q\xb9\xe9\x9a3\xc8\x93\x1d\xbb\xfd\xfc\x1e2\xdd\xcd\x9ck\x92h\xce\xb8\x87l5u\x19S\xc1\x9eu\xf2Ue\xf9P\xe4\x87\x9c\xb3b\xe5\xd9c\xdd?\xaf\xda{Z\xfdiJ#s\xc8\xb88y\x81F\x9bs\xb4\xa3I\xb6Jb[\x19\xfa\xde$sz\xbdo\\y6\xf5\xcf$\x89\xc9\x81\x16j+E\x91\xef\xc7\xca\xd6IK;yOV\xdcv_\x98\xba\x93[\x0e\x96\xf6\x8d\xdcj\xaf\xefk\x9a\xa6\xae\xcd\xdb\xf2\xb8\x7f;\xb6<\xebQUP\xec\xc6\x9e\xbe\x1b[V\xe0\xf8f\xec\xf6\x91:\x0dl\xc5\xee\x1d\xc5Vl\xf7\x80\xd76l\xc5\xc6V\xecq\xc3Vle\xd8\x8a=4l\xc5\xc6Vl\x9ba+6\xb6b+\xc3Vl{\x9b\xc6Vlm\xd8\x8a\x8d\xad\xd8\xdeM\xb8\xd8\x8a\xed\xa89\xdb\x11l\xc5\xee\x1b\xb6bc+vc\xd8\x8a\xdd2l\xc5\xc6Vll\xc5\xb6\x99\xf1Eb+v\xef\x02l\xc5\xc6V\xec\x07\xb6\x15\x9b\x16[{t\xf0b\xcb\x9b\xf1Q\x89\xe1\xff&\xbb\xbev\x13T\xb3\x97\xfa\xc9\x10\xce\x93a\xdcQj\xbd\xa5|\x15\xd1\x83-\xfb\xe6pg\xdbe5oo)'\xf2\x98\xf6\xd2\x95\xfc\xf8-\x95\xd6\xac[\xf6\x18\xcf\x96\x0f\x8c\xeb\x05d\xef\xd8\xb1[s\xd7\x93\x15\xc6/\xf1\xd1z+[i\x8c\x1a\x0b\xdb\xf9Uv\x12l\xe7_\xa0\x80\xde\xae\xd6)9\xb6\xf3\x1b;]\x9e\xb1\x9d\x1f\xdb\xf9\xb1\x9d\xdf\xd8G\xd8\x91\x8d\xed\xfc\xd8\xce\xaflN\xe3\xc1v~l\xe7Wv\xfa\x0cc;?\xb6\xf3c;?\xb6\xf3O*>\xb6\xf3k\xc3v~l\xe7\xc7v~l\xe7'-\xc3v~\xdf\xc6ql\xe7?\xb2$\xd8\xce\x7f\xaf\xbeTl\xe7\xd7\xff\xc3v~m\xd8\xceol\xd9R\xe9\x82L\xdb\xce_\xd4\x00V\x144\xe3TI\xa3O\x96\xed\x05\xf6\xf4\xdfS\x9e\xbby\x0b\xdf\xd2\x7f\x1fy\x0b\xd9\xd7\x7f\xe4^x\xf1\xaf\xbb\x1f^\xdczv\xc3\x7f\xb8u\xed\x85\xff\xd0\xe6\xd0\x8e1\xaa1\x8bd8\x89\xc5lJ1\x93L\xb4 D'\xbd\xe1K\xfb\x0c\x021\x8b:\xf4\xe8B\xbfzz\xa4a\x0e]\xe8Q\x84\xfe\x1d\xba7\x98K\x11jZ\xd0M~\xb0$\x99C\x0blT\xe0(\x12\x10\xe4\xfd\x0f\xf5\xf2\xcf\xf6\xec\xcf\xf5\xe6\x8f{\xed\x17\xf2\xd4/\xe9\x9d_\xc8#\xef\xf3\xc2\xcf\xf3\xbc;<\xec\xd3\xbd\xeaN\xefy\x80\xc7|\xae\x97\xdc\xe2\x0d\x9f\xe9\x01_@/4\x98\x0fU\xefh]\xe5\x9a\x0cg:\xbb\x1b\xa7\xf6\xb0\xda\x97-\x9dG\x0c(\x0b\xcd\x93\xbf[\x8b+\x8f\xd5_>1\xaa\xc5:\xf0\x82<\xd6|\x9f\xa6\xd2;\x91'\xdf\xbe\xb9|\xf7\xe6\xf5\xcb\x0fo\xbe=Z\xe6<\x90)\xd6\x9a\xb6\xbc\\\xa7\xe3\xe5\x89\xe5\xe4\x1dQ\xc1b\xa7Z\xb0\xd2 \xf6\xb3\x7f\xca\xe02\x96ln\x8a\xce\x1a}\xe1\x1b\xf5Rw5g\xa5\xda3\x8f[)\xaf\x8c\xf8Vm\xeb&<\xd9f\xac\xa8>\xe6c\xd6cU\xa8\x1e3\xa7tYC\xb4c\xd1U\x7f}G\xb7\xf2MV\xe8\xde`\xae\x8eY\x91\\\xb7e\x83\xf2^T\x89\xb8\x9f\xfc\xf5)y\xf7\x94\xbc\xff\xdc\x08\xa1\x87k\x00\x16\x1d\xbe\xfc\xfa\x9b\xab/\x08KSY\xb0H\x8e\x9f\xd7\x1f\xa1'\x15\xf4\xc6V\xd1\x05\xbd\xa9\x95n\xf4\xa6\xa9\\\xd5\xb1\xaa\n\xbe\x0f1\xa8_\xe9\xace\xe7\xb6\x82\x18Q:\xa2\x1a\xa9\xec$\x88j\xb4@\x01\x11\xd5\x08Q\x8d\x8e\xcf5\xa2\x1a!\xaa\x91:\x86\xa8F\x88j\x84\xa8F\x88j\x84\xa8F\xa7\xce0\xa2\x1a!\xaa\x11\xa2\x1a!\xaa\xd1\xa4\xe2#\xaa\x916D5BT#D5BT#\xd22D5\xf2\xc5\xcfAT\xa3#K\x82\xa8F\xf7\xeaKET#\xfd?D5\xd2\x86\xa8F\xc6\x96-\x95.\x08\xa2\x1a-\x91\xe7n\xde~\x7fQ\x8df\x7fn\xc8\x00\xfa\xeaw2\xfe\xf9\xa1\x93\x95h\xb4a\x1f\x19\xa2\xe9w\x12\x9e\xa9\xd5\xe8(g\xab\x0d\xb36\xb9\xfeK\xb49\xbdV\xadP\xce\x88\xfc\xbb\xad;\xb4\xf7\xfcNZ\xa7j\xb5\xe1\xb1\xa7\x94\x88\x8c\x8a\xbcX\xd1(\xca\xcbL\x9c\xff\x16\xe5\x19\xaf\x1a\xe8?\xed1\xa9Z\xd5\xf2\xd7*\x91\x97:\x0d\x95\xf9\x84\xa9M\xcfo*\xa9\x89I\xff1\xd7M\xc1\xe8\xd7\xe4Uu:\xf2\xce,\xe3e\x8b\x91\xbc4\xd2\x1f\xf3C'\x94U\xff\xb6\xe6\x9c\x07\x1b\xd3\xca\xd4@U\xb7\x93\" \xb9\xdb\xa4\xb6^\xfaU\x03\x8dr\xbe\xcf\x1b\xd9T\xa5\n4\x8f*\xc9\xc8\x9aE\xbbA\x98&R\xf7\x9b\xb3\xde\x11.\x9br\x16M\x8b\xe0d\x15\\T\xd6}M3\xb7\xa8\x8a\xd0\xb4\x9d\xfa\x88\xeeZ\xfd\xbcUU\xa0\x8f.\x9bC\x13\x06\xac{\x8b^\x0e\x87\xf2\xc1^\xc9\xfe\xd1\x7fp\xaak\xf6[r\x1d^\xac\x1f\xaaL\xe6_\x81\xb1\xa1\xb6Y%t>\xe8\x8a\xef._\x9b={M]!&Y\xef(b\x92\x85\x8c/\xda\xe6\xee\xc6\xb1&(\x10\x93\xcc\x98\x98\xbb\xdb\xa7m3w\xfeX\xd3CL2\xc4$CL\xb2\xe9;\x97\xda6w\x17\x93c|\x1aY\x01\xb4m\xa1\x9dNm[r\xd7S\xdb\x16\xda\x01\xd56\xdfn\xa8\xb6\xcd\xdb\x19\xe5\x1c\xc3\x11\x93l\xc4\x10\x93,`\x9b\x96}\xc0FL2e\x88I\x86\x98d\xdehT\x88I\xe6\xa89\xdb\x11\xc4$\xeb\x1bb\x92!&Yc\x88I\xd62\xc4$CL2\xc4$\xb3\x99\xf1E\"&Y\xef\x02\xc4$CL\xb2\x07\x16\x93\xac\x0d\xbb[ ue\x96\xads*\"W\xc3ku\xb4\x86\xab\"\xd7\xe0\x9e\xb4\x99\xe0&\x1fH\x1az\xb8\xa0\x81\xfb\xa2(\xe7\xb2\xfd\xcd\xed9+\xa2/\x9f\x9f_\x7fq\xae\x8a\xcc\xed\xf0\xfeR\x1d'\x05\x13E\xc2\xae\xcd\x0c\xa0\xae&\xfb<.S\xa6+\xad\xaa\x92\x0ev\x7f\xf3\xee\xf5\x97\xcf/\xdb\x87\x1f,qoWC\xdb\x9c\xb4\xcd\xcd\xda\x8cfR\xd5\x95\x9d\xc5\x0dU\x8e\xf5QM\x91\xcd\x03h\xef\x07\xb7W\xbf\xb6\x00\x8e\xacS\x0d\xa2\xc7\x86\x17\x9b|\xbc\xbb|\xddK\x0f\xcc\x18\xcc\xd8\xe30=\x81\xbb5hp\x13\xf9\x15\xcbV\x07\x9a\x14\x8e\x11\xee\xf1\xb7u\xb4\xa3\x17\xe4\x83\xbc\xe2R^@\xde\xd5C^\xc1\xb6 \x17\xacP\x10\xe6\x8aeD\xa5Xmg\xed~4\xaf\xbe\xde\x1c}\xb0#\x9e\xaa\xa4\x95*\xcf\x03if:GV\xcd\x93\xb6\x80\xd6R\xc9o\x1a\x19\x93\x9a\x88\xd4KAA#\xa1\x1f\xe2\xe8\xc51\xcb\xf2\xfd\xf1\xb76B*%\xf8SI&\x19\xadVckF\xf6\xf4pPmi\xbc\x1a\xd4\xbc\x11\xbbsa\x9b4\xcc9:\x1b|\x97\xdfp\xd3d\xe5=\xe5\x9b\x83N]i\xc5\xcbqGwUM\xab\xfc&\x1bSFi3\xb7p\x80\x0d]\xe9*\x91\xfaY\xbc\xf9\xe9\xe7\x1f\xc9\x93\xe7$\xc9\xd4\xb2\xe8)\xf9\xa2\x9a\xc6\xcc\x12\xe8)\x19\x93\x97ic\xb7\x82\x15\xf2\x8d\xcf\xa4f\xf3\xf2\x04<'\x96\x95\xd6\xc7,G\x93\xb7\xff\xf1\xd3\x9bw\xab\x9f\x7fz\x7f\xf9\xe6\xf5\xc5w\x17o\xbe\xf5\x9e\xfb\xe3\xdbo\x7f\xfe\xe1\x8d\xf7\xb47\xff\xfb\xc3\x9bw?\xbd\xfc\xc1rb5w\x06g\xc0=\xd57\xa6\x1e\xc6[\xf5,d\xd9\x15\x85\xd0s\xbez@|\x97\x1c\xd4+\x7f\xaf\xab8|\x9ec\xb54\x92\xefz\xe1B\xb3\xea\xa9\x9f\x97\x99\xfe1\xd67w\xb8\xa7\xba\xb5\xfb\xa2\xf3\x97Y\x06%\\\xa5\xa2\xb1\xb1YM\xdb\x11\xcb\xed\x8c\xdd\x8a\xd5\x15\xbbs-\xb5\x1dc\x82\x97\xe8\x86\xf5\xb4*\x17\xd5\x8aZ\xfe\xd3\x08\x1c(7\x01\xa9.\xe9\x96\xbd\xd3*\xef3}\xdc\x92X\xf3\x82(\x93\x95\x15\xc9\xc8>\xe7\x820%\x1bPZ\x833r!Z\xde\x85\x83\xb8#\x89MA\xa7\x04\xd6JS\x92\xe5d\x9f\x17\xac\xd2\x90\x8c5b\x91\x0bjY\xf1\x05W\xa6E\x1fK\x02\xe6\x0fu{U\x8b\xea\x1fm}\xbc\x96\xbd\xb44\x16\xb6\xf2\xb6+ZKqUb\xb61\xed\x86r\xc2\x99xJ\x12\xd1\xc4\x8c$\xad\xc1J\xd6\xdfM\xc2\xbb\xed\xc3\xdd\xd9\xf5\xa7\x80\xebEa\xd0\x0b\xd7X\x12\xe7\xed\x85\xe9\xe5\xeb~\x11\xf0\x0e\x86w\xb0\xfb\x7f\x07s\xb9\xcb\x9aQ_\x8eq\xb6v\xd8\x1bG\xcd\xc0IM\xef\xd3[I\xf5\xc7\xb6u_6-\xb4\x1ee\xd5\xd0\xba\xed\x89\xac\xd4\xb0i\xc2\xb1:G\xce\xb7Yz\xa7$\x93\xf9\x86\xe4\x9b\x0dg\x82\xe4\x05\xe9f\x97\xb4\xb4\xaf\x9c-\x1dt\xd7\xb3\xc1\xaaU\x89:\x7f\xb6z\xec\x8d;\xa60\xaa*\xd5j/\x89\xaa\xdf\xd4\xc2\xa2\x1d!\xf1f\xc7\xb2\xaa\xe2\xcb\xac\x1eU{+\xbf\x0b\x95Z*\xd7\xf0u\x15j\xad\x97\xde,{\xc5&\xd6g7\xf9\x13W\xae%tg\xabz\xa7\x07h4#\xb8mz\xd2\x93~\xbb\x05\x9b\xf1\xbeL{\xa3\xa6\xd60\xb5\x7f\xba\xd8\x90\x94mD5\x9d\x9b\xf9\xbd\x8e\x08\x9b\xd7\x1dD\xdfD\xd6\xf3\xfa\x8e0\x1a\xed\x08=\x1c>b-\xb6'\xd9\xe6z\xe7\x9e\xc0\xe6\nY\xa3\xaa\x85\xe6\xca\xb7-\x97\x00$\xc9\xe2$\xd2[\x95\xb54\xdb\xd4\xa0:\xd14\xa4vrI\x16\xa5e\xdc\xe3\xa4T\xdf\xa5\xd6\xc6\xf7\x9e\x98\x1a\xb1[\xcb 9\x0bw\xd6\xac\x9d\xc4~\xbe\xe0\xbd\xa7\xd5+\x82B\xcbr.\xd5s\xab\xea^M\x7f\x94]\xee\xcc\xf4\xa6d\x9b\xe5EO\xf0Z\xf5\xc6\xee-t\xcd\x1c\xfb`m\xdb\xe9[\x0f\xb0`\xd7\xac\xe0\xa1\x1b\x1c\xcd\xd9\xfd\x07\x97\xb4\x16i\x05\x1b\xef \x9dt\xe4=X\xa6\xb6\x02\xa8M\xea\x83x\xfeI\x16\xd5^\x95g<\xbe\"\xcf\xcf\xfe\xf0\xd5\xa2\xb51\xd5\x9dx\xfe\x9b\xfa\xc3\xb1\xebq\xdc\xad\xd8\xf2*\xd2q\xbf\xa2\xdb\xad\xf8\xa8*\xdc\xc3\xf7*\xda\xd6M\xb3\xde\xee\x02|\x83\xde5\xccl\xbf\xa0\xc3+\x18z\xd3#<\x82N\x7f\xa0\xdf\x1bx\x84/0\xc4\x13\xe8{\x8f[\xd8\x0b\x18\xe6\x03\xf4>\x15\x97\xff/\xdc\xfb\x17\xe4\xfb\x0b\xf2\xfcM\xf4\xfb\x85\xf9\"\x16\xf7\xf9\x9d\xde\xe3wj\x7f\xdf\xf2\xde>\xbf\xafo\x86\xa7\xaf\xe5\xd5\x1bI\xd0\xe6\xe7;\xc2\xcb7\xc5\x89\xb1\x80\x0f\x03.\x0c\xb80\xc6\x8f?$\x17F\x7f9\xe0\xea$\xbao\xd5\xfb\x99\x8b\xea\x15\x9b%up\xf3\x1d\xbbm\x96\x1a\xbd\x18\x0b\xaa\x83v\x124\xdd\xa8\xf3\xdbk\xcb\"\xa2u\xd2 %C\xfbd+g\x10\xb9\x10V\xdf\xce97\x83\xed` \xdcY\xb9\xfe\xa8\xafz-\xafx0\xd170\xb6\xf4\x8ebl\xb9\xe7\xb1\xc5\xf5\xe1+\xd3\xd1L\xf4\x9b\xe1t=\xe7m\xb7\x97\xf7f\x88\xf3eB\xe4'\xc9B\xe0@\xa3\xd7E\xe7\xbf\xf9\x83\x0c}+\xc7\xc3\x0f\x05\x8dX\x13S\xa8\xf7\xa6\xa5\x0e&\x99~R\xad@Jc\xe3\xd5;u\xe3GU\xc9>\xdaHE\x9cm\x7f\x93\x97\xd9\xc8\x8b\xa1\xfb\xa5\xb0\x93\xd3\x1d\xe5\xcd\xa3.J\xf6\xec\xcf\xd5\x9f\xf1S\xfd\x1c\x9f\xfdY\xed3\xae~\xed\xaf\x80\xcd\xef+\xfd\xa4\x86y\x19kT\xbar;\x90X\xfeW\xe5C'\xb5(\x1c\x96]\xc9>p8\xba\xb6\xc8g]\xb6c\xc9v'f]j\x0bB\x869\xab\xdf\xf20g\xdd\xef\x9c5\x14\xbf\x9fp\xb5\x19\x159\xe7*4\xa0\x9c\x07\xd6TD\xbbs\x15\x18\xb4\xd8\x0f&\x81\xce\x00\xfeJ\x9e\xfaZ\x9f\xf9\xa8\xca\xd3\x03\x1d\xbf;\x05j\xdb\x11C]\x96\x8fF\\#!M\xc2\xab\xdb\xd0\x1e\xf0\xea-f\xd6]\xd6E\x12o\x9b\xc0\x96\xb3\xd2\xa8\xdc2G%R\x7f\xc6s\xd6\xd5:\x98\xa5\xea\x18\xe1\x97c\x0c\xef\x1d\xc5\x18\xee\xf3\xbd5\x86pj\x08\xa76n\x08\xa7\xa6\x0c\xe1\xd4\x86\x86pj\x08\xa7f3\x84SC85e\x08\xa7\x86pj\x08\xa7\x86pj\xda\x10NmND2\x84SC8\xb5\xc6\x10Nmh\x08\xa7\x86pj\x08\xa7\x86pj\x08\xa7\x86pj\x08\xa7\xf6\xc9\x87S\xab\xf9Y+\x99\xa3eE=\xf1fM*Os\x8f\x1e\xca<\xcdM\x14\xcf]6i\x0b\xe8\x9d\x89\xe3y8\x8f\x7f\xf0A\x91\xbaEj\x9b\xf8\x08p\xd1\x81\xf2'\xb9\xd5\\a\x18\x02\x80~\xc0\xbd\x82\xa0~@:a`? !\x0f\xdc\x0fH\xc1\x07\xf8\x81\xf8\x1b\x03\xe2\x07\xe2o\x0c\x88\x1f\x88\xbf1 ~\x01\xc4?n@\xfc\x95\x01\xf1\x03\xf1\x03\xf1\x07\xae\x92\x80\xf8k\x03\xe2o\x1b\x10?\x10\xff\x88\x01\xf1\x03\xf1\xfb*\x1f\x88\xdfz\x0d\x10\x7f\xc7\x80\xf8\x81\xf8\x81\xf8\x81\xf8;\x16\x8a[\x81\xf8\x95\x01\xf1\x03\xf1\xb7~\x9b\x88\xaf\xef\x13\xf1?\\\xfa.;\xbc\x9b\xbc\xff@\xb9\xb8\xd4qU\x15\x847\xa1\xf0_\xdd\xbd\x8c\xe3\x07\x1fHT\x15\xd2\x06\x00gm\x8cW)\xaeN\xba=^\xdfB${\x96\x97\xf3v\xc7\x07\xdcD\x144\xe3T{K\\\xf7\x18\xa7\xa4\xc4EJ\x89\xaf\x86\xb5\xf9\x88\xa9\xb4\xc4\xfa\x01#\x12R\x0b\xda\xbcu\xa1\x8d\xb3,\xb6\x7f\xa9\x88\x84\xde/f\\\xf8\x84\x07$41K\x08\xdc\xd6 \xfez&\x81uMZ\xb1Z\xddg\x05f^\x1a\xdd7\xc1\xdd\xec\x16\x98\\\x88\x03\xb5\xb2V\xbcL\x8d\xbd\xdba\xf5\xe4\xa4J3\xf2F}\xca\xa4\xdc\x8f\x04\xce\xeb\x9bz\x10\xf6\xf7\xb9\x0d\xb3z\xb5 \x9e\x92\xdd\xee\xf3)\xf9b\x0c\x13\xf2\xb6\x14\xdb<\xc9\xb6\x1f\xe4\xd8\xb8a\xc5\x87\xdbf9i\xc2\xad\xc6\xc9u\x12\x974U\xa3E?\xfeZ\xd7\xb6\x05\xbdN\x84\x82wo>\xfce\xe4\xb4\x10\xd5\x94\xa7\xce\xd7i\x1e]\xcd\xba2`X\xdc0\x15\x90\x8b%\xd7s\xa6:Wu\xd7\x15}\xab\x96\x14\x9dZ\xd6\xd3\x9fz\x81mMQD\x9do\xabpKUCE\xd5;\n\x15U\xf8\xf0\x04\x15\x15TT\xe3\x06\x15\x952\xa8\xa8\x86\x06\x15\x15TT6\x83\x8a\n**ePQAE\x05\x15\x15TT\xda\xa0\xa2\x9a#D\x82\x8a\n*\xaa\xc6\xa0\xa2\x1a\x1aTTPQAE\x05\x15\x15TTPQAE\x05\x15\xd5iUT'\x0cb2U\xd2\x94\x1b\xb8\xb8\x12\xb7\xfa2\x9b\xb2\xa9G!\x1fUy\x83\x96\xa92\xaf/\xc9\xcb\x90\xa1e\xaa\x0dZ&h\x99\x1a\x0bqcVv\x9f*\x19h\x99\xda\xf6P\x9f\x12\xb4L]\xf3\x0e\x8b\xd02\x19[h1\x02-\x93w$\xf4\x8d\x80\x02Z&h\x99\xb4A\xcb\xa4\x0cZ&h\x99\x06\x06-\x13\xb4L}\x83\x96i\xd4\xa0e\x1a\xb5\xd0U\x12\xb4L\xb5A\xcb\xd46h\x99\xa0e\x1a1h\x99\xa0e\xf2U>\xb4L\xd6k\xa0e\xea\x18\xb4L\xd02A\xcb\x04-S\xc7Bu%\xd02)\x83\x96 Z\xa6\xd6o\x93dF\x88\x085\x90O\x99\xeb\x02\xf5S\xec\xc1\x7f\x97i\xad\xb3\xf90\xf0\x9fW|5\xc9\xfd\xe5\xd0\x03\x05H\xb0\x96\xba\x95_\x88\xe5\xaekmN1\x96\xb7\xde\xb5\xf9j_\x9b[\x92\x15T+\xda\x02\xeaF\x9b_\x98\x15|\xd7PqVp\x82^\x81V`\xdd\x93\xe0\xfa'\x13\x04@\xc1\xc5 \xc1\"\xa0 I\x86xj\x1b[X\n\xe4\x95lyE[xr\x0f\xf4\xc9\xf9\x85\\KK\xb9\x02\xc4\\ar\xae\x80g\xe0\x90t\x05\\\x1d4\xacz\x85]\xde\x1b\xb9\x1f\xc1\\y\xd7xf\x8b|\x0f\x81W\xcb \xf0\x82\xc0\xab1\x08\xbc \xf0j\x0c\x02/\x01\x81\xd7\xb8A\xe0U\x19\x04^\x10xA\xe0\x15\xb8J\x82\xc0\xab6\x08\xbc\xda\x06\x81\x17\x04^#\x06\x81\x17\x04^\xbe\xca\x87\xc0\xcbz\x0d\x04^\x1d\x83\xc0\x0b\x02/\x08\xbc \xf0\xeaX\xa8\xd8\x06\x02/e\x10xA\xe0\xd5\xfam\x92Bj\x82\x10J\x05\xb3ZE4MW\xeb\xbb\xb6F\xc7&\x85z\xa5\xaexM\xd3\xf4\xd5\xddO-i\xd7\xc3\x95B5E\xb4\xc1\xb2Y!\xa5\\\xfa\x16\x8f\xb3\xa7`\x9b2\xb3\x08r<\x97*\\\xed\xa0p\x1f;\xf4\x93\x0f\xa4\x13\x7f\x11\xb5\xf9\xd5\x11\x01\xc9\x848\xa5\xc8\xb2Z\x08\xab\nB\xe4\xb3\x1exL\x05\x9du\xe1\x9e\xed\xe7\xdd\xf1\xa4Q\xd2N\x1c\x1fM\xc90V;\x96lw'\xbb\xc7\x96\xf2U\x9a\xec\x93\x93\xdd\x80]\xb3L\x9c\"X\x1d\x84\x17\xbd\xa3\x10^\x84\x8f\x91\x10^@x1n\x10^(\x83\xf0bh\x10^@xa3\x08/ \xbcP\x06\xe1\x05\x84\x17\x10^@x\xa1\x0d\xc2\x8b9\xda\x05\x08/ \xbch\x0c\xc2\x8b\xa1Ax\x01\xe1\x05\x84\x17\x10^@x\x01\xe1\x05\x84\x17\x10^\x9cBx\xf1\xc0\xa3\xdet\xc5\x1em\x01C\x88\xda\xe3\xbd:\xffQ\x95\xf7\x87/\xf7x \x8c\xce\x1d\x08\xc5\xeb\x9er\x89E\x02.w F\xfc\x92\x91\xfb\x0cQ\x13\"\x1d (\xb06\xbf|$0\xa9\x10\xf7\x9a\xb6\x05E$\xce`\x1a6!I@\x81\xecb\x92\x80\x8b\xed\x82\x92\x80\x8b\xef!\xfa\xd3\xbd\xc4}\xf2\x0bL\x96\xba\x93Gf\xb2\xd4m\xbcb\x93cn\x04\xc1I\xef(\x04'\xe1#*\x04'\x10\x9c\x8c\x1b\x04'\xca 8\x19\x1a\x04'\x10\x9c\xd8\x0c\x82\x13\x08N\x94Ap\x02\xc1 \x04'\x10\x9ch\x83\xe0d\x8ef\x03\x82\x13\x08N\x1a\x83\xe0dh\x10\x9c@p\x02\xc1 \x04'\x10\x9c@p\x02\xc1 \x04'\xa7\x15\x9ch\x95A\xf5\x95\x94%\xef1O`\x12\xe5\xd9&)\xf6\x93\xa3\x8a\xbc\xd6\xd7\xfdN\x82\x8b\x98R>\x108\xd7\xb4\xb1\xd9\xbe)\xfd\x08\x0b\xdf\xd7v\xbc\xe9\xb0[\xc1\x8a\x8c\xa6G't\"2\xdd6\x9el3*\xcab\xcemX\x96\x97\xdb\xdd\xea\x90\xdf\x8cI|\xf4\x85\xeb\x00\xdf\x1d\x18X\xc0mN\xfa\xdd\x01m\x07\xbaM25\x97\xd8\x06\xe4Y\xca\xa3\x8c\xdd\x8a\xd5\x15;V\x13cu\xf2wz\xfe?l=\xbf\xca\x85\\t\xca\x95\x9a\xfc\xa7a^\x94s\x0d\xf6.\xe9\x96\xbdc\xbf\x96\x8c\x8b3}\xdc\x92\x98Z\x11\xa8dd\xb2\xb2\xe2\x18\xd9\xe7\\\x10\xa6H\x92\xc2Og\xe4B\xb4\x16\x9c\x07qG\x12\x9b\xa8B\x8d6\n3f9\xd9\xe7\x05\xab\xb0\xe2\xd8\xc8\"rA-\xc2\x91\xe0\xcatvO\x912\xc7\x10\xaan\xafjQ\xfd#+\xf7k\x0dE*\x12\xda\xc2n\xb6\xf2\xb6+:\x92\x13\xc0J%f[\xb3\xdePN8\x13OI\"x\x05x9)3\xc5\xbbY\xac\x99\xd7M\xc2\x87\xed\xc3?+\xe8\xac\xe8e\x8e.U\xe7\x05!\xc9\xc8\xf6\xdd\xe5\xebz%T\xad\xbe9\xb9\x91\xcfl\xec\xf1\x8c\xeb\x07\xa2\xbc\xd0i(\xadE\xa1\x0b_\xaf\xe5\xe5{\x8f\xc2i\xed\x9a\x19\xad\x8e\xea\x8a\xf7\xf9\xbe\xc9\xb7\xd3\xf3T\xb0\x03S\xb4\xe3\x15-\xea\x87\xe4y\xc1\xedV\x8bj\xdf\xb6W\xdc\xc6w\x06\x99Z\xef(dj!=P\x1bdj\x90\xa9\x8d\x1bdj\xca S\x1b\x1adj\x90\xa9\xd9\x0c25\xc8\xd4\x94A\xa6\x06\x99\x1adj\x90\xa9i\x83Lm\x8e\xd2\x0b25\xc8\xd4\x1a\x83Lmh\x90\xa9A\xa6\x06\x99\x1adj\x90\xa9A\xa6\x06\x99\x1adj\xa7\x95\xa95\xa8\xfe\xec\x8a\xb5\xd3s\xc1pC\xbf\xa9\x19\xa2\x0b&\xca\"\xd3\x8c\xb3\x8d\xfb\xcejT\xae\x9cm\xdb\x9eWJ\x95@\x0e+>\xfc\xfdVN\x9by\xa6\xde\xc6\xf3\xcd\x863!\xdf\x04\xba\xd9%-X\xc0\x998[\xb6\xb6,\xae\x97\x91J\xd4\xf9\xb3\xd5c\xcf\xeda\n\xa3\xaa2+\xf7\xacH\xa2\xea7\xd5\x9b#\x9a\xc9\xf2h\xbf\xd3\x8eeU\xc5\x97Y\xed\xea\xeb\xad\x8a/Tj)\xe3\xbc\xa9B\xed\x1c+\xb9\xac\xea+6\xb1>\xbb\xc9\x9f\xb8r{b\x82\x91\xeaU\xfa\x98\xc0\xdaU\xe7V*\x0d\x9b\xc6@\xbb\x81\xdb-X\xaf5\xe4\xd1Nj\x07\xed\xf4i\xfft\xb1!)\xdb\x88J\x93aD\x1a\xd5\xd2Sy\xb0u\x07\xd17\x91\xf5\xbc\xbe#\x8cF;B\x0f\x87\x8fX\x8bm\xa5Ds\xbd\xab.[W\xc8\x1aU-4'\xa2(\x19\x91\xffH\xb28\x89\xa8`5\xcb25\xa8N4\x0d\xa9\x9d\\\x92Ei\x19\xf7\x16\x96T\xdf\xa5\x86\x89\xbd'\xa6\xd0t\xcb\xc7-\xa7\x86\xa6L}\x97\xf7\xcf\x17\xbc\xf7\xb4zEPk\xf1\x82q#\"P\xdd\xab\xe9\x8f\xb2\xcb\x9d\x99\xde\x94l\xb3\xbc\xe8\x11\x82\xaa7vo\xa1k\xe6\xd8\x07\xdb\xffj\xcd\xc8\x03,\xd85+:\x97\xba\x1e\x9e9\xbb\xff\xe0\x92\x96\xd2\xa6`\xe3=\xa1\x93\x8e\xbc\x07\xd3\xb2\x93\xbc\x88Y\xd1_\xf7\xbfO\xb2HNY9\xdf\xe7\xfc\x19\x8f\xaf\xc8\xf3\xb3?|\xb5hm\xcc\xd3:\xaf\xd6w\xab\x0dc\xab\x82E,\xb9\xae\xa4\xb9\x01\xda\xe7Ww\xdf1\xf6\xce\\\xf5\xa8\xca0\x84\xd0\xc6|\xaa\x0f\x08\xa1}5\xa4\x0dB\xe8\x96A\x08\xdd\xb5 \xa5%\x84\xd0=\x0b\xb8\x0d\x84\xd0\x10B\x9b\x93!\x84\x86\x10\x1aBhc\x10B\x9fpI, \x84\x86\x10Z\x1b\x84\xd0\xca \x84\x86\x10z`\x10BC\x08\xdd7\x08\xa1G\x0dB\xe8Q\x0b]%A\x08]\x1b\x84\xd0m\x83\x10\x1aB\xe8\x11\x83\x10\x1aBh_\xe5C\x08m\xbd\x06B\xe8\x8eA\x08\x0d!4\x84\xd0\x10Bw,T\x94\n!\xb42\x08\xa1!\x84n\xfd\xe6\x13\x94Y\x84\xd0m}\xd8i\xee\x00\xa9uHmAj\xad\xed\xc4\x95\xeb\x17 Cj\xbdD-Bj\x0d\xa9\xf5\xa7\"\xb5V3t\x9ap\xa3W\xf1\xe8\xab\xe5\xd9?$\xbc\xea\xfa\x0fVV\xdd,<\x96\x95\x90\xf4\x06\x15H}zG!\xf5 CE\x04R\x1fH}\xacgB\xea\xa3\x0cR\x9f\xa1A\xea\x03\xa9\x8f\xcd \xf5\x81\xd4G\x19\xa4>\x90\xfa@\xea\x03\xa9\x8f6H}\xe6\xa8e \xf5\x81\xd4\xa71H}\x86\x06\xa9\x0f\xa4>\x90\xfa@\xea\x03\xa9\x0f\xa4>\x90\xfa|\nR\x9f\xe9t1O\xb2\xd5\xfan\x15\xb3,\xdf\x07\x01\xc6<\xc9^\xdd}+O7'=\\\xc4\x98'\xcb\x06\x08iUR\xdf<.\x17W\xf4 \xe7\xa5~W\x87| \xda}\xcd\xe4\x00\xa0\xe2\xfc\x18'\x85\xcep\xa5/\x90\x83\x04\xcdLV\xc6'\xda\x9f\xde~x\xf3B\xcd\xa8\xfa,35%\xca\x7fr\x91 \xd3ik\x9fU\xbb\xe7\x8e$\xa7\x17+c7\xe2\xc96\xa3\xa2,\x18\xaf\xf1\xb9\\\x98m\xf3m\xae\xbaH\xd3\x1a\x00p{G\x01pCz\x856\x00\\\x00\xdcq\x03\xc0U\x06\x80;4\x00\\\x00\\\x9b\x01\xe0\x02\xe0*\x03\xc0\x05\xc0\x05\xc0\x05\xc0\xd5\x06\x80;\x87\x81\x02\xe0\x02\xe06\x06\x80;4\x00\\\x00\\\x00\\\x00\\\x00\\\x00\\\x00\xdcO\x01\xe0~\xccX\x0dq\x0b\xea.\x92\xf4d\x1a\xdd\xfe\xb6\x8c\x1bC\xab\xcf\xa2T\xaf\xc9\x0f\x96@\x8f\x14\xabm\xe2c\xd07\x99\x97\xd9~'\x07\x01\x0f\xb8:\xda\xd1,c\xe9*YG\xb3\xd3\xa8\xbf\xfb\xf0\xf8[9\xbeET\xc8\xc6\xa8\x97I\xe5a[\xd0\x98\x91\xeb\xaf\x1e\xd7\xd7\x82\x1f\xf7\x8e\x82\x1f\x87\xf9\x1f \xf81\xf8\xb1\xf5L\xf0ce\xe0\xc7C\x03?\x06?\xb6\x19\xf81\xf8\xb12\xf0c\xf0c\xf0c\xf0cm\xe0\xc7s\x10,\xf81\xf8qc\xe0\xc7C\x03?\x06?\x06?\x06?\x06?\x06?\x06?\x06?>\x05?\x0e\x87\xbc\x01{\x8c\x15\xd6\xfd\x90\xff.\xb6\x17[X\xe8\xa8\xef\x05\x14\xb2w\x14\x142\xcc\x8bE@!A!\xadg\x82B*\x03\x85\x1c\x1a($(\xa4\xcd@!A!\x95\x81B\x82B\x82B\x82Bj\x03\x85\x9c\x03\xf2@!A!\x1b\x03\x85\x1c\x1a($($($($($($($(\xe4)(d\x93\xbe\xda\xe0\xb8d\xd2\xe1\x80S\x8d&\x07\xfd\x81\xd9U\x15`\x99\xa6\xe9j}\xb7\xa2q\\\xb8\xd9\xe7\x0f\x94\x8bK}\xb1 \xb5L\xd3\xf4\xd5\xdd\xcb8\xae\xfc\x01\x0f\x16\x85\xb6\xca\xfa@\xf0\x1cgY\xccF\x10\xa76\xafg\xaa`\x9b2\x8bg_n\xdb\xf0k\x8e:\xeaC\x9b\xb5V\xb4y\xeaF\x9b\xaf\x86\xb4\xc9 \xbe\xa0\x91%4ue\xde\x02ksE\xb9\xae,(\xa9\x10\xcf\x9a\xb67\xef^\x7f\xf9\\\xa9\x06\x0c\x0dmXh\xa1V\x8a4#o\xc4\x8e\x15\xac\xdc\xeb\x93\x1d\x89\xa9\xc76\xbe\xba\x11\xf9\xec\xc6\x10SAg_\xbcg\xfb\xf9w\xce\xf2,Z\xc2;\xdb\xfb\x1e{\xdbD\xb2gyi}\xe6\xcb\xdcd\x9d\xe6\xd1\xd5j\xc7\x92\xed\xee\xc4w\xdaR\xbeR_\xdd?\xedm\xd85\xcb\xc4\xeaD\x8f\x07Z\x93\xdeQhM\xc2GThM\xa05\x197hM\x94Ak24hM\xa05\xb1\x19\xb4&\xd0\x9a(\x83\xd6\x04Z\x13hM\xa05\xd1\x06\xad\xc9\x1c\xb9\x06\xb4&\xd0\x9a4\x06\xad\xc9\xd0\xa05\x81\xd6\x04Z\x13hM\xa05\x81\xd6\x04Z\x13hMN\xab5\xd1\xba\x87B\x89;\x18\xe7K\xde$\\u\x92\xaf\xb5\x13\xee|\x88I]R\x93\xb7\xe6\xb2W\xf2\xaa\xbf\xa8\x8b\x1eU\xf9|\xa02\x13v+X\x91\xd1t\xe5\x06\xc2N_\x90\x93\xce.\x9f.`l\xef(`l\x983\x8f\x00\xc6\x02\xc6Z\xcf\x04\x8cU\x06\x18;4\xc0X\xc0X\x9b\x01\xc6\x02\xc6*\x03\x8c\x05\x8c\x05\x8c\x05\x8c\xd5\x06\x18;\x87g\x02\xc6\x02\xc66\x06\x18;4\xc0X\xc0X\xc0X\xc0X\xc0X\xc0X\xc0X\xc0\xd8S\xc0\xd8 \x9c\xb4\xa0Q\xca\xce\xd5\xde\xcb\x89\xac\xf4\x8d\xbc\xa6\x05J\x7f'\xbb\xf2A3A3A3A3A3A3A3A3A3A3\x1b\x03\xcd\xac\x0d4\x134\x134\x93L\x06r\xa0\x99\x1d\x9bVy\xa0\x99\xa0\x99\xa0\x99\xa0\x99\xa0\x99m\x03\xcd\x04\xcd\x04\xcd\x04\xcd\xec\\\x00\x9a \x9a\xf9I\xd0\xcc\x87\xb6\xb5\xb4\x85L\xdb\xe1j\xbd\xac\xf4'y\xee\xef\x83\x92:c\xf1:}?\x80\xa4\x8d\x01\x92\x02\x926\x06H\nH\xda\x18 \xa9\x00$\x1d7@\xd2\xca\x00I\x01I\x01I\x03WI\x80\xa4\xb5\x01\x92\xb6\x0d\x90\x14\x90t\xc4\x00I\x01I}\x95\x0fHj\xbd\x06\x90\xb4c\x80\xa4\x80\xa4\x80\xa4\x80\xa4\x1d\x0b\x05V\x80\xa4\xca\x00I\x01I[\xbfM\xe2\x97\x0f\x12\x92\x86}\xe3\xf9{&\xde\xaa\xd3\x7f\x1flT\x17\xcd\x06\xe1,<\xcdM\xd3Lm\x99'f\xe7m\x0egR\xef\xa9\xcfJ\xa3\x0e%|L\"1K\xd9\x96\n\xb6r}\xf8\xd8\x93\x06\x17\xb4\x10\xceo\xdbz]k-\xf6j\xfdJ\xafHU\x1a\xb4\x10\xe6 \x90];\xe4s\xdb\xf2,M2\x8b\xa3O\xe7e\x9d\xe7)\xa3c^\xda\xbaF\x94_\x8e\x8a1\xf2L\xfce\xe2)\xe5\xbb\x95H\xf6.\";\xa3N\x80\xe6{G\x81\xe6\xc3\\\xbb\x04h\x1eh\xdez&\xd0\xbc2\xa0\xf9\xa1\x01\xcd\x03\xcd\xdb\x0ch\x1eh^\x19\xd0<\xd0<\xd0<\xd0\xbc6\xa0\xf99t\x1bh\x1eh\xbe1\xa0\xf9\xa1\x01\xcd\x03\xcd\x03\xcd\x03\xcd\x03\xcd\x03\xcd\x03\xcd\x03\xcd\x9f\x16\xcdw9\xef\x92\xf7\x98C\xe6\xdb\xc88\x98\xd0\xbf\xd2\x17\x01\xd4\xcf\xe5\xe3\x00\xf5]\x03\xa8\x1f\x1a@}m\x00\xf5\x00\xf5\x8d\x01\xd4\x03\xd47\x06P/\x00\xea\xc7\x0d\xa0\xbe2\x80z\x80z\x80\xfa\xc0U\x12@}m\x00\xf5m\x03\xa8\x07\xa8\x1f1\x80z\x80z_\xe5\x03\xd4[\xaf\x01\xa8\xef\x18@=@=@=@}\xc7B\xa1)@\xbd2\x80z\x80\xfa\xd6o\x93 \xfa\x83\xddC\xdf\xe1\xbd\xc1\xa8\xfe\x8d\xb9\n\xac~.\"\x07\xab\xef\x1aX\xfd\xd0\xc0\xeak\x03\xab\x07\xabo\x0c\xac\x1e\xac\xbe1\xb0z\x01V?n`\xf5\x95\x81\xd5\x83\xd5\x83\xd5\x07\xae\x92\xc0\xeak\x03\xabo\x1bX=X\xfd\x88\x81\xd5\x83\xd5\xfb*\x1f\xac\xdez\x0dX}\xc7\xc0\xea\xc1\xea\xc1\xea\xc1\xea;\x16\xcaM\xc1\xea\x95\x81\xd5\x83\xd5\xb7~\x9b\x84\xd1\x9b\xf4\xfb\x80u\xc9\xbbL\x86\xf5\x9c\x89\xf3(\xcf6I\xb1wsz\x0d\xe9\xdf3\xf1Z\x9f\xfd\xa8\xca\xdd\x03\x05\xf4\x9dB\xb5\xcd\x9a\x16\xf1B5\xcb\xf7\xc5I\x88+\xc9\xf2\x9d\xf1\xc6\x1e\x0c\xbb\xe7\xc96\xa3\xa2,\xe6\x95\xb4\xe9=\x13.\x07}\xee\x1d\x05}\x0e\xf3^\x12\xd0g\xd0g\xeb\x99\xa0\xcf\xca@\x9f\x87\x06\xfa\x0c\xfal3\xd0g\xd0ge\xa0\xcf\xa0\xcf\xa0\xcf\xa0\xcf\xda@\x9f\xe7\x00\\\xd0g\xd0\xe7\xc6@\x9f\x87\x06\xfa\x0c\xfa\x0c\xfa\x0c\xfa\x0c\xfa\x0c\xfa\x0c\xfa\x0c\xfa|Z\xfa|\xc2\x9d\xe2\xcdM\x14(]6i\x0bA=\x06x\xf3i\xc4\x9b\xbf\xba\xfb\xa9U\xae\x87N\xbe\x1f\x08\x08t0\xf3I.0+7\x0f$\xe7\x017\x0b\xa3\xe7\x01 y\x08z@\n>\x8a\x0e\x8e\xde\x188:8zc\xe0\xe8\xe0\xe8\x8d\x81\xa3\x0bp\xf4q\x03G\xaf\x0c\x1c\x1d\x1c\x1d\x1c=p\x95\x04\x8e^\x1b8z\xdb\xc0\xd1\xc1\xd1G\x0c\x1c\x1d\x1c\xddW\xf9\xe0\xe8\xd6k\xc0\xd1;\x06\x8e\x0e\x8e\x0e\x8e\x0e\x8e\xde\xb1P\xa6 \x8e\xae\x0c\x1c\x1d\x1c\xbd\xf5\xdbD\x0e\xfd{A\xdc\xda\xb9\xe5&\xdc\xaf\xf5I5\xe8~Te\xfb\x81\x92\xed\xa6|68\xf7\xf0\xb6u\xef\xe5\x10R8wb\x8f\x13E\xe2\xa2\x8a\xc4Wbm>\xba\xa8\xce\xc9o\x98%\x16\xb96o\x1dh\xf3\xd6\x84\xb6P\xc8N\xc2\xeel\xe2\xb7;\x1cv\xaf\x94:\xe0\xafU\xd4\xf5f\xa4\xe7\x95\x0fO\xfe\xfc\x98\xd79\xb3\xa6drl<\xba\\\xd7\xdc\xc8\xd9\x8b\x84\xac\xb7T\xa3\xab\xbcu?\x96\xf3\xa5\x9aLM\x89\xc8k9B\x98\x9a ?\x96\xa9\xe0\xc9\x96\xbcg\xe2)a4\x1a[\xc9m\x0bz\x9d\x88\xbb\xa6~\xc6f \x9a\xf2\x9c\xeci\xd28\x1d\xeb\x1b^1E\x1fx\xb2\xcd\xaai\x88\xcb\x99\x96qFh16\xbf)\x1f\xb1\xc8I\xb4c\xe3o\x03\xb5\xa8B\xbe\x0e4wZ\xb3\x88\xca7\x83\xca\xe1\x98l\xb3d\x93D4\x13dK9\xe1\xf4:\xc9\xb6\x8d\x8b\x10\n\x89\xdeQ($\xc2<\xec\x04\n ($\xacgB!\xa1\x0c\n\x89\xa1A!\x01\x85\x84\xcd\xa0\x90\x80BB\x19\x14\x12PH@!\x01\x85\x846($\xe6\x88\x0c\xa0\x90\x80B\xa21($\x86\x06\x85\x04\x14\x12PH@!\x01\x85\x04\x14\x12PH@!q\n\x85\xc4,\xb5\x82\xec\x1dn\xa9\xc2\x0f\x94\x8bK\x96\xc9&Vc\xcew\xec\xd7\x92q\xf1\xea\xee\xf7\xf3\xc1xY\xda\x07\xc2\xcd\xeeac\xbeS\xfb\xe0W?x\xf4\x0f\xde\x1a\xd0\xe6\xab\x07s\x96O\x05\x11T'\xda\x02jF\xdb\x14-D\xe0\xfd\xfdz\x88%\x15\x11\xe1\x9a\x08\xb7*\"\xa8p\xdeju\x97}AuD\xa0>ba\x85D\x80Fb\xa6Jb<%('\xa0\x9c\xf0\xf5\xc9\x10\xcf;\x81r\x02\xca \xeb\x99PN(\x83rbhPN@9a3('\xa0\x9cP\x06\xe5\x04\x94\x13PN@9\xa1\x0d\xca\x899\xe2\x03('\xa0\x9ch\x0c\xca\x89\xa1A9\x01\xe5\x04\x94\x13PN@9\x01\xe5\x04\x94\x13PN\x9cB9q/\xdfh\x98%\xcf(\xb4\xd0\xc2\xad\xd0\xe8\xcb2\x1eU\xb9{\xf0\x82\x0c\x1b\x8dC0\x89\x8e\xf9p\" \x91Qx\xeb@\x9b\xb7&\xb4M\x11P\x04\xdc\xd9/\x9eXN:\x11*\x9c@0\x89\x19R \xafPb\x96L\x02\x92\x08\x02I\x84w\x10 q\xa9\x13H\" \x89\xb0\x9e I\x842H\"\x86\x06I\x04$\x116\x83$\x02\x92\x08e\x90D@\x12\x01I\x04$\x11\xda \x89\x98\xa3*\x80$\x02\x92\x88\xc6 \x89\x18\x1a$\x11\x90D@\x12\x01I\x04$\x11\x90D@\x12\x01I\xc4i%\x11\x0f\xfcs\x1bF!\xc1\xdd\x12\x89\x1f(\x17}\x99D\xf5:\xfd;\xd0I<\x10F\x87\xc0\x15\x9d\xb3|\x8a\x8b\xa0:\xd1\x16P3\xda\xa6\xe8.\x02\xef\xef\xd7^,\xa9\xbe\x08\xd7_ p\xc5\xd1j\x8c\x00=\xc6LE\xc6xJPi@\xa5\xe1\xeb\x93!^~\x02\x95\x06T\x1a\xd63\xa1\xd2P\x06\x95\xc6\xd0\xa0\xd2\x80J\xc3fPi@\xa5\xa1\x0c*\x0d\xa84\xa0\xd2\x80JC\x1bT\x1as\x84\x0ePi@\xa5\xd1\x18T\x1aC\x83J\x03*\x0d\xa84\xa0\xd2\x80J\x03*\x0d\xa84\xa0\xd28\x85Jc\xaabb\xa8\x92\xe0\xe5~O\x8b\xbb\x17\xa4f\xbb\\e)a\\\xb9\xb6\xf5u\x95\x03WD;\xd5\\\xb6\xc95\xcb\x08\x17T\x94\xb5\x8bd$$\xc5\xefDa\xf1@\xd8\x9a\x91{x\xc0\xbe\xd7\xbd\xd4\x0ba2;\x9dP\xa5\x817\xa1\x98\xa5lK\x05[\xd1}^f\xf3q>\x17\xb4\x10\xab\xc54\x01.\xa5\x85\x91\x05\xa8;V]@\xdfx\xfc\xc9ei\x92y\x1c\x82\xeb9\xd9\x0dYF\xd7j\xc4\xcb\xe2\x95\xc8\x9bI\xe3\xc02\xb9\xc8u\xdd\xd6%\xb5\x1a\xeb\xdeq^Q\xaf\xb1^m2\xd2\xae\x80{\xce\x83\xbf\xa7]lt\x14\x1dC\x1c\xc9\x9a\x89\x1b\xc6\xb2&\xd6\x8c\x82\x02\xaf5Kl\xa2\xda\xd0l\xcc-\x90R\xc1x-{\xe3lT2b\xc2n\xc9\x8e\xf7g\xf2\xc5\xf3\xffsp\x8a)d\xd8\xc4U_\x0dmX\xef(\xb4a!\xed_\x1b\xb4a\xd0\x86\x8d\x1b\xb4a\xca\xa0\x0d\x1b\x1a\xb4a\xd0\x86\xd9\x0c\xda0h\xc3\x94A\x1b\x06m\x18\xb4a\xd0\x86i\x836l\x8e\xbc\n\xda0h\xc3\x1a\x836lh\xd0\x86A\x1b\x06m\x18\xb4a\xd0\x86A\x1b\x06m\x18\xb4a\x1fY\x1b\xa6!\xe7\x8a\xdd\xb2\xa8\x14l\x15\xa541\x92\x03\xdbWv.\xf5%o\xf4\x15\xaf\xe5\x05\x8f\xaa<>P\xf9\x97*\x15P\x19P\x19P\x996\xa02e@eC\x03*\x03*\xb3\x19P\x19P\x992\xa02\xa02\xa02\xa02m@esh\x13P\x19PYc@eC\x03*\x03*\x03*\x03*\x03*\x03*\x03*\xfb\x14PYe\x07\xba5[Fm\xd0f\xd6\x9e\xfd\x8c\xdd\x8a\xd5\x15\xbb;r;\xa3\xd5\xe9\xd0y\xb1\xff\x87\xcd\xe5P\xe5\xa2\xfa\xde\xbc\xf9\xe2\xfbZ\xce\xf8\xdc|\xc9\xfd\x92n\xd9;\xbd\xfb\xeeL\x1f\xb7$\xa68\xa1JF&++\x8e\x91}\xce\x05a\xca\xb3\xa5\xdcag\xe4B\xb4:\xc0A\xdc\x91\xc4\x06y\xc4\x8e\x15\xeaC\xf3$\xcb\xc9>/X\xe5\xe6\x1c\x1b\xbcE.\xa8\x05d\x05W\xa6uo\xa8\xef\xbb\xfd\xe6\xf6\xaa\x16\xd5?\xb2r\xbf\xd6N\x9a\xca3\xdbr\x03\xda\xca\xdb\xae\xe8(/3\xb1R\x89\xd9\xfa\xd0\x0d\xe5\x843\xf1\x94$\x82W\x0egN\xcaLo~\x8e\xb5\x0f\xee&\xe1\xc3\xf6\xe1w\xfa\xe8\xach\x08\xaaK\xd5\x19\xb0\x92\x8cl\xdf]\xbe\xae9i5\x1apr#\x9f\xd9\xd8\xe3\x19\xe7\x19Q^\xe84\x14\xfb\xa9\xf6xVc\x8b\x1c\x87\x95{\xaf]3\xa3\xd5Q]\xf1>\xdf7\xf9v\xae\x84\x0bv`\xca\xfb\xf2\x8a\x16\xf5C\xf2L\xb8\xddjQ\xed\xdb6\xe56\xa3\x08v\x98\xf6\x8eb\x87iH\x0f\xd4\x06l\x0el>n\xc0\xe6\xca\x80\xcd\x87\x06l\x0eln3`s`se\xc0\xe6\xc0\xe6\xc0\xe6\xc0\xe6\xda\x80\xcd\xe7\x90g`s`\xf3\xc6\x80\xcd\x87\x06l\x0el\x0el\x0el\x0el\x0el\x0el\xfe)`\xf3\xfb\xdfa\xda\xa4\xdf\xa0\xfa\xb3+\xd6N\xcf\x05\xc3\x0d\xfd\xa6f\x88.\x98(\x8bL3\xce6\xee;\xabQ\xb9r\xb6m{^)U\x029\xac\xf8\xf0\xf7[9m\xe6\x99z\x1b\xcf7\x1b\xce\x84|\x13\xe8f\x97\xb4`\x01g\xe2l\xd9\xda\xb2\xb8^F*Q\xe7\xcfV\x8f=\xb7\x87)\x8c\xaa\xca\xac\xdc\xb3\"\x89\xaa\xdfTo\x8eh&\xcb\xa3\xfdN;\x96U\x15_f\xb5\xab\xaf\xb7*\xbeP\xa9\xa5\x8c\xf3\xa6\n\xb5s\xac\xe4\xb2\xaa\xaf\xd8\xc4\xfa\xec&\x7f\xe2\xca\xed\x89 F\xaaW\x85\xb3\x0e\xac]un\xa5\xd2\xb0i\x0c\xb4\x1b\xb8\xdd\x82\xf5ZC\x1e\xed\xa4v\xd0N\x9f\xf6O\x17\x1b\x92\xb2\x8d\xa84\x19F\xa4Q-=\x95\x07[w\x10}\x13Y\xcf\xeb;\xc2h\xb4#\xf4p\xf8\x88\xb5\xd8VJ4\xd7\xbb\xea\xb2u\x85\xacQ\xd5Bs\"\x8a\x92\x11\xf9\x8f$\x8b\x93\x88\nV\xb3,S\x83\xeaD\xd3\x90\xda\xc9%Y\x94\x96qoaI\xf5]j\x98\xd8{b\nM\xb7|\xdcrjh\xca\xd4wy\xff|\xc1{O\xabW\x04\xb5\x16/\x187\"\x02\xd5\xbd\x9a\xfe(\xbb\xdc\x99\xe9M\xc96\xcb\x8b\x1e!\xa8zc\xf7\x16\xbaf\x8e}\xb0\xfd\xb0\xe4#\x0f\xb0`\xd7\xac\xe8\\\xeazx\xe6\xec\xfe\x83KZJ\x9b\x82\x8d\xf7\x84N:\xf2\x1e:z\x00\xc9\x8b\x98\x15\xfdu\xff\xfb$\x8b\xe4\x94\x95\xf3}\xce\x9f\xf1\xf8\x8a\x9cb\x0d\x8eP]\xf4J^\xf3A_\xf2\x17\xf5\x19\x8dGUv\x1fh\x90\x04\xdfG?\x9cx\xc12t@\x87\xd3;\n\x1dN\x18\xc7!\xd0\xe1@\x87c=\x13:\x1ce\xd0\xe1\x0c\x0d:\x1c\xe8pl\x06\x1d\x0et8\xca\xa0\xc3\x81\x0e\x07:\x1c\xe8p\xb4A\x873G\xca\x02\x1d\x0et8\x8dA\x8734\xe8p\xa0\xc3\x81\x0e\x07:\x1c\xe8p\xa0\xc3\x81\x0e\x07:\x9cS\xe8p\xc2q\xa6\xfa(\xbb\x1b^~\xcb\xb2|\xff!\xff \xcf|Te\xe6\xa1\xd2\xca\xa68\x9d\x9f\xc7|/\xa0\x90\xbd\xa3\xa0\x90a^,\x02\n \ni=\x13\x14R\x19(\xe4\xd0@!A!m\x06\n \n\xa9\x0c\x14\x12\x14\x12\x14\x12\x14R\x1b(\xe4\x1c\x90\x07\n \n\xd9\x18(\xe4\xd0@!A!A!A!A!A!A!A!OA!\x9b\xf4c\x96uZ\xde\xd1I\xbb\x00'-\xc5\xee\xfc\xfa\x8b\xf35\x8bv_}y\xfe\x1b\x8d\xe3\x82q\xfeO7\xe5|\x9dg\xd7\xac\x10/\xf5\xc9\x8f\xaa<=P\xcei\xca\x14\x88\xea@:{GA:O\xe0$t\x0d0\xb4\xd3\xad\x88\x19\x02z\xb8\xb0\x19\x01DQ\x06\x8f-\x87\x82m\x92\xdb^\xca'\x1b\\\xb6\xf9\xb5\x1c[\xf4\x8c\xb4RE\xe6\xe7\xbf\xed\xf9V>\x0d\xdf\x10\xa3.\xbaT\xd7<\xaa\xf2\xf5@\x07\x18]2[c\x9f\xf5\x99\x95\x98\x1dr\x9e\x88\x95\xaa\x10{\xb3v6<\xdf\xb7?\xbe\xcb\x0b\xf2\xe6\xfb\xefZm\xf1)\xb9\x91K\x96\x03+\"\xb9`\xd9*o\xab\xc9\x8a\\*U-\xc3\xd6\x15r\xc22\xfb\x8b\xd2u.\x92l\xbb:\xb0\"\xc9\xe3\x99e\xea<\xdfj\xf2\xaf^.\xf4\x0d\x88\xbe\xc1\xd8\"\xff\xd72/\xca\xfd\x12\xb7\xb6V\xea\x8fI\x96\xec\xcb}\xaf\x0eu\xc4\x0b.\xe8\x15S\xb0KS\xbc\xeb\\\xe8\x10\x1a6\xfch\x02x(0f[MEy\xc6\x93\x98\x15,\xd6\xdc\xa0[nw\xa6Ugm\xf7\xb4\xce\xb7St\x04\x11\xfd\xb7Z,o\xf2\xb1G\xab\x129o\xa7B\xde]\xbe\xeegW\xbfp7\x99\xc34;\xa8 L\xb3\xf7:\xcd\x9ay\xa8\x95\xd8\x91\xd3l\xc0T\xc8o\x12\x11\xedV\xed \xc36\x01\xbeW\xa7~\xba\x13`\xc2\xe9:e\xabF\x83\xe0hv\xb6\xa6N\\\xcd\x9d\xf8[U\x95 \xd9T\xe4\xa9\xf7\x9a\x85\x80\xa1\xfb\xcd\xf7\xdf\x1d;n\xd7I`\xd0\xc6\xa0=~\xfc\xbe\x07m\xeb8\xaa\x83ZU>\x8b5\x13\xf4\x8bs\x1a\xe9\x98bI\xb6\xc9\x1d\xee\x0b^\xee\xf7\xb4\xb8{A^\xea\xf3/\xb2M\xae^|\x12\xc6\x89I\x83\xc84\x8c?-\xe1$\xca\xf7{\xed7\xa3iZ\x9f\xa3\x86\x81\xaa-w\x1a\xff\xe3\xd1\xd0[\x7f|l\xce\xed\x0c\xee\xad\\\x98\xc3\x0fvl\x97\x952|\xbe\x9d\xac\xa8z3#\xcfx]\xd6NP\x0d\x8e^Q\xceL\x15\x0c\x97\xe9GL\x1aVO\x0f\xf17\xc6C\xb9\xf6}\xd7\xd2\xda\xcb|\xf9\"\x01=\xcd\x9bAmao!d\xae\xea\xda\x91\xde@x\xe3\xa0\xb7\xcb*\xaf\xbd\xda\xeb\xa5\xd5\xd7\xe1\xfa\xeb\x85\x14\xd8\xf34\xd8\x8e\xe4d\x85\x06\xab\xb0\x8f\xd6a/\xad\xc4\x9e\xa8\xc5^X\x8d=M\x8f=Q\x91\xedj\xc3\xb5V;T\x93\xbd\xb0*;H\x97\xbd\xa02\xfbXm\xf6,u\xf6B\xfa\xec9\nmGbJ\xbb\xed\xd7h\x9fD\xa5}:\x9d\xf6I\x94\xda\xd3\xb4\xda\x8b\xab\xb5C\xf5\xda\x8b*\xb6\xc35\xdbz\x191A\xb5=]\xb7\xed\x1d\n?\x0fPn/\xa0\xdd\xf6\xbc|\x04.\xa8\x02\x14\xdcSV]\x93U\xdc\xaeIp\x9d_\xb3\x00\x1dwh\xfe\x16\xd4rOQs/\xac\xe7\x9e\xa7\xe8v\xb5 \xee\xd7t\xcfVu[R\x93w\xf3\xe9\xba\x97Rv\x07\xcb\x93\x03\xd4\xdd\x93\xf4\xdd\x1e\xc9\xe1,\x8d\xb7/M\xab\xd2i!\xa5\xf7\xf4\xca\x0cW{\xfb\xca6C\xf1=S\xf3\xed\x94\xb5\x06\xe8\xbe\x97U~/\xa3\xfd\x0eh\x1bG\xeb\xbf\x83\x15\xe0a\x1a\xf0P\x15x@\xc3\x99\xae\x04\x9f\xa2\x05w\xa8\xc1\x17\xd2\x83OT\x84\xcf\xd3\x84OR\x85\xfb*\xdd\xd9\x85|\xd7\x86\xab\xc3\x97\xd3\x87{3e\xed?\xcb\xa9\xc4\x03t\xe2\xf3\x95\xe2\x96\xe4\xe4i.\xad\xf8\xc2jq\x9f^|\xa6b\xdc\x92\x96~\x87v\xb9\x11\xfc\xaaq\xa7n|y\xe5\xf8\xe2\xdaq\xbbz|I\xfdx\x88\x82|\xba\x86|\x92\x8a|\x86\x8e|\xaa\x92\xdc\xa9%w+{\xc3\xb5\xbd\xa1z\xf2\x19\x8a\xf2\x89\x9arGq\xe7\xe8\xca-I\xb54\xdba]\"L[\xeeh\xf2\xd9\xd6\xad._T_\xeeQ\x98\x9fFc\xbeT[\x9c\xa03\x9f\xa24\x1f_\x1eT4S\x7fqi\x16\xc7\xb2~H\xa61\xce~-Y\x16Y<'\xc7\xa4\xdf\xf1C\xfccT\xb3\xd0B\x9f}\xd5\x82V$\xb4 mG\xc70X`\x8e\x03\xd7GMf\xa0V\xe8\x18\xd4\n\xa1\x9e\xb2\x99\xf4\x141\xabB\x98\xe9\"\xc4t\x0e/E\xcc\xaa\x05)\xe9\x14F:\x89\x90\"f\xd5\xb1\\t\x06\x15]\x84\x89N'\xa2\x88Yu\x0c \x9d\xc2A\x17\xa6\xa0a\x0ctA\x02\x1a\xca?G\x16\xf3\x88Y\xd5\xb5\x00\xe2\x19\xbaJ\x9aL;\x11\xb3*\x88q\xce!\x9c\x88Ye;\xcdK5'0\xcd\x90hGSx&bV\xcd \xfb\xe4\xe3\x97\x88Y\x15\xce,\x03\x89e\x08\xaf\x0c\xa3\x95\x88YEf\xf2\xc9 t\x121\xab\x16\xa0\x91^\x169\x97DZ\xe7M\xc4\xac\x1a\x18bV!fU\xcf\x96\x88\x1f\x14\xca\x18'\x13\xc6I|\x111\xabf2E\xc4\xac\xaa,$f\xd50\xa4L\xe7=\xda\x1c\xee\xef\xe1\xab~\xd6\x8d\xb8=\x02\x9dj\xa7\xbcc\x87\xe7p\xbb|\x7fO''\x05\x13e!\xdf\xf8\xd3T\xf7\x9f\xdb\x84\xab\x90 U\x1a\xa3\x1b7[^\x84\xff\xd8\xb1\x8cD4MYL6E\xbe'4\xd3\x9e\xa1}\x1e\x97){\xaa\x1dh*`\x8e\xf1\xf4Dy\xc6K9\xdb\x92]\xb2\xdd\x11\xba\x97\xf7\xa9\xd3\xcb7M\x83\xdaR.\x97EB\xadN\xb6I\xa6\xfb\x96\x9e\x00\x12N\x92,\xca\x8b\x82EBo\xffi\xcf\x86\xa3\x9c\xf3+sxl_\xe9\x83\x0f\x18\xd0}\xa6m\x13\xc0\x8a\xc0\x8a\x1d\x03V\x04V\x1c7`E`E`E`E`E`E`E`E`\xc5\xda\x80\x15\xe7\x909`E`\xc5\xc6\x80\x15\x87\x06\xac\x08\xac\x08\xac\x08\xac\x08\xac\x08\xac\x08\xac\xf8)`\xc5\xc6\xcc\xf7\x04*v\xa3\x1cq\xa3\x94\xadweC\xbb\x86\xab\xad\xce{w\x0b\x8b)\xe7\xa9\x19[[?\x9b d\x8cLis\x92 7\x07\xca\xd8\xad\xf0E\x00\x0d\xd8\x15iu\x7f\xb8\xf7FVV\xe5\xa2b\xb1\xf2\x9f\xc6\x1bH9\xd7.\xcfK\xbae\xef\xd8\xaf%\xe3\xe2L\x1f\xb7$\xa6A\xa5LF&++\x92\x91}\xce\x05a\xca\xc7\xa6\x1csg\xe4B\xb4\xba\xe2A\xdc\x91\xc4\x11\xb5\xa8`\xea\xb9g9\xd9\xe7\x05\xab\x1c\xaec\xd3\x88\xfa\xe6\xc1\x91\x95i\xdd\xc2\xea\xff\xba\x85\xfe\xe4\x82\xacE\xf5\x0f\xbd\xa3V\xce\xbd\x95\x8f\xb8\xe5\x90\xb4\x95\xb7]\xd1zc\xaeJ\xcc\xd6\x9bo('\x9c\x89\xa7$\x11\xbcr}sRf\xba1\xc7\xda\x1bx\x93\xf0n\xfb\x08\x88\xf3]a\xdd\xa00\xdf\xddm\xb4\xfd\xce\xf8\xee\xf2u\x1d\xd6\xbb_\x0e'g\xc6~Z\xec\xa7\x1d\xb1\x10\xc7)\x01\xf8\x06\xf8\xb6\x9e \xf0\xad\x0c\xe0{h\x00\xdf\x00\xdf6\x03\xf8\x06\xf8V\x06\xf0\x0d\xf0\x0d\xf0\x0d\xf0\xad\x0d\xe0{\x0e;\x06\xf8\x06\xf8n\x0c\xe0{h\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x9f\x02\xf8v\xed\xa7m\x90\xf4\xd9\x15k\xcfu.\xc8k\xa8.5C\xa8\xde\xac\xaa\xdcj\x064\x1aTV#`\xe5\x0c\xdb\xf6\xbcF\x8a\xe9\xcan\xef\xc3\xbao\xe5\xb4\x96g\xeam9\xdfl8\x13r\xa5\xde\xcd.i9\xf3\xd5\xa6\xd3\xe6@\x92\xbd\xd0\xf7j\xfd\xd6\xec\xf1\xdd\xd0\x94{6\xf9\x12\x9bkd\xa4\x12u\xfel\xf5\xd8sK\x98\xc2\xa8\xaa\xcc\xca=+\x92\xa8\xfaM\xf5\xb6\x88f\xb2<\xda/\xb4cYU\xf1eV\xbb\xe2z\xab\xd6\x0b\x95Z\xca8o\xaaP;\xafJ.\xab\xfa\x8aM\xac\xcfn\xf2'\xae\xdc\x1e$\x1f\xa9\xde4\xd9'\xa1\xb5\xab\xce\xad\x00\xb3\x8d\x9dk7m\xbb\x05\x1b\x1c]\xa6=|\xab\x9d2\xed\x9f.6$e\x1bQi\x0d\x8c\xf8\xa0Z\x1a*\x0f\xb3\xee \xfa&\xb2\x9e\xd7w\x84\xd1hG\xe8\xe1\xf0\x11k\xb1\xad\x00h\xaew\xd5e\xeb\nY\xa3\xaa\x85\xe6j\x7f<\x91\xffH\xb28\x89\xa8`5k25\xa8N4\x0d\xa9\x9d\\\x92Ei\x19\xf7\x16~T\xdf\xa5\x86}\xbd'\xa6\xd0q\xcb\x07-\x87\xee\x8e\xa0\xa6\x93\xd8\xcf\x17\xbc\xf7\xb4zEPk\xe5\x82q\x03\xf9U\xf7j\xfa\xa3\xecrg\xa67%\xdb,/z\x1e\xfc\xaa7vo\xa1k\xe6\xd8\x07\xbb\xce\xf3\x94\xb5\xbe\xaf9\xf2\x00\x0bv\xcd\x8a\xce\xa5\xae\x87g\xce\xee?\xb8\xa4\xa5 )\xd8xO\xe8\xa4#\xef\xc12\xc56\xf3\"fE\x7f]\xeeQ],Q\x1b\xb3\xe2-L\xf8\x9av\x13x\xc1\xfcmT\x0e\xcdg-MR\xd5C\x1e\x0bZ\xf0\xa8*\xd9\xc3\x8eY`Sn\xcc\xd2\x9c \xa7\x00\xc3\xcb\x1eB\x9c\xf7\x8bK/\xc2\x84\x17sd\x17ny\xc5,q\x85\xba\x85%A\xaf\xb4b\x01a\xc5LY\x85\xfdK!A\xa2\x8a\xa3$\x15\xb3\x04\x15\x84Z\xbf@$\xc2\xe4\x14s\xc4\x14.\xc4\x19$\xa5XXH\x11$\xa3XPD\xe1\x95P,$\xa08F>1Y<\xb1\x80tba\xe1\x84G6\xb1\xb8h\xe24\x92\x89\xc5\x05\x13\xe1r\x89yb G\xa5\xfb\xa4\x12\x8b %\xc2d\x12#^\n\xfb\xf8\xba\xb0D\xc2'\x908R\x1e\xe1\x10Gx\x97'^aD\xd8\xfaeYQ\x84O\x12\xe1\xcf\xd3<9D5\xb2\x8f$\xe8\x13C,(\x858B\x081._r\xc9 \x96\x15A\xb8%\x10K\x08 \x82\x08\xbeG\xfc\x10,}\xb0\x93\xb8\xe9\xb2\x07{Z\xa3\xfe\xf0E\x04\x0fS*+T\xec\xe0\xaf\x93`\xa1\xc3\x0c\x99\x83\x0d\xbf\xfa$\x0e\xcb \x1c\x8e\x9778\x9f\xf7\x91\xd2\x86 a\x83_\xd6\x10\"jpV\xf6TAC\xa8\x9c\xc1\"fX@\xca0A\xc80]\xc6\x10,bp\xb0\x7fkv\x1c\xd7\x84\x8a\x17\x96\x91.83?rd\x96h\xa1\xf2B\x8f\xa4g\x91,,,X\xb0\xcb\x15\xe6\x8a\x15\x94\x7fd,\xe3\xe3R\x85e\x85\n\xb6\xd7`\x9fH\xc1*QXV\xa00_\x9e`\x91\"\xcc\x12\"xE\x07\xd3$\x07\xc1\x82\x83\x89r\x83)b\x03\xab\xd4\xc0\x9e\x9bP\xe4\x1b&3\x98(2\x98 1\x18-\xda\xb2\xf2\x02\x9b\xb8\xe0\x08i\xc1\xa8w\xc6*,\x98'+pI\x08\x96\x17\x10\x1c\xdf\x92\x82\xc5\x03\xa1\xd2\x81\xee\x0c\x18\xbe\xadw\xc6\xae\xde^j\xedM\xbd\xcd\xfd\xb1[\xb7c\xd8\xad\xebk\x94\x8d-\x8c\x8cB\xa1\xd1\x17|\xb8w\x14|8\xcc\xbfH\xc0\x87\xc1\x87\xadg\x82\x0f+\x03\x1f\x1e\x1a\xf80\xf8\xb0\xcd\xc0\x87\xc1\x87\x95\x81\x0f\x83\x0f\x83\x0f\x83\x0fk\x03\x1f\x9e\x83X\xc1\x87\xc1\x87\x1b\x03\x1f\x1e\x1a\xf80\xf80\xf80\xf80\xf80\xf80\xf8\xf0\xa7\xce\x87\x93\xf6\xb0\xec\x8a\xe0\xfc\xad|\xf2\x91|\xcb{\xaa\xa6\x98\n\x1b&1I2.\x18\xed=Y\xf9\xbb\xe1\xc9\x1d\xc6Z\xbf\xee7\x94y\xcd\x14hNXlX\xc6f0]\x18O\xbd\xf2\xe6\xad\x19\x93\x8d\xdbD\xad%O\xd2\xe4J\xb9\x13{7\xe2\x9fk\xa7\x92i\xa3\x9d\xe4\xcaC\xac\xdeWE^\xa5\"\x1b\x17\xd9\x94\xa2,j\xb7[\x9d\xd3R\xec4 _\x90\x82\x93.\x91\x1b\x89\xbe\xdbTp\xe0\x13j?\x91\xe95\xdf}z\xa30\xf7\x8f\xbd\xe2O\x0d\xcc\x1a\x16\x7fx\x92>`\xcd\xa2\xddW_\xda5\x01\xaf\xd4\xf1\xcb\x82m\x92[STN\xd6\xad\x1f\xcd\x05!({\x94\xf7\xbf\x1a\xa6\xf5`I\xbf.\xf7\xea\xa02;\x81\xf5\xba=k\xed\x1a\xf0\xe2\xfa\xee\x03)\x0eQ/\xb1I\x9fg\xfe\xa6> @\x7fP\x8f\x00\xfa!\x0ea\x02\xa0\x0f\xa0o=\x13@_\x19\x80\xfe\xd0\x00\xf4\x01\xf4m\x06\xa0\x0f\xa0\xaf\x0c@\x1f@\x1f@\x1f@_\x1b\x80\xfe\x1c&\x0e\xa0\x0f\xa0\xdf\x18\x80\xfe\xd0\x00\xf4\x01\xf4\x01\xf4\x01\xf4\x01\xf4\x01\xf4\x01\xf4?\x05\xa0?\x03\x91\xd6_\xb4\\\xad\xef\x04s~\xd7\xb2\xda;+\x18\xff\x90\xbf\xd7\x1d9\xca\xb3kV\x08^\x7f\xf5\xf2e\xb5\x93Z\x9e&\x9f^\xc7\x0f1\x1b\xa7\x8e\xdd\xdc\x9c\xf7`\xb1jU\xb1\xba\x06& 7\xb7\x83c\xac*\xbc|u<\x0d\xf3\x10\x9b\x9d\xd0\x00\xac\xed\x0b\x00X-\xc7\x01X[\x06\xc0\n\xc0\xda\x18\x00\xab\x00`\x1d7\x00\xd6\xca\x00X\x01X\x01X\x03WI\x00\xac\xb5\x01\xb0\xb6\x0d\x80\x15\x80u\xc4\x00X\x01X}\x95\x0f\xc0j\xbd\x06\x80\xb5c\x00\xac\x00\xac\x00\xac\x00\xac\x1d\x0b\x85]\x00\xac\xca\x00X\xffU\x00k@Dm\xcdQ[)-\xb8!\xb8\xe5M8\n\xf5\xea\x1b\xf8Y\xaf\xe6\x83\x1fr\xc5\x1a[\xac\xd70^3\xd6\x88\x9c\xb4\xcb|,\xe3\xed\xdc\xd4\x9c\xf7\xe0\x19\xaf\xaa\x80I\xd0\xcf\xe1#\n\xe2\xbf\x9dj\xf2\xf2\xdf\x0e5\xee%\x08\xfc;~\x01\xf0\xaf\xe58\xf0o\xcb\x80\x7f\x81\x7f\x1b\x03\xfe\x15\xc0\xbf\xe3\x06\xfc[\x19\xf0/\xf0/\xf0o\xe0* \xf8\xb76\xe0\xdf\xb6\x01\xff\x02\xff\x8e\x18\xf0/\xf0\xaf\xaf\xf2\x81\x7f\xad\xd7\x00\xffv\x0c\xf8\x17\xf8\x17\xf8\x17\xf8\xb7c\xa1(\x0e\xf8W\x19\xf0\xef\xa7\x84\x7f\x07~\x81#\xf9\xef$\xd0\xbb\xcf\xe32e+\x13\xdf\x99\xdb\x01\xef\x8f\xeaD\xb3i\x977\xdfCNS\xdd+n\x13.\x14\x05Q\xe7U\x01\xa3ko\xc9l\xc6\xdb\xbd\xef\xa3\xaa:\x1e*\xdd\xed\xd4c\xdb\x04\xd0\x1c\xd0\\\xc7\x80\xe6\x80\xe6\xc6\x0dh\x0eh\x0eh\x0eh\x0eh\x0eh\x0eh\x0eh\x0eh\xae6\xa0\xb99t\x0bh\x0eh\xae1\xa0\xb9\xa1\x01\xcd\x01\xcd\x01\xcd\x01\xcd\x01\xcd\x01\xcd\x01\xcd}\nhN\x9b\xfb\xfdX\xa1\xb3.\x81\xf2o\x9c\x1b>\x02\x95\xccy\x8f\xa0\xbd\xbb|\x8dMt#\x17`\x13\x9d\xe58H]\xcb@\xea@\xea\x1a\x03\xa9\x13 u\xe3\x06RW\x19H\x1dH\x1dH]\xe0* \xa4\xae6\x90\xba\xb6\x81\xd4\x81\xd4\x8d\x18H\x1dH\x9d\xaf\xf2A\xea\xac\xd7\x80\xd4u\x0c\xa4\x0e\xa4\x0e\xa4\x0e\xa4\xaec\xa1\xd4\x04\xa4N\x19H\xdd\xbf\n\xa9;fC\xdb\xf9o\xb2?:\x02\x97v\xa8\xdc\xab;\xd9\xbc\xeb\xcdm\xf2 v\xf7\xb3\x91$\xdb\xe4r\xb65?\xcb\xc4M\x8a\xf6]k:Us\xdaC\xdf\xbaf\xe3a\x16\xb4\xe5\x06[n\xac\xe5\xf5\xe8\x84\xb8D\x16\x07Za8k\x0e\xccrC\xabY\xc8J\xdd\xc2\x92\xa0\x17X-\x80\xabf\xc2*\xab\x8b?\x0cU\x1d\x05\xaafa*B\xd3\xd4V\x8ba\x90j\x0e\xa2r9\x8e\x83\x00\xd5\xc2x*\x08N-\x88\xa6\xbc`j!,u\x0c\x94\x9a\x8c\xa4\x16\x00R\x0b\xe3(\x0f\x8cZ\x1cE\x9d\x06D-\x8e\xa1\xc2!\xd4<\x04\xe5\xa8t\x1f\x80Z\x0c?\x85\xc1\xa7I\xe8ia\xf0\xe4\xc3NGB'\x07r\xf2.O\xbc\xb8)l\xfd\xb2,j\xf2\x81&\x7f\x9e\xe6A\xa6jd\x1fI\xd0\x87\x98\x16\x04LG\xe0\xa5q(\xec\x82K\xcb\xa2%7XZ\x02+\x05q\x11\x0fR\n\x06Jv\xff\xe6t\x98dOk\xd4\xcb\xb0\x08F\x9aRY\xa1\x08\xc9_'\xc1\xf8h\x06<\xb29\xb5}\xe0h9lt<4r>\xef#\x81Q\x10.\xf2\xc3\xa2\x10T\xe4\xac\xec\xa9\x98(\x14\x12Y\x10\xd1\x02\x80h\x02\x1e\x9a\x0e\x87\x82\xd1\x90\x83\xa8X\xb3\xe3\xb8&\x14 -\x03\x84\x9c\x99\x1f92\x0b\x05U\xd8g$=\x0b\x08Z\x18\x03\xd9!\xd0\\\x04\xa4\xfc#c\x19\x1f\x07@\xcb\xe2\x1f\xdbk\xb0\x0f\xfdX\xc1\xcf\xb2\xd8g>\xf4\xb1\x00\x9eYx\xc7\x8br\xa6\x81\x9c`\x8c3\x11\xe2LA8V\x80c\xcfM\xa8#=\x0c\xdeLD7\x13\xc0\xcdh\xd1\x96\x8566ds\x04\xb0\x19\xf5\xceXq\xcdB\xfd'\x93Sl\xf3g1\x8a\xdc\xbfW\xb76G\x1e,noWP\xdb>\x06\xf7\xa2\xed\xbaw{~\xac\xf7 \x01\xf7!\x01\x8c\x8d\x849\x99H\xa0\xaf\xa6\xb2\xa9\xbc\xcd\x99\xd8\xb8\xd3\xc5\xb1r_\x9a\xbb\x11?{#3\xf8\x9b\xbb\x00U\xdc\xd6\x10\x06G\x96\xe2pd&\x8bs&(+7\x98\xc7\x91\xe3\x99\x1c\x99\xcc\xe5\x9cI5\xb1]\xc3\xd9\x1cY\x9a\xcf\x91\x89\x8c\x8eL\xe5t\xee\x96]3\xbcPVG\x96\xe6u$\x8c\xd9\x91%\xb9\x1d9\x9a\xdd\x91y\xfc\x8e,\xc5\xf0\xc8,\x8e\xe7\xee\x0e\x94\xb3\xd8\xcf\xf2\xc8ix\x1e9!\xd3#\xa7\xe1zd\"\xdb#\xf3\xf8\x9eo\x08\x0ec|dY\xceG&\xb0>2\x9d\xf7\x91\x19\xcc/`\xc8\xfc<\x80\xfb\x91%\xd8\x1f\xf1\xf1?\x12\xbe<\x0b\xe0\x80d\xe2*n2\x0ft\xa6\xa6Xa\x00\x13$\x13r\xb9 \x1b$\x93\xf8 Y\x9a\x11\x92\x99\x9c\xd0\xdd\xae\xb8\x9f\x15\x92\xf9\xbc\xd0\x9a\x9e\xbc\xa3\x8f\x19\x92\xc5\xb8! \xc7_$\x84\x1f\x92i\x0c\x91\xf8\x1c\xdb3Y\" H\xd7\xe1U[\x88+\x92Y\x95\x1b\xce\x17I@)gpF2\x975\x127P b\x8eda\xeeH\x16b\x8f$\xac\xc5\x1c\xcd I8\x87$\x81,\x92\x04\xf3H\x12\xd6\xa0\xa6sI2\x89M\x12\x17\x9f$K1J2\x95S\x92\x99\xac\x92L\xe3\x95$\xe0!x\xba\x99\xff\xfap~I\x16d\x98$$k\x8e^\xb6\x1c\xcf$!L\x93\x1c\xc15\xad \xca\x13]l\x93,\xcd7\x89\x97q\x92\xb9\x9c\xd3\x9a\x9a~\xb7w\xbb9\xfc\xbc\x93\xb8\x99'\x99\xc5=\xadI9y(\x99\xcbD\xad\xa99\xa2\x00k[\x8e\x8d\x92 >Jf0R2\x8d\x93\x929\xac\x94L\xe6\xa5\xc4=\x8a\x10\x0f\xc3\"\x138V(;%s\xf8)\x99\xcaP\x89\xbb\xe0sX\xaa5\xb1\x16\xa9\x0c\xed2aL\xd5\xd9!\xb2\xad\x9b\xab\x92e\xd9*\xf1\xf1U\xe2f\xac\xd6k\xe6\xb2W\xb2`\xdb\x9d\xc0`\xc9$\x0eK\xac\x0b\x14v{H\x8a\x00v\x17\xa4\xda\x8e\xa9`\xcfD\xb2\xb7\xd5\xb2HD\xca\x9c.\x10y1\xb9\xd9\xb1\xac!\xb5\xba9\xaa|2\xd5\x0b\xaa\xe6y(\xca\x8c\xc5g\xe4\xc2\xfe\xea\x9e\x95i*\xdbx;=\xfb\xa3\x8cs\xc6\xb3\xc7B{x\xa9\xceKS?\xe4\x89v\xcaEy\x16\x1b\x0f\xbfk\x17\xc2/\x1d0\xeah\xac{zG\xe8\xe1\x90*\xafq\x92)\xe7\x14\x15\xac\xc9\xf0\xd8B\xb6\xe3R\xfa\xc7x}*\x96M\xb6\xc95\xe3\xe4\xc0\x8a}\xc2\xb9\xca\xb5\xc8 \xbbeQi\xf1\xac\xc9\xfb\x9aU\x9cY\xf6\xe8\x99\xb1U\x13\xb2f\x86\x13\x9b\xdf\xcd\xd5\xa9\x12\xae\xb0E\x0d\xf15\xd3\xae\xd1\xbd\xec\xb2\x0d\xb7\x1fI\xabG\xf1+;\xd0m\x92Y\xdaso7zub\xbd#\x9df\xed_\xab\x9d\xbdc\x1c_\x9b\x93j\xbbyv\xc6n\xc5\xea\x8a\xdd\x1d\xb9\xaf9\xec3\\\x96\xf6\xd1\xe4\xa2\xda\xda,\xffi\x08\x03\xe5\\#\x95K\xbae\xef\xd8\xaf%\xe3\xe2L\x1f\xb7$\xf6k\xc9\n-\xb0\x90\xc9\xca\x9add\x9fsA\x98\xf2\xd3+\x07\xff\x19\xb9\x10\xad\xe9\xe5 \xeeH\xe2\xf8(\xa9\xec\xf0\x05#YN\xf6y\xc1*\xa03\xb6\xa4\x12\xb9\xa0s?\xb9\xea\xdd\x95\xee\x1f\xb8\xd4\xedU-\xaa\x7fd\xe5~\xad\xdd\xc8\xd5^\xb2\xd6\xc6%[y\xdb\x15\xad\"\xbe\xafTb\xb6\x81\xe3\x86r\xc2\x99xJ\x12\xc1+\xbc\xc6I\x99\xe9\xc6\x1ck\x82p\x93\xf0n\xfb\x08\xd8\xf5\xae%0A\xbb\xde\xc7.?\x7f\xd9\xed\xe4\x08Xo\x0c\xbb\xdf\xb1\xfb\xbd1\xec~\xc7\xee\xf7\xc6\x16U\xd7LQ\xd6LR\xd5`\xf7\xfb\xb1\n\x9a\x19\xea\x99E\x943\xd3U3\xd8\xfd~\x8cJf\x8aBf\x86:\x06\xbb\xdf\xb1\xfb\x1d\xbb\xdfC\xd5-\x8b*[\xe6\xa8Z\xb0\xfb\xddv\x9aW\xbd2A\xb9\x12\xb2oz\x8ab\x05\xbb\xdf\xe7l \xf7)R\xb0\xfb=\\y\x12\xa8: Q\x9c\x84\xa9M\xb0\xfb\x9d\xccT\x94LP\x93`\xf7\xfb\x02j\x11\xafRd\xaeJ\xc4:ob\xf7\xfb\xc0\xb0\xfb\x1d\xbb\xdf{\xb6\xc4N\xe4P\x05\xc7d\xf5\xc6$\xe5\x06v\xbf\xcfTh`\xf7{e!\x01\xeb\x0d\xc6n\xa5\x91d/4Km\xfd\xd6\x04\xad\xdf\xd0\xb4\x83\xf4F\xbd\n\xdd\xc4\xd9i\x12\xdf\xf3\xed\xaa\xc2>\xadk\\n\x80\xb7\xc6\x7f\xfc\xb4s\xf1S-\xf8P0S5hM\x92\xd5djT\x01{*\xa2]\xbfao\x93k\x96\xc9\x94\x06.\x89\x05K\xd9\x08\x02\xce\xae\xd8\x9d\xad\x9c=\xc2n\x90:5S\\\xa1\xe2\x15(\xb7\xa7\xa1\xbc\x06e\xd6\xfc]9+\xb7=\xaf\x9e*\x81\x1c\x96}L\xfd\xad\xac\xa9\\\xe8E\x16\x14{\x91\x90\xac!L\xd0\xb2B0\xe2\x15\x83\x91\xb9\x820kj\x08\x13\x840A\x16\x9b,*#\x93\x85e\x04a\x82Fm\x8e\xe8\xcc\x9a\x18\xc2\x04U\x860A#\xf6\x91\xc3\x04\xb9#m\x0c\xe92a\xb7\x82e1'\xb4\x8e\x16$vd\x9d\x8b\x9dj:4\x8e\x0b\xc6\xb9e\xf3\x95\x99 \xaa83\xb2\xef\xd4aeF/\xb8\xa8\xc5\x0f\xb2!nY\xc6x\xc2\xf5#QW+x\xaf\xff\x1e\\\xdfq\xef\x18]\x9b+\x02N\xf7\xe35\xfd \x02qn\x94!\xceMs(\xb42\x11\xe7\xa6\x89sSII\xe6\x87\xbb\xe9*b\x10\xed\xc6\x18\xa2\xdd \xdaMc\x88v\x83h7\x8d-*\x12\x99\"\x10\x99$\x0eA\xb4\x9bc\x85 3D \x8b\x08@\xa6\x8b?\x10\xed\xe6\x18\xb1\xc7\x14\xa1\xc7\x0c\x91\x07\xa2\xdd \xda\x0d\xa2\xdd\x84\x8a4\x16\x15h\xcc\x11g \xda\x8d\xed4\xaf\x08c\x82\x00#$N\xca\x14\xe1\x05\xa2\xdd\xcc \x18\xe3\x13V \xdaM\xb8\x80\"P<\x11\"\x9c\x08\x13M \xda\x0d\x99)\x8c\x98 \x8a@\xb4\x9b\x05D\x0f^\xc1\xc3\\\xb1\x83u\xdeD\xb4\x9b\x81!\xda\x0d\xa2\xdd\xf4l\x89\xc8#\xa1B\x84\xc9\"\x84I\x02\x04D\xbb\x99)4@\xb4\x9b\xca\xc2\xa3\xdd\xb4k2Q\x88\xba3p5;\xdeEQz\xe3: P\xcb\xbc(\x18\x08\xd4r\xc2\xca\xf5\x87\x18A\xa0\x96%j\x11\x81Z\x10\xa8\xe5\x93\x0b\xd4RT\x81Z\no\xa0\x96\xa2\x17\xa8\xc5\x15\xa6\xe5i\xad<\xab\xe3\xb5\xd4\x8c\xed\xc8x-\x05\xe2\xb5\xf4\xcd'1A\xbc\x96\xe19\x01\x1b\x82C\xb0LeS\xa55\xce\xc4\xc6\xf9\x8a\xc3I\xb7\xb4\xc4\x86\xf8e6d\x86\xd4\xc6]\x00\xc4k\x99+\xbf!\x93%8\xce\xa4\x10\xaf\x05\xf1Z\xe6\xcat\xc8<\xa9\x0eYJ\xaeCfIv\xdc\xdd\x01\xf1Z\xa6Ix\xc8D\x19\x0f\x99'\xe5\xf1\x0d\xc1ar\x1e\xb2\xac\xa4\x87L\x90\xf5\x90\xe9\xd2\x1e2C\xde\x130d\"^\x8b\xb6\xc9\xd2\x1fgj\x88\xd7\x82x-=[F\"D\xc2\x95.$D*D\xa6\xc9\x85\x88\x8fa\xcf\x94\x0d\x91\x80t\x03\xa2o\x1c)!\"\xb3*7\\JD\x02J9CRD\xe6\xca\x8a\x887\x90\x84_^D\x16\x96\x18\x91\x85dF$\xac\xc5\x1c-7\"\xe1\x92#\x12(;\"\xc1\xd2#\x12\xd6\xa0\xa6K\x90\xc8$\x19\x12A\xbc\x16\x7fP\x13\xe7a\xef\xf5\xe1R%\xb2\xa0\\\x89\x84d\x0d\xf1Z\x96\x952\x11\xaf\x9c\x89\xcc\x954YSC\xbc\x16\xc4k\xb1\xd8dY\x14\x99,\x8d\"\x88\xd72jsdS\xd6\xc4\x10\xaf\xa52\xc4k\x191\xc4ky \xf1Z\xd6w\xad\xcc\x0d\xdc\xdd\x88\xd7\xa2\x0c\xf1Z\x9aC\xa1\x95\x89x-\xadx-\xc52\xf1Z\n\xc4k\xe9\x1a\xe2\xb5 ^Kc\x88\xd7\x82x-\x8d-*\x12\x99\"\x10\x99$\x0eA\xbc\x96c\x85 3D \x8b\x08@\xa6\x8b?\x10\xaf\xe5\x18\xb1\xc7\x14\xa1\xc7\x0c\x91\x07\xe2\xb5 ^\x0b\xe2\xb5\x84\x8a4\x16\x15h\xcc\x11g ^\x8b\xed4\xaf\x08c\x82\x00#$\xd2\xc7\x14\xe1\x05\xe2\xb5\xcc y\xe2\x13V ^K\xb8\x80\"P<\x11\"\x9c\x08\x13M ^\x0b\x99)\x8c\x98 \x8a@\xbc\x96\x05D\x0f^\xc1\xc3\\\xb1\x83u\xdeD\xbc\x96\x81!^\x0b\xe2\xb5\xf4l\x89\xd8\x19\xa1B\x84\xc9\"\x84I\x02\x04\xc4k\x99)4@\xbc\x96\xca\xc2\xe3\xb5\xb4_q\x11\xaf\x05\xf1Z\x10\xaf\x05\xf1Z\xe6\xd5\"\xe2\xb5 ^\xcb\xbff\xbc\x965\xcd\xae\xeap-k\x9a\xd2,b\xfc\xfc7\xa3gs\x04jy\x99\xa6\xaf\xcc\xe9*\x8b\x95.\xc0\xa4\xa1\xdeI\xd2\x94D\xb9\\\xd9\xcb\xa6G\x89\x1cPSFh\xa4ZV\xf5\xd4m\x0f\xe2?d\x8b\x89h\x9a\xb2\x98l\x8a|Oh\xa6\xa9\xc5>\x8f\xcb\x94=\xd5pG\xab\xa44\x85\x88\xf2\x8c\x97\xf2M\x90\xec\x92\xed\x8e\xd0\xbd\xbcM\x9d^\xbei*\x7fK\xb9|\x9aB\xbd97\n5\xf5r\"\x1bp\x16\xe5E\xc1\"\xa1\xf7\xe4W9\xedD\x88i\x95\xdf\x1c~\xb0\xf1a\xaa\xc7\xfa0D-1\xcb\xf2\xfdl\x9c\xa3\x1f\xea\xcc\xcbC`\xca\xeb\xf6G\xc2\xaa\xcf\xc7\x00IX2\xa1Oa\xc9U\x9f\xb6Yk?kjFK\xe8\xe2\x82d\xf2:P[H\x155cI]I\\\x14e$o\xd5\xe8*UX\xa6\xac\x1e\xa3e\xeb\x1dMM\xb5\xe8\xbc0RI\xcb\xce\xb3\xa6\xbd7\x0f@q\xb3+\x96)\xbfDGPl\xee\xe9\xea\xcb\xfa\xd1\x99\xf3\\\xbd\xa3QH\xf7oky\xdc\xce1\xb92\xe0Se\xc0\xa7\xcd\xa1\xd0\xca\x04>U\x0b\xcd\xd6\x82\xa6~/m\xf7\x10\xf9\xaaY\xbf\xa0*\x87\xccp T\x99\xaa\xc3\xea\xd5\x9d*\xc0\xfbv\x11\xe1\xbd\xea\x18\xbcW\x8d\x85-\x1b\xaas\xe1\xbd\x1a7x\xaf\xe0\xbd\x1a1\xdf@\xa1\x0d\xde+x\xaf:\x06\xef\xd5\xc0\xc2Z\x12\xbcW\xf0^\xf5\x0c\xde+x\xaf\xc6\x13\x83\xf7\xea8\xefU\xe7E\xd3\xeb\xca\xea%'\xea\xf8\xc2\xa1\xae,r\x11\xb3L$\x11M\xf5\x84\xe3p\xa7\xadK\xb9\x90\x88Xr=\xa8\x03=\x03\xd0*\xc0\xa7Y\xf5$\x99\xf2\x180.\xe01\x83\xc7\xec\xd3\xf0\x98MUw\xcd\xf7\x99\xa92\x9a\xd3\xc7\\c\x97\xeax\xc7%\xd6T\x8b\x1c\xdaoUz&@\xef\xa8\x07\xec\x15\xcd\xaet2\x8f\xaa\xd2\xa9\xbb\x1d\xa9[%z\xc5>\xa8\x94\xc6\x8e\xf0\x9fq\x96\xc5+\x96\xd1u\xcab\xd7t\xfe\xaf\xe0\x00s\x16S\x9bN\xa7/\xf5\xecZ\xd8\xf2\x85\x90\xf7,\x8b\xdf\xe8[\x92==\xf0^\xcf\xa5\x9d\xba'\\PQ:\xb6\x95\xde\xec\x98\x8a\\M\xeb\xd1\xc0\xee\xf3\x90 \xcbTm\xfb\xa0\x83\n\xf0\xad\\r\xc8\x17\xab\xf8\x05\xf9YGcl\x97(\xc9\xaa\x96\x9bp\x12\xd7\xe7\x9e\xd9r\xf5]^\x90-\xcb\x18O\xf8S\xb9\x12\xd3\xaf0\xec&\xbd\x93+VY\x01\xed\xda0\x81v\x87b\xd7\xc6Lb\xa6qY\xef\xfb^\xe4\x05\xdd\xb2\xa7$\xcd\xf3\xab\xf2\xf0T\x85\x90\xdd\xd3,9\x94\xa9v\x1b\xa8\x1e\xa6\"v7\x9b\xff\x12\xdb\x93\xc8\xf2\x9bJ\x8d~\xc5\xd8a\xa8\xb6m\xec\xa5\xea\xbc\xddE\xe0\x1fM\xc8q%sf\xb7 \x17\xdau\xb0\xa6\xd1\xd5\x0d-b\xdbm\xa3|\x7f\xa0\"Y'i\"\xeed\xb2U\xe97I\xcaF\xdfU\xcd\x92f\x15\xda\xc1\xc7\xda|\xc0*Q\x0f\xc4\xa3\xb1<\x87\x84\xb3\xdeZ\xa2\x07\xf9\xb1\xd1R\x0dzX\x98aav\x9f\x0b\xb3I+\x9ca\x87\x1a[\xe7\xb4\x87\xca\xf6\x07\x10\xda\xbf\xb3L\xc8\xdf\xabvj\xebm\x1f\x9ao\x14\x98\xdd\x11\xa2,2\xde\xf1}r\xfd6\xb8\xa3\xd7\x8c\xf0\x03\x8b\x92M\x12\xb5\xefU'\xc6\x99\x10I\xb6m\xef\xc2x\x99\xddu\xfd\xa8\xfa\xc52g\x9cd\xb9I\x936\xa9\x9a\x14\xf4\xae\x1a3\x90\xf7\xfbk\x93\xb8\x9e#\xce\xc6F#=\x14\xabd\xe4}\xda\xbb\x1c\xd6w\xad/3x?\x9d\xf0Gs\xb8\xb3J\x1c\x16\xfe\xc1.\x13\xddC\xf4\xc7\xe8\xa4\xce\xf5\x96\xb7\x8fy\xd6Y\xbe5V\xc8\xf2d\xb1\xb5U\xf0\xba\xca\xba\xa6\n\xde\xe8?Z\x94\xe9\xbb\xff\xf5x\xa0\x16H#\xe9\x99\xb5\xc5X\x19\x0e\xb9Z\xf2\xc8\xb5[+8>\xef\xac\xb5*\xd7\x88LG\xed\x9f[\xf4e\x03\xc1\x06\x10l\xa0g\x0f%\xd8@k@ \x0cL\xdf\\\xd1KoJL\xfa?\xd6'a\xa5\xdb;\x8a\x95\xee V\xba^\x17\xa4\xf5{j\xbdnc\xe6\x0e3\x84\xd6\x8bC\xf3\xf3]^\x92\x1b\x9a \xf5\xd2M\xca\xc3\x19\xf9\x81\xc9e\xa4\x1e\xfcD.\x97\xcc\x9d\xe4h\x9a\xf6\x97\xc3d\xa6\xef\xb2\xff\x90G\x1e\xaf\xa5\xee\xa2TK\x8c\x8c\x85[)SG\xc6D\xccA\xacM\x19\x11kVj\x13\x01\x1b\xbc\xe8\x1c\x00SF\x85\x02\xa2b\x8aV\xacGBN#L\xe8\x18?\x8b\xf1\xb3\x01\xddI\xfcL\xd7\x11\xb69w6\x1dk\x01\x8c\x037\x8b\xac\xe5\xda\xdd\xa9\xb5\xe5/\x9a?F\xeb\xfe@>\xd1\xba\xbfS\xeb>\x86\x92\xec\xa6<\xc4P\x92\xa0[\x16\xae=\x08\x12CISH1\x86\x92b(\xe9\xf7\x10Jbf\x98C\xd0\x88\xdbkoW\xfd\xd0P\xebU\x91\xb1\x1ez`\xfb\xcc=+\xb2\xab\xe2\xb7O\xd6\xad\xa2sF\x8c8t\xc6\xb8\x8d\x9fG\xe4.\xe36bV:\x9d\xbb\xc4Ik0\x93%\xbd;\x7f\x1e\xef\xcb\x80x\xcc\xfa\xb4\x8eY\x9fm\x90\xa2\xc4\xa7\x15\xce\x97\xb8\xd8\xa6y\xd5\xec\xach\x91\xa4\xfc\xaa\x0c\xfd\xa6\xdaY\xe9\xcf\xbey~\xc6\x9a\xeeh:\xde\xb3\x0d\xca\x97\x19.D\x15\xe7z\xb7#EU\xb2\xe7\x9b\xbdx\x99\x8a-\xad\xe3z\xa3\x96I\xf3\x7f\xd0n\x97Q\xeb3%\xf9 ,\xf6;T\xb2\xa3\xcee\xc36+\xae\x95\xe1\n\xd3\xc3$U\x8fM\xfb{^\x9d_\xb6$\n\xefvQ\x1e7(K\x97L\xf9\n\xee\xf0\x92\x85\xadN\x84\x0d\xcb\xe2\xc0\xbb\xdd\x89P\xa3'\xb0{\"J\x90\x95\x15)\xb0\xd2ZPW\x87\xfe\xab\xac\xe5\xdc\xdb\xaf\x1b\xd1\x89\x1f?\xd9\x0d{\xa4\x8a:\xf0\x19\xfa\x1f\xba\xb4A\xe5F_\xf8\x11\xe0\x0d\xa9\xf0S^\xa8\x89\x99\xa6\xcc\x85\xb7\xac\xf9F\xd4\x14\xed\x97\x12dF1{P?\xfc\"n\x91\xe6\x9d\x8d\xeb0\xd4c\x1f;\xf1M\x06\xc8\xe0\xe3\xc1W\x7f\xf3\x85\x05\x8fR\xc9;.\xe4\xf3\x9a#\x85O?KsG\x9d\xba\xb8\xa1c\xa4=\xf7\x05\xa8e\xba/\x95;\xa4\xc7\x00*\xda4K\xb9\xd9\x92\xcdE1{\x182\xf6\xd3p/\x97\xc4\x90h\xcc\x1c9\x1c\x04\xb7\x01\x90\x9cp#K;\n\xed\x08\x0c?\xa3\x1a\x90xj\x1a\xfc\x1aOM\xb6\xa5\xd1\xd23x\xff\xee\xf5i\x81KR\x17\x89\xb8\xca\x84\x19\xf9u\x9e\xfe\\\xe3l\x0f)\xbb\x01`\xd5@\x99\xe8\xec&\xba\xe80\xbfc\xa0\xc4E\x8a\xb2\xf4_\xd8\xb0m\xb0\xc9\x9f\x90\x0c\x16\xf5j\x85\x0b9h\xa2\xaa\x1e\xef\x1b\xb3\xfa\xa5\xb5\x0fHgf\x00d\x18\x99.\xef\"9\x86\xa3\xd3#H6\xa8@I\x85\x0b\xbe\xbbe\xa8\xac\xa0\xc4kv\xb7\x84X\xa1\xef\xdf\xbd~P\x0e\x01o}bL5\xf7@\xe8\xbfJ\x9b[\xd5\x19\x83\x82\xa1\x8cJp\xd9\xbf*\x86J\xf2\x18\x95\x8ae\xde\xd2\x15e\xe5tM\xc8:\xc33&\xb3E\xbd\x9a\xbd\xa8\xf9\xf6~\xf5\x90\xf7\x845\xdb\x06\xd6\x94\xf7\x1bqB\x90\xa0\x9c\xe4\xecF\x07\xba\x86\xf4_f\x17\x86\x9dP\xd1\xb2}\xfchvD\x95ZN*@I\x82w\x15^>4\xed\xbcg9\xec\xa8\xb0\xd3\x04\x9f@\x85\xd1\xb6l\xae\x9c\xd9\x15\x98\x9e\xf4\xd2\x8crJ5\xe0\x06\xc3\"\xcd\xd1\x81\xc2m\x89%\xa3\xefw\xb8l\"\x17\xca\xca\x8a\x9c\xb8\xae\x83\x94\xb9\xd0\xeb\x12\xcbh\x11\x9dH\xf8#\x1b\xeag\xf9~\x06\xdf\x91\x0f\xf8\x06\x17'F\xa3\xe4\xfd\xbb\xd7\xa5p\xc8\xc9\x1a\xab\xdag\x99\x06\xc5p\xb5\xa9\xaa\xdd\xd5 \xffoyu\x02\xa4\x80\x9c\x88_\xdb{\xd6\x08[\x9dT\"\xfa\x06q\x05\xf5\x0e\x10\xdf$\x0c\x8f\x157\xf2p\xce\x8ap\xb2\xa9\xc58\xaf\x88\\Y|Wa7\xd2\x94\x80\xf4\x05\xceW$\xcb\xc8\x87\xf2\xa9al\xbf\x84\xb3U\xdb#:-D\xd1\xfce\xd3i\xb6\x01\x96e\xbd5T\"\xa7\x0d=\xcb\xe1\xbb\xcb\xcbs\xf8\xf6\xe5%\x90\\.A\xbe\xc6\xf6\xcc-\xaa\xbf\x87\xee\xc7\xe1\xb2\xb8\xdc\xef\xf0O?\xfe\xa4}\x01$\x02%\x17\xf3\xad\xb1WIA\xbb\xb0\xac\x13L\xcdg\xb6\x85\xa9\xf0;\x9c\xbe\x84g\xad+\x83\x07e\x10\x95\x19G\"%(\xa1\xba\x85\x159o\x027\x0bTbU\x95PN\xc4T^\x1d\xf8$d<\xb2\x12\xc0\xd5\x06o;kh\xc9\x17\x11\x92]\xa2\xff\xbe!\xcc\x19\xa2\x9fX \x18d\xea\xa3\xc0+R\xe0\x13\xd9@\xbf\xc4y\x8e\xf1R\x86_\x99\xca+n\x0c=a}\x91\xf7H \xe3\xa6\x9c\xc1\xf1\xfb\x12\xc3\x0d.\xca\x94P\xbb\x86MO\xaa\xb3\xf8\xfcD9Z\x9bz\xbf(0\xba\xa6:H4<{h3\xf8Y\xecfU\xe7 _a\xb4\x1fBw%uQ0\xb8B\x17\xeb\xa4W\x97t>\x12\x16\xa0\xd7C\x9c\xc4^\xb6\xa8WP`\xba\x13a\xeeX\xe2Am\xfa\xd1\xe6\x10\xd6\xacKmS\x0c~\x91\xf3\xb2\xce\xa6\xdb\x14iK3>\xff\xd1.-g\x89*g\xa1\xa5\x0b\xb6RK\x0e\xb7\xe2@\x83\x81\x96\x82ca\xfd\xf2(9_\xda\x0f\xf5\x9b \x0b\x89-\x0cJ\x89\xa3!\xd2\xaa\x13\xc8\xe0G\xd2N\x01\xeb-\xca\xab4QB\xe5n\xc5\xf5;$W+\xe9{\xaa\x8e\xe8AW\xf8\x19[\x03\xe7\xc0\x8e\x11\x9b;Z\x90\x1b\xfd\x9c\x16\"\x10KA\xd5}\x17\xce\xae\x9e\xe5\xfb\xab\xe6\x162\x16uj\x0e\xe2z\x0e\x95M\xc9=\x02eDL=@\xea\xa1\xa5\xdayp7d\xc7,\x1c\x98\x7f\x8dU\xa7\x99\x9a\xe7r\xe1d\xe9\x82\xb1\xdd\\\xbe\"\xbc\xb8T?\xecPr}Z\xe7\xf4?\xacD:\x9b\x17\xea\x15$6z\xbdaCVPW\\\xb1I\xf5PR\xc5\xda\xb9\xabm\x8ds\\\xb0\xea\xcc<<%o~Q\xb6G\xf9\xe1C\xa8\xfe\xdeK\xe1\xd2x\xfc\x14\xce)\xffT/\x88\xae\xa0F\xe8i\x0e\xcf\xff\xf8G\xc36\xf9\x8a\x10X\x11\x02_\xc3l6\xfbw\xedc\x94\x19\x94\xef\xf5\x0f\xa0|?\xa3l\xbc*\xc8\xf6xE\xc8C\xfd\xa3\xb3\x99~\xffKWpL\x9bz\xcf:rI\x8e\xff@\xdbz\x08\xbf\x18t\xb8\xa9\xbd_\xcd\xb2{b\x91\xdd?\xd0\x0d\x9aLx\xf05\xb3\x0d\xe9W&\x90PZ\x1e\xbf\"d\x96d\xa8,-\x02\xe2,\xd2\x97x\x1f;/\xeay\xf8U\xfb\xcb\xe9)\x9d\xd6n<^\xa0-\xa6\xa6\xd33\xce\xed\x1aW/\xb8K\xe1,/+\x94'\xf8\xf8a\x08\xf3\xcavL}1\xce\x82?Yf\xc1\xf9\xbe\xda\x90\xdc0\x0f8\x8f\xaf\x089\x9e\xcdf\xfa\x8d\xad\x99\x03\xc7\xc6g\xd8:b3$t\x82\xd0F\xce\xb8\xc4_\xbc\xbcx\xfe\xee\xec\xfc\xf2\xed\xbb\x87&\xd7r\xbb\xe6\xcc\x1f\xe6\x9f6J\xf3\xcf\x16i~K\xf4\x82d\x92|\xfa5\xfca\xb7\x98\xbd\"\xe4\x97\xd9l\xa6\x9f\x87\x94\xe9\x13jP\xd37P\xbe\xdf-fo\xf0\x07\x0b\xff\xe9\x8a\xbd\xf1o_C\x9ef\xc6\x89g\x14\xb2ay\x98\xdf\x1bt\xd0\xd0\x8c\xe0\x94\xf7m\xf6>\xdf\xa2\xa2\xdc\xa0\xec\x92p\xe51U7\x94\xbf]2xQr\xdd\xecS\xf2\x10\x06\x8b}k\x92\xca\x9d\x95\xa73\xa8O\x04\x12\nY\x97\x1a{\xee\x81\xc2\xdc<]\xd5Y6c?PS\xfe\x81\xbc\xe8U\xda\xb8ln\xe9\xf6M>\xe7\xd4\x1fk\xb6\xdd<\xdb7\x17T\x0d\x1d)\xcd\x11\x02\xd0\xaa\xc2*\x9c?'\xe6\xe3yp\xfa@\xfd)a/H\x96\x99'\xa0 C\x1c\xad\x08\x99-P\xc1:\xfb\xf1t?\xfb\xd7\x11\x97\xe2^s\xe5\x03\x18\x8e\xe9\x8c\xd5#\xda\x86\xceT\xf8\xc7\xc5\xdb7\x9a\x9f\xe8H\xd3\x9f[\xaf\x13\xb7\xa4 \xd5\"\xc2\x0c\xe4'\xdb\xbal\xdc\xdb\xeb:C\x079\xd1\x9c\x0e\x9b\xa9\xd8-\x14\xad\xe1v\x02x\xbb\xc0\xec:0\xa1\x15N\xf8\x81D\xd5\x9c\xee\x1e\xe0\x8eQ\xc5\x11NW\x7f\xa7\x02\xba\x12\xee\x94\xc6p\xed\x0e\x81z\x19\x08\xb5\xf5\xd4p\x04C\xc95\xd5]\xadK`\x95fX\xbf\xdbH]w\x8e\x8b\x92\xe4\xc6\xc5)|\x91\xab\xb4(\xab9\x1b\xc7\xaf\xe1\xb1\xbe\xe5\xe6\x05:\xf5\xe4\xf3O\xbc\xf7=J&\xae\x8e\x98,\x8f\x9e\xc2\x91jm\xf6\xc50\xe3\xbd<:1\xb5\xc7\xfa\xf7\x06mi\x9b\xff\xc1\xbb\xf0\x9f\xc6\x17h\xff\x06\xcf\xfbv\xf2l%\x8e\x9c\xfd\xb9\xd6\x84P>\xe0,{t\x9d\x93\x0f\x1cW\xb7A% Sj _C\xaa_\xfaS\xfe\x84\x1fa\x06\xeb\xa0\xcd\xf8\x12\xec\xd0 \xacK\xc2\x14\x17\xbf(\x7f\xbcb\x8bQ\xce\xf3\x0d\xc9\x96]\x08\x1f_\xcai\xde\xac\x0f\xe0>PuS|\xc9\xa8\xbf\xc3X\x985\x9b\xfa1\xd5^R\x84\x07\xce1\xe93\xfe\xe9\xc7\x9f\x1e\x1a\x16\xd2\x14s\xae\xffA\xf3\xb4c\xa2\xa2M>\x9e=y\xfc\xa4<2L!\xfe_#|\x0bU]w\xe1h\xdc\x15\xd83Jz:q\x82\x0f\xca\x96y\x80u\xda\xb6u\x11\xd8\xa67E\xdfi\x11\xf2I3\x0e\xfc\x02\x177i\x82\x1d\xa0k\x8b\x8c$\xd7\xe5i\x86*\\\x8a\xd8\xa6\n\xbd\xf6-\xae^\xb3G\xbe\xa1\xcf7W\xb2\xb1\xc89\xfb;\xb0\x86\x94\x18\xeb\xfe\xbb_\xc8\xfe}\xa2\xc0-\xd6\x8fy\xaa\xbd\x98,\x08\x1a4\xe2\xf2x\x8b{m\x87\x8aj^\xe2j\xbe\xc1h\x89\x15\x01a\xb0q\x0eV\xee)\x19Rj\xc1\x1aE\x96d\x02&H\xd2\x8b\n\\\xc4\x05v\x915y\xaf\xe7\xa8\xa8J\\}\xc7$w8\xdc\xfc!6i\xcf^\xa8f\x89b\x8a\xf0w\x1et\xef\x92\xdd1_5\xb3\xb0\xaf\xca\xe5\xf5\x9c\xbdz\x05i^V\x18-\x1fL:\xcdnw\x0e\x88\xc8\x82atx\xf7\xf9-\xfc\xac\x9f\x0c\x87h\x19M#\xb6\xcd\x85/\xd0\x0fH\x97\x9c\xe6\x0e\xb8\xa5\x80sB\xbb\xdd\xdd~\xd2\xc5]\xcd\xe99U\x8fyY\x97\x90\xa0\x1d\xcfM\x10\xb1Y\xf1\xe7\xa2\xce\xc4\x15\x9d\xbb\x82P\xbdjf\x115\xe3\xc9\xe3\xc8\xf4\xff$\x1b\x94\xe6'\x06\x0fF\x17\x14Lm\xbe\xe6%\x0eRk A\xa5<\xc4r\xae\x0c\x0dJ\xb7\x7f\x1b\x18|`\xb8\x17\x1a\xd8M\x88\x18\xaa\x02\xe5%\xb7\x01\xb7(\xd9\xa4\xb92\x16@\x89q\xa7\xd4\xfe\x92\x1c\x86T\x07\xda\x92\xe4\xd0\x84\x9b\xae\xac\xd2\xad\x01\xd4\xe9\xf5\x99%\xaa\xf0#\xda\x9e\xe6Iv\xca\xd2\xef\x8d\x92&\\\xd1\xe6\x8d\x00\\;\x08.\x1b\x02'\xa7\xbdT\x92SO\xc1\xb9\xb7`\xdfc\x9b\xc7\x9c\xf6ZI.\xf3H\x92]\xe4\xe0#vp\x17\xbd\xe3\x9ej0C\xb6\nX/xBK'\xf0\xc0\xaa\xaa\xac\xb8%\x8e\x04 D\xb0\xa1,\xae\xd0\x92nK\x90\xba\xe4\xd6\xe6\xbc\xf9\x030\xed\xc4\xb7\x1a\x92v~95\xc9\x10\xf3\x1bR\xe1\xb9\xbd\x13\x9c\x1c\xb9\x00\x0fN(1\x1e\x8c\x89\\\x92<\x18\x00O&@6\xef\xf4\xa4\xb3*\xea\x12\xcekm\xa5\xc9Cz\x04\x17g\xdf\xbey\xf9b\xfe\xfd\xc5\xb7\xf3\xcb\xff{\xfer\xfe\xfe\xcd?\xdf\xbc\xfd\xef7#Z8\x7f\xf7\xf2\x87\xb7\x97/\xc7\xb5\xf0\xfc\xed\xf7\xdf\x9f]\x8ej\xe3\xed\xf9\xdb\x8bg\xaf\x1d\x9b\x9095#\xe5\xe1\xae\xef\xfbt\x91\xaes\xbc\xfc\xbe\\_6\xb9D\x95\x00\xd8\x95\xec'\xe7\x96:\x98\x8e\x9e\x9b\xc5\xa8\xad\x07\xa4\x1d\xd3\xa7\xf0\x03\xa9\x8cn\x91\x01\xe9\xc7\xe5)\x9c3+\x07en\xcd\xd9\\\x19}\nX8>\xc7SN\x05\xa9s\x83\x07\xa2O~geN\xa6\x9c'5\xd9\xfd\"}\xf2\xd4u\x10\xa0\xef\xc0\xf98\xdfR\xc0\xf0\x81\xabI6$/_K\x9f\x02\xa4\x07\x81\x12\xa4\xe4\xe8\x95\xe9S\xc8\xbc\x93\xe4\xbf$$\xf9\x0e8\x84\x0f:\x84\x0e\xbc\xa7\xa7\xa7ON~\x9f>U\xe9\x16\x97\x15\xdaZ<\xf5-\x05\x08\xc4\xd5\x89\xda\xa7\xc6\x95a?p\xf6i\x04\x87\xceC\xd52\xa7)\x0c\xa1\xa6\x90y\xef\xafo\x9b\x82K~l\xdd\xae\xc4\xc2\xcd\x10\xba\xbb\xb7}\x92\x19\xe9\xcd\x08\x88\x1ag\xa6,\xa3>Q\xdd\x9a&\xe9\x8e\xa1\xeb\xd3\xbc\xe3\xfd\x90\xa5z\x9d\x9bBeI\x92\x945\xd4\x0b\xf0\x9b \x7f\xacpn\x0e\x15\xf6\xe93\x18\x9f\xa6O=\xfc\xa79\x9f\xacO\x9d\xa0\x95(:\xca\xb3\\x\x0c\x0esO\xb5\xfb\xd0\x08\x93SsB\x1fR\xc3\xfe\xfc\xb7\xb8x\xda\xc1\x19.#\xe7v\x0e\x96\xdbp\x19\xb9\x8f\xcc\xc1zS,#\xe7\xc6t\x13\xc5k\xfcC\x84\xcb\x04\xdb@\xf7\xe8\xd9hW`z\x9e\x87\x1e\x1b\xf4/N\xed1G\x7f\xeb\xbe\x07\xc5UBj\xea\x1c\xa6l\x8f2w\xc3\xc2eb{\x1a\x91\xbe\xc6ct7\x0c(\xba\x1b\xa2\xbb\xc1N\xd1\xdd`{\x1a\xa2\xbb\xc1\xdf\xb6\x88\xee\x06\x03\xf9/ I\xbe\x03\x0e\xe1\x83\x0e\xa1\x03\x1f\xdd\x0d\x92\xa2\xbb\x81\x93\xbf\xbe\xfd-\x9e\x98\xa2\xbb\xe1\xd3\x1e\x9f\xe8n\xf8,\x06'\xba\x1bT\x14\"\xdc\xcf\xd1\xdd\xc0l\xb5\xf9\x0d\xa9\xd2|=\xdf\x91\x0fn\x86\xa5\xe7\x04\xf7\xb3\xcf\xda\x8d\xf4\xd3\xe0\xc7\xcb\x1e\n\xe4\xc4\xd5\x0e\xf2\x9d\x96/$\x94\x86\xce\xcd\x97\x02H\xd3\xc2\x9a$\xb4\x86\xc1\xf3\xac\x8d\xb5\x0b\x9e\x9f\xf5\xa1\xfa@h[\xab,MX\xb5`:\xb3-s.\xa3\xa7\xe3y\x92\xa58\xaf\xe6\xa8\xaaPr}\xdf\x00\x9fN\x0f\xe6\x0e98\x9cX\xb6\xe7'\xe9\xc95S\xd5\xbbaSf\xab\x9a\xfc\xf2]\xd5t\x1f\xe2w\xcd\x98U\xd3}pl\xcf\xb9U\xd3}\xf0\xea\x91\xb5\xab\xa6\xfb`\xda1\xefWM\xf7\xc1\xb0_\xe6\xb0\x9a\xdc\xf3\x89\xd5t\xf7\xfd\x1es:wL`\xf6jS\x9f\xec\xac&nQ\xf8\xc89\xd0\x0c\x0e5\x7f?\xa3\x83\xa7\x17\xeeI\xd2\x18\xcb\xdc?./)\x9e8](P'p\x8a'\xce\xe0y-)|)J\n\x9d80~\xf2\xc0\xd8 t\xdf'\xce\xf6\x8ev_ r\xc9\x99\x93\xfc\xd5dM\xfdW\xd3\xa8\x852n\x99HM:_eHq\xdf\xb0\x0b\x8d\x9eh~\xd8\xf6>=\x82o^\xbf}\xfe\xcf\xf9\xd9\x8b\xf9\xab\xd7\xcf\xbe\xf5\xc4u\x0fi\xd8\xda\xb3o.^\xbeq\x87\xab\xf7i\xd8\x98'\xf6\xbdO\xc3\xc6\xde\x9c\xb9B\xe0\xfb\xd4\x00\xe2\xa7\x13[\xf8\xd1\x9b\x13_\xdc\xcbW\x19ZC\x9a/Y\xfc]\xde\x0c'\x16~PP\x86S\x8b\xd7I9$\xc4\xf6\xc2!\x05\xe3(\xfb4z\x9d\x8cV\xc7\x1e\xc0\x8cC\x9a\x8c\xfd\xb0H\x03'olY\x9f&\xebC\xd0\x10\x8c9lqz\xce\x8e;\x17\xe9\x9a\xe7\x92P\x1bM\xc6\xf5\x18\x9aJ\xd6\xd7 h:\xcd\x01\x89\xf6\xdd\x8f_\xe3\xfa\xc4\xbf\xd6\xaf\x1a\xd4@lX5#?/+w\xce~@\xa58\x16V\x1cB\x89D)\"\xaf\xb6Z/\x9c\x9b4Z\x1dQb\xe7\xe3^\xc0\xbe\x1f\xb2\xdb\xb7}q\x7f'\xd4\n\n\xb0\x80\x02\xa4\xc0)D\x16\x9c\x82\xf5\xf8(\x052By\xec\xea\xc5\xdcr\x17\xbf\x9a\x82\x85\x0b\xa3\x04L /\x9f\xfc\xe5/\x8f\xffw\xc8\xab#\x05\x0d\xe3\x84\x0d\xec\xe6\xd7d\xf7\xe4/\x7f\xbd~\xfc9\xb2?\xc6\";\xaf\x17Y\x9a\xfc\x13\xef{\x8e\xbdk\xbc/;\x17{\x86\xd9Qu\x89\xf9\x0d\x88?4\n\xc9\xb3\x15_\xe0m\x9fF\x0d\xca\x98\xc3|\xe3\x17\xde\x15))\xd2*x\x1d\xdf)\xef\x92k\x1ff\x03\xd5M\xa8\xa2 \xd4\xe3#\x84\x19\xbc.\x035x\xa0@a\x84Pa\x9c\xee\x1e!\\\x18#`\x18\xab\xb5\xef\x8f\xf1p}}k\xdaz\xac\xae\x1e\xa3\xa9G\x0cD\x98\xa6\x83)t\xf4\x9ds\x1d\x96\x8b\")\x90]?V\xe99\x8c\xe4s\xf7 \x98'W~\xdc,\xf6\xffBy\x95\xe6x\xeew\"\xf2; y\x9c\x80\xbc\x95\xbb\xbfJ\xf7\xde!=G\x80S\x80\xee\xf3\xde\x0f\xbd\x85\x05A\x02\x83\xd0\xdd/Hp\x10&<\x08\xdf\xeb\xee\x96\xcd\x90\x9d\xed\x16\xf6\xb4\xf0\xdd,L\xbd\x06 \xd9O\x99q\x1a\xb1k\xdd\x01\x8fa;\x94'c\x9e,\xf98\xc1\x039qup\xfb\xfaN_\xd3]\xf49\xcb\x05|\xc6R\x01\xc7f(\x8a\x12\xed\x9d\x9cYTUx\xbbc\xd9\x89\x15\x81mZf\x18-\x01\xf1\xd9\x93\xe6\x1d\x86\xf4\xce\x0eI\xf1\xa6Z{\x07\xc1}\xc3\x8bg%\xab\xc8\xc1G\xec\xe0.\xfa\xdb8+\xb9\xa7C;\xf5\xc8\xa9'\xfe\xc9\xcc\x0ei\xcbS\xb1\xe7\x9c\xf5:\xd5\x07\x87\xf2\xb0\xe6\xff\xc6\x9bj\x1d\xb2f\xa7\xfa\x92G\xce\xebT\x9ft\xccX\x9d\xeas~\xf9\xa6\xee\x99\xa5N\xfc\xb9\xdbj\xc3\x0f\xd33\x14\xbf\x9f4]\xa79\x12\x86S\xf3\x98\xa1%\xd1\xc0\x89\x10\x0e=\xd5 z\x1e\xfb\x06'\x9b?=\x11\x1c\x1b\xebV\x9e\xe5p\x89\xf3%.\xb6i^\x9d@\xb5\xa1\xbc\x88\xc2\xfaWT\xd4\xe5\xd5 ,\xeaJ\x1a\x82\x17/\xfeybh\xee\x0339opQAZAE\x86\xbc\x98X\xa1\xb6\xe9\x02W\x15.\xe0\xfd\xffq8\x10\xdase\xdb\x9e\xc5{\x7f\x199\xad!\xf7\x89\x1c\xef\xfd5\xd98\xf1\xde\xdfx\xef\xef!\xb9r\x02\xf1\xde_\x0d\xc5\x8bx\x04\xc5\x8bx:\x14/\xe2qz\xc7\xab \x85\x9f\xe7\x81\x93K\x0c\xbeOv/S\x9f\x15\x95\x81\xbcxX\xe2\n\xa5\x99BS\x9aL\x02\xad)`1\x01l[?}}^\x17Z\xe3\xcfAa\xd9\xd7\x14\xa7g\xf0\xfe\xdd\xeb\xd3\x02\x97\xa4.\x12\x0c9\xda\x8a\x85^\xe7\xe9\xcf5\xce\xf6@W\x7f\x95\xaeR\xe1\xe8\xa8x\x81Xm\x83\xfcn\xad\"EY\xfa/\xbc\xd4g\xf0\xef\nR\x91\x84d\xb0\xa8W+\\\xc8A\x9b\xf1+\xc3x\xdf`[\x97\x8d6\x02\xa4\xb7\xa62\x8cJC\xe90\x92c8:=\x82d\x83\n\x94T\xb8\xa0_\xc1\xec\xd4\x07%^oq\xde\xa8\xdc\xf7\xef^?(a\x87\xaa\x8d\xb65\xc6TS\x18J\xffU\xda\xdc\xaa\xce\xb2=\xfc\\\xa3\x8cJp\xc9\xe5+>\xc5$y\x8cJcm\xad+\xca\xca\xe9\x9a\x90u\x86gLf\x8bz5{Q\x17\xacD\xc2\xd5C\xde\x13\xd6l\xb9!u\xb6\x84\x05\xdd2\xb4\xed!HPN\xf24A\x19[C\xfa/\x1f\xe3\xd9zvBE\xcb\x8a?\x1c\xcd\x8e\xa8\xf6bW\xc9% \xdeUx\xf9p\xf6\x85\xfe\xf5\xb3\x1cvT\xd8i\x82O\xa0\xc2h[B]\xd6\x88\x8a\x83\x17\xcf\xda\xa5\x19\xe5\xb4\"L\x18\x8b4G\x85\xde\xe8f\xb7\xd7\xedwX\\#\xc7\xca\x01j\x1f\xe6\xbaN\xdc\x96X\x97\xdd\xaa\xc4\x15\xfe\xc8\x86\xfaY\xbe\x9f\xc1w\xe4\x03\xbe\xc1\xc5\x89\xd1\xa0z\xff\xee\xb54\xd8hS\xc6\xea\x81L\x83b\xb8\xdaT\xd5\xee\xea\x84\xff\xb7\xbc:\x01R@N\xc4\xaf'l6&(\x07\xc2V'\x95\x88\xbeA\\A\xbd\x13e\x99\x0d\xdf\xc5\xc5\x0d.\xb8h\xb6h'\xae\x9bd\x9cW\xa4\xa9\xcd\xcc\xdc\x95)\xbf\xe9\x0e\xe9\x1d\x8c+\x92e\xe4C\xf9\xd40\xb6_\xc2\xd9\xaa\xed\x11\x9d\x16\xb2&`\xd3if\xcc\x94e\xbd\xc5KC\xb1\xb7/\xe9\xe6\xf4\xdd\xe5\xe59|\xfb\xf2R\xde-\xf8\xfe\xddk\xbe\xc6\xf6l?\xd6\xdb\xa5\xd5\x1f\xbbb\x8bQ\xce\xf3\x0d\xc9\x96\xa2*0\xe3\x9c/\xe54o\xd6\x07p\x1f\xa8\xba)\xbed\xd4\xdfa,\xcc\x9aM\xfd\x98j/)\xc2\x03\xe7\x98\xf4\x19\xff\xf4\xe3O\x0f\x0d\x0bi\x8a9\xd7\xff\xa0y\xda1Q\xd1&\x1f\xcf\x9e<~R\x1e\x19\xa6\x10\xffo\x85\xd6\x9d\xb0\xc9#\xb8\xc0\xc5M\x9aP\xe9\x9d&\xa4\xdc\x92\xf2t\x81J|\xdaF\nOo\x1e/p\x85\x1e\x9f\xb2\xc8ey\xfa\x0bGb\xfd\xca\x1bY\xb7\xf9\xb0e\xbd\xdd\xa2b\xff\x14\xbe\xc5<\xdc\xf6\xcd\xfe;\xf6(\xfc\\\xe3\"\xc5\xa5\x88}R1\xaf\xd3\x1b\x9c\x0bL\x97\xd4Yd\x87y\x8f\xcf\x96\x87m\x88gd\xe0\xad\xd3\x85\x07O\xbe\xfa\xea\x81>z\x07e\x9d$\xb8,Wuv\x9ba;=\x98\xcb\x18\xcc2\x87\xb2\xf4\x08\"\xab\xff\xc6\xe2\xbdq\x02g\x199\x07+\xf7`\x07aUN\xe0+\x17\xd0\x95\x19le\x15\x17\xd8E\xe6\x08\xaa2\x82\xa94\x85\xe9\xc5;\x0f^P\x85\x9a\xa0\n/\x9f\xc2\x8e\xb9B\x99\x01wU.\xafy\x19\xe6+H\xf3\xb2\xc2h\xf9`\xd2iv\xbbs\xc0z\x03\x81\xef]\x03V\x9e\xc0\x89/p\xbb)\xc0i\xee@g\xfeX\x0b\xe9[\xeb\xfcO\xfdI\x17o('\xb7z\xfc\xd0\xaf\xafo\xeaj\xaf\xf2\xbek%}\xd7\x9a\xf9\xfd\x1a\xf8\x86\x06}\xab\xe3\xfb\xd6\xc1\xb7W\xbcw\x18\xd2;C8\x9bk\xd0{}\xc6\x06%s\xac ?\xe1\x8a\xb6\xa3n\x9d:\x08.\x1b\x02'\xa7\xbdT\x92SO\xc1\xb9\xb7`\xdfc\x9b\xc7\x9c\xf6ZI.\xf3H\x92]\xe4\xe0#vp\x17\xbd\xe3\x9e\x15{\xce%\xab\xa7\xfa\xe0P\x1e\xd6\xe2\xdd\xc6R\xb4~e\xb7\xa7\xea\x83k\xd1\xec\xa9\xbeg/y=\xd5\x97<\nVO\xf5I\xc7r\xd3S}\xce\xafX\xb4{Y\xe8i\xf8\xeb\x19s\x8eU\x9a\x0d\x95\x97\xa9\"\xb95\xd3\xbf\xfah\x15\xc7$\xd9\"\xd6]\xc5*U\xf02\x93/?\n$\x9d\xf4y1\xcb\x92\x87\x0e\xb8\xed\xf8wqS'\xf7^\xfc\xf1\xb1\xf1\xca\xce7\xec\x96~\x86\x0d\xcc2*4\xd8\xe0\x023d\x14S\\3\x80\xff\xc6\x0f\n\x0c\xffS\x97\x15\xa0u\x81\xb1\xb9\xbb\x02\nF\n:9\x98g\xd2\xf8}\x86\x19\xddb\x94\x8b^q\xd6\x9f\xedv\xdf\xa1r\x03K\x829\x0eG@\xe9i\xd3\xa5iW\xae>j )\xb6\xc4\x8f\x17\xd4\xbc\xef\xf9\xb5\x05\xfc\x9dY\xe2H\xe0\x0d\xba\x88~=\xeeK\xb7%\x98\xefW\x9c`\xce\xdb/p\x9cp\xe2[\x0dI;\xbf\x9c\x96\xf2n\xcc\xf9\x0d\xa9\xf0}\xdfB\xc9x\xd0\xa8\xa5>y0\x00\x9eL\x80l\xde\xe9IgU\xd4%\xb7$2I\x8f\xe0\xe2\xec\xdb7/_\xcc\xbf\xbf\xf8v~\xf9\x7f\xcf_:\xe6[\xb5t\xd8\xc2\xf9\xbb\x97?\xbc\xbd|9\xae\x05\xc743I\xaa6\xde\x9e\xbf\xbdxf\xcb:\x93\xd4d\x9f\x8d\x93\x87\xbb\xbe\xef\xd3\x05\xbb\x8f\xf4\xfbr})\xe2,\x1c`L\x15\x15\xbf\xaa\xd4\xb9\xa5\x0ed\xa0\xe7f\xf1\xb8\xe0Y?\xa6OY\x02\x94k)\x04\xe3\xb8<\x85sf\xe5\xa0\xcc\xad9\x9b+\xa3O\x01\x0b\xc7\xe7x\xca\xc9\xeb\xfe\x03\xbf\xb32'SJ\x8d\x9a\xec~\x91>y\xea:\x08\xd0w\xe0|\x9co)`\xf8\xc0\xd5$\x1b\x92\x97\xaf\xa5O\x01\xd2\x83@ Rr\xf4\xca\xf4)d\xdeI\xf2_\x12\x92|\x07\x1c\xc2\x07\x1dB\x07\xde\xd3\xd3\xd3''\xbfO\x9f\x9c\xf3o%\x05\x08\xc4\xd5\x89\xda'\xef\xf4dI#8t\x1e\xaa\x96\xb94_\xe2\x8f~\xac\xf9\xcd{\x7f}\xeb\x9c\xd1,\xe9.$\x16n\x86\xb0\xf4\xe66\xb3}\xb1g6D{/}\xca\x82\x1e.E\xcd8Q\xdd\x9a&\xe9\x8e\x81\xb7\xd3\xbc\xe3\xfd\x90\x19\xb6\xceM\xa1\xb2$I\xca\x1a\xe2gI\xa77\xf1\xc7\n\xe7>\x97\x95\x7f\x06\xe3\xd3\xf4\xa9\x07/t\xa9Y \xa9\x13\xb4\x9a\xc1\xdb<\xdb\x8b$\n\x1e\x83\xc3\xdcS\xed>4\xc2\xe4t,|\xde\xb0?\xff-.\x9evp\x86\xcb\xc8\xb9\x9d\x83\xe56\\F\xee#s\xb0\xde\x14\xcb\xc8\xb91\xddD\xf1\x1a\xff\x10\xe12\xc16\xc80V\x92\xa1\xc0\xf4<\x0f=6\xe8_\x9c\xdac\x8e\xfeN\x0d\xab\x15\xd1\xa02\x87\xd49L\xd9\x1ee\xee\x86\x85\xcb\xc4\xf64\"}\x8d\xc7\xe8n\x18Pt7Dw\x83\x9d\xa2\xbb\xc1\xf64Dw\x83\xbfm\x11\xdd\x0d\x06\xf2_\x12\x92|\x07\x1c\xc2\x07\x1dB\x07>\xba\x1b$Ew\x03'\x7f}\xfb[<1Ew\xc3\xa7=>\xd1\xdd\xf0Y\x0cNt7\xa8(D\xb8\x9f\xa3\xbb\xe1\x13,\x9c\xden\xa4\x9f\x06?^\xf6P '\xaev\x90\xef\xb4|!\xa14tn\x8e-\xe2\xde.x~\xd6\x87\xea\x03\xa1m\xad\xb24a\x85\xdc\xe9\xcc\xb6\xcc9V\xde}\xce\xcb\xb7\xcf\x11\xab-\x7f\xdf\x00\x9fN\x0f\xe6\x0e98\x9cX\xb6\xe7'\xe9\xc95S\xd5\xbbaSf\xab\x9a\xfc\xf2]\xd5t\x1f\xe2w\xcd\x98U\xd3}pl\xcf\xb9U\xd3}\xf0\xea\x91\xb5\xab\xa6\xfb`\xda1\xefWM\xf7\xc1\xb0_\xe6\xb0\x9a\xdc\xf3\x89\xd5t\xf7\xfd\x1es:wL`\xf6jS\x9f\xec\xac&\xd3\xcd\x95j\n4\x83C\xcd\xdf\xcf\xe8\xe0\xe9\x85{\x924\xc62\xf7\x8f\xcbK\x8a'N\x17\n\xd4 \x9c\xe2\x893x^K\n_\x8a\x92B'\x0e\x8c\x9f<0v\x02\xdd\xf7\x89\xd3\xe5\xd6S5q\xc9\x99\x93\xfc\xd5dM\xfdW\xd3\xa8\x852n\x99HM\xeat\xc7\xaa\x9aFO4?l{\x9fBoiUS\xe0\xdd\xadj\n\xbc\xd1UM\xfe\xf7\xbc\xaai\xd4\xed\xafj\n?zs\x9a\xea\xa6X5y\xdd\x1f\xab\xa6`\x1ce\x9fF\xaf\x93\xd1\xea\xd8\x03\x98qH\x93\xb1\x1f\x16i\xe0\xe4\x8d-\xeb\xd3d}\x08\x1a\x821\x87-N\xae7\xe6\x064\x9d\xe6\x80\x8c\xf7\xe8\xaaiL\x9f\x1c\xee\xdc\xf5j\x8f;g\x87\xf7\xf367\xf1z\xb5e\xba\xb5WE\xad\x8e(\xb1\xf3q/`\xdf\x0f\xd9\xed\xdb\xbe\xb8\xbf\x13j\x05\x05X@\x01R\xe0\x14\"\x0bN\xc1z|\x94\x02\x19\xa1\xf9\xcb_\x1e\xff\xef\x90WG\n\x1a\xc6 \x1b\xd8\xc5\xa2\xc9\xee\xc9_\xfez\xfd\xf8sd\x7f\x8cEv^/\xb24\xf9'\xde\xf7\x1c{\xd7x_v\xee\x8d\x0c\xb3\xa3\xea\x12\xf3\x0b\xf6~h\x14\x92g+\xbe\xc0\xdb>\x8d\x1a\x941\x87\xf9\xc6/\xbc+RR\xa4U\xf0:\xbeS\xde%\xd7>\xcc\x06\xaa\x9bPE\x13\xa8\xc7G\x083x]\x06j\xf0@\x81\xc2\x08\xa1\xc28\xdd=B\xb80F\xc00Vk\xdf\x1f\xe3\xe1\xfa\xfa\xd6\xb4\xf5X]=FS\x8f\x18\x880M\x07S\xe8\xe8;\xe7:,\x17ER \xbb~\xac\xd2s\x18\xc9\xe7\xeeA0O\xae\xfc\xb8Y\xec\xff\x85\xf2*\xcd\xf1\xdc\xefD\xe4w\x12\xf28\x01y+w\x7f\x95\xee\xbdCz\x8e\x00\xa7\x00\xdd\xe7\xbd\x1fz\x0b\x0b\x82\x04\x06\xa1\xbb_\x90\xe0 Lx\x10\xbe\xd7\xdd-\x9b!;\xdb-\xeci\xe1\xbbY\x98z\x0d\x12\xb2\x9f2\xe34b\xd7\xba\x03\x1e\xc3v(O\xc6\xa6\x93k\xd0\x9c\x85\xc0\x1dZR\x07\x84\xdd8r\x08yk\xc2\xd8\x9a\x06\xd1\xa1\x117\xe4\xaf\xb9\x82\xf6p\x98\xe4\xed\xb5\x17i\x9e0\xe8{\xb9%\xe5\xa3ry\x0d_\xcd\xfe\xfc\xb7xS\xadm\x93\xb1\xf3\x05n\xc5\x06\x9cW\x88\\\x1f\xd6\\|k\xa9\x80\xa9?\xe9\xb6\x00\xc09\xa5\x1f\xe2M\xb5}\xb2'\xcd;\x0c\xe9\x9d\x1d\x92\xe2M\xb5\xf6\x0e\x82\xfb\x86\x17\xcfJV\x91\x83\x8f\xd8\xc1]\xf4\xb7qVrO\x87v\xea\x91SO\xfc\x93\x99\x1d\xd2\x96\xa7b\xcf9\xebu\xaa\x0f\x0e\xe5a\xcd\xff\x8d7\xd5:d\xcdN\xf5%\x8f\x9c\xd7\xa9>\xe9\x98\xb1:\xd5\xe7\xfc\xf2M\xdd3K\x9d\xf8s\xb7\xd5\x86\x1f\xa6g(~?i\xbaNs$\x0c\xa7\xe61CK\xa2\x81\x13!\x1cz\xaaA\xf4<\xf6\x0dN6\x7fz\"86\xd6\xad<\xcb\xe1\x12\xe7K\\l\xd3\xbc:\x81jCy\x11\x85\xf5\xaf\xa8\xa8\xcb\xab\x13X\xd4\x954\x04/^\xfc\xf3\xc4\xd0\xdc\x07fr\xde\xe0\xa2\x82\xb4\x82\x8a\x0cy1\xb1Bm\xd3\x05\xae*\\\xc0\xfb\xff\xe3p \xb4\xe7\xca\xb6=\x8b\xf7\xfe2rZC\xee\x139\xde\xfbk\xb2q\xe2\xbd\xbf\xf1\xde\xdfCr\xe5\x04\xe2\xbd\xbf\x1a\x8a\x17\xf1\x08\x8a\x17\xf1t(^\xc4\xe3\xf4\x8eWA\n?\xcf\x03'\x97\x18|\x9f\xec^\xa6>y\xea:\x08\xd0w\xe0\xec\x1ci)`\xf8\xc0\xd5$\x1b\x92\x97\xe7\xaaO\x01\xd2\x83@ Rr\xf4q\xf5)d\xdeI\xf2_\x12\x92|\x07\x1c\xc2\x07\x1dB\x07\xde\xd3o\xd6''/Z\x9f\x9c\x03\xa2\x92\x02\x04\xe2\xea\x92\xee\x93w\xbcX\xd2\x08\x0e\x9d\x87*^\xc4\xe3+\xb1p3$^\xc4\xf3\x19\x8cO\xbc\x88\xe7\xb3\x18\x9cx\x11\x8f\x8aB\x84\xfb9^\xc4\x13\xef\xfdUQt7\x08\x8a\xee\x86\x0eEw\x83\xd3;\xd1\xdd`{V\x92\xef\xe93`\xf8 \xcc\xb6\x88\xee\x06\x03\xf9/ I\xbe\x03\x0e\xe1\x83\x0e\xa1\x03\x1f\xdd\x0d\x92\xa2\xbb\x81\x93\xbf\xbe\xfd-\x9e\x98\xa2\xbb\xe1\xd3\x1e\x9f\xe8n\xf8,\x06'\xba\x1bT\x14\"\xdc\xcf\xd1\xdd\xf0 f\xb2\xc7{\x7f\xf5\xe4;-\xe3\xbd\xbf\xb6F\xe3\xbd\xbf>|A\xbc\xf7\xd7B\x81}\x85\x11\xfd\x05\xb7T<5y*\xac!I\x05fM\xdbS\x935\x99OM\xf7\xc9\xb4\xaf\n\x1e\x92[\x92\xa0w\xb3\xf1\xde_[Z\xa2\x9a|\x93\x15\xd5dOaTS\xf0D\xf6s3K\n\xfe\x9c\xaf\xcd\xd4\xa5x\xef\xaf\x03\x8d\xd1\xfd!NL\x18'd\x08;\xb2\xb64\xc2\x9b-i\x84\xb4a\xa4\xc4!\xd4\xcb-)\xc4\xeb7\xa4\xf0\x15))t\xe2\xc0\xf8\xc9\x03c'\xd0(\xaf\xb8\xa4\x00\xef\xb8$\xf7DW5\x8d\x90\xdf\x08\xb9\xf9\xa7\xca\xaa\xc9!\x81VM\xf7\xd1m\xe7\xf4U5\xdd\x07\xcb\xf6\xfc$=\xb9\xe6\xfdz7l\xca\x13V\x93_\xf6\xb0\x9a\xeeC\xfc\xae\xf9\xc7j\xba\x0f\x8e\xed\x19\xccj\xba\x0f^=r\xa0\xd5t\x1fL;fQ\xab\xe9>\x18\xf6\xcb\xc3V\x93{v\xb6\x9a\xee\xbe\xdfcN\xe7\xf6\\f\x7f\x0d\x18\xef\xfde4\xc1D\xf07s\xbdpO\x92\xc6X\xe6\xfeqyI\xf1\xc4\xe9B\x81:\x81Sq\xba\x94\xa1U\x13\x97\x9c\xeb=\x0f]\xb2\xa6\xfe\xabi\xd4B\x19\xb7L\xa4&u*z\xab\xa6\xd1\x13\xcd\x0f\xdb\xde\xa7\xd0\xb2\xb9j\n,\xa6\xab\xa6\xc0\x12\xbbj\xf2/\xbc\xab\xa6Q\xe5x\xd5\x14~\xf4\xe64U\xe9^5y\x15\xf4US0\x8e\xb2O\xa3\xd7\xc9hu\xec\x01\xcc8\xa4\xc9\xd8\x0f\x8b4p\xf2\xc6\x96\xf5i\xb2>\x04\x0d\xc1\x98\xc3\x16'\xd7\x12\xc6\x01M\xc7{\x7f{\x14\xef\xfd\x0d\xb3\x82\x02,\xa0\x00)p\n\x91\x05\xa7`=>J\x81\x8cP\x1e\xde\xb7dI\n\x16.\x8c\x120\x84\xde\x9e%i\x94\xa0a\x9c\xb0!\xfcV-I\xf7\xcb\xfe\x18\x8b\xec\x16n\xdd\x92\x14~\xfb\x96$_\xe0m\x9fF\x0d\xca\x98\xc3\xfc.\xfcv.I\xf7\xc0\xfb.\xde\xfb{H\xc1\xeb2P\x83\x07\n\x14F\x08\x15\xc6\xe9\xee\x11\xc2\x851\x02\x86\xb1Z\xfb\xfe\x18\x0f\xd7\xd7\xb7\xa6\xad\xc7\xea\xea1\x9az\xc4@\x84i:\x98BG\xdf9\xd7a\xb9(\x92\x02\xd9\xf5c5\xde\xfbk$o\xe5\xee\xaf\xd2\xbdwH\xcf\x11\xe0\x14\xa0\xfb\xbc\xf7CoaA\x90\xc0 t\xf7\x0b\x12\x1c\x84 \x0f\xc2\xf7\xba\xbbe3dg\xbb\x85=-|7\x0bS\xafAB\xf6Sf\x9cF\xecZw\xc0c\xd8\x0e\xe5\xc9\x98'K>N\xf0@N\\\x1d\xdc\xbe\xbe\xd3x\xef\xafQ\x93\xdb\xac\x0c\xa7\xd1t\x99M\xf1\xde_\xcbrp\xdc*\xbc &N=\x05\xe7\xde\x028\x03D\xdc\xc6S\x92\xcb\x04\x92d\x179\xf8\x88\x1d\xdcE\xef \xcep\x82a\xb8\x00.\\Li\xab\x01\xed8\x15\\'\x82\x17\x04\xc2c0\xdc`\x0d\xa1\x00\x86@\xa8B (\xc1\x1f~0\nh\xe0n6N\x05\x1e\xf0\x82 x\x03\x02\xeef\xc18\x07\xe3\x038\xb0t\xdf\xc7tr\x0d\x9a\xffV\xef\xfdu\xe1\xed\x1b\x9e\xfd\\B\x85\x9b\xeb\xa7\xe8\xa8\xf1\x1fN\xf8\xe1\x892+@\xdf;\xfd=_bI\xa8R\x8bW)\xce\x96\xf2\xb2-\xbc\xa4&\xe6\xa2\x7f\xebW\xf7i3\xd7\xdf\xe2\x8a\xf1\xf6\xcd\x9e\xdf\xd3\xf4\x0e\x97;\x92\x97X^LV\xc8\xff\xcf\xba!\xebR\xf5\xdb\xf8\xaf\x1a\x17\xfb\xd3aK\xf0\xee\xfc9lq\xb5!\xcb\x96!\xa9\xce:-\xf4\xf8{\x96C\x9d\xe3\x8f;\x9c\xd0\x8e\xe1\xa2 E\xc3B\xb7[e\xb2\xc1\xdb\xc1\xf58\xda\xfdL\xbf\x83\xb1\x0f\x1c.;\xc3BK\xc8R\xb1N\xcd\xb6\x8d\xc9F\x15\xd5\x81\xbcxX\xe2\n\xa5\x99B[\x9a\xcc\x02\xad9`1\x03l\xdb?}}^\x17Z\x03\xd0Ai\xd9\xd7\x15\xa7g\xf0\xfe\xdd\xeb\xd3\x02\x97\xa4.\x12\x0c9\xda\x8a\xc5^\xe7\xe9\xcf5\xce\xf6@5@\x95\xaeR\xe1\xec\xa8x\x91Xm\x83\xfc~\xad\"EY\xfa/\xbc\xd4g\xf1\xef\nR\x91\x84d\xb0\xa8W+\\\xc8A\x9b\xf1k\xc3x\xdf`[\x97\x8dF\x02\xa4\xb7\xa82\x8cJC\xf90\x92c8:=\x82d\x83\n\x94T\xb8\xa0_\xc1\xec\xe4\x07%^oq\xde\xa8\xdd\xf7\xef^?(a\x87\xaa\x8d\xb65\xc6TS\x1cJ\xffU\xda\xdc\xaa\xce\xb2=\xfc\\\xa3\x8cJp\xc9\xe5+>\xc5$y\x8cJc}\xad+\xca\xca\xe9\x9a\x90u\x86gLf\x8bz5{Q\x17\xacL\xc2\xd5C\xde\x13\xd6l\xb9!u\xb6\x84\x05\xdd6\xb4\xed!HPN\xf24A\x19[C\xfa/\x1f\xe3\xd9zvBE\xcb\n@\x1c\xcd\x8e\xa8\xfeb\xd7\xc9% \xdeUx\xf9p\xf6\x85\xfe\xf5\xb3\x1cvT\xd8i\x82O\xa0\xc2h[B]\xd6\x88\x8a\x83\x17\xd0\xda\xa5\x19\xe5\xb4\"L\x18\x8b4G\x85\xde\xf0f7\xd8\xedwX\\%\xc7J\x02j\x1f\xe6\xbaN\xdc\x98X\x97\xdd\xca\xc4\x15\xfe\xc8\x86\xfaY\xbe\x9f\xc1w\xe4\x03\xbe\xc1\xc5\x89\xd1\xa8z\xff\xee\xb54\xdahS\xc6\n\x82L\x83b\xb8\xdaT\xd5\xee\xea\x84\xff\xb7\xbc:\x01R@N\xc4\xaf'l6&(\x07\xc2V'\x95\x88\xbeA\\A\xbd\x13\xa5\x99\x0d\xdf\xc5\xc5\x0d.\xb8h\xb6h'\xae\x9cd\x9cW\xa4\xa9\xcf\xcc\\\x96)\xbf\xed\x0e\xe9\x9d\x8c+\x92e\xe4C\xf9\xd40\xb6_\xc2\xd9\xaa\xed\x11\x9d\x16\xb2.`\xd3if\xd0\x94e\xbd\xc5KC\xc1\xb7/\xe9\xe6\xf4\xdd\xe5\xe59|\xfb\xf2R\xde/\xf8\xfe\xddk\xbe\xc6\xf6lO\xd6\xdb=?\x0e\x97\xc5\xe5~\x87\x7f\xfa\xf1'\xed\x0b\xcc<\xae\xd9|\xe0\xf3Ml#'\xbc\xac\x1bY\xd6 \x06\x94\xf3-L\x0f\xae\xfb\x12\x9e\xb5\x95JJv\xa1\"\xa22\xe3fC\x82\x12\xaa[\x08\xb9\xaew r#a\x81J\x03\xf4\x91\xd8J\xbb\xbc\x7f\xf7\x9a\xf1\xb8A7l\nn;kh\xc9\x17\x11\x92]\xa2\xff\xbe!\xe9\x12Pn\x8a q\x06\x99\xfa(\xf0\x8a\x14\xf8D6@\xdbEU\xbaH\xb3\xb4\xdaC\x8e\xf1\xb2\xe4\xe6\x100\x95W\xdc\x18A\x9c$\xa7j6_c\xf6\x12[\xb338~_bY\xcc\x89J\x89NO\xaa\xb3\xf8\xfcD9Z\x9bz\xbf(0\xba\xa6:H4<{\xa8\x9fQoH\x85\x9f\xf2{WWu\x9e\xf0\x15F\xfb!tWR\x17\x05\xce\xabl\xdfq\xd8\x1b\xd4%\xbb\xefr\xb5J\x93\x14e\x96\xbdlQ\xaf\xa0\xc0t'\xc2'\xac\xbeMZ\xc9\x8f\xd6%\xe6\x15\x0c\x9bu\xa9mj\x81\xd7i\x9e\xd3\xceR\xbb\xd6\xb0\xb9\xecwx\xc6\xe7?\xda\xa5\xe5,![\x936\xbe`+\xb5\x04Rm\xb8\xa2\xc8\x87Z\n\x8eE\xbdF\xbc\xddU{\xb1\xb4\x1f\xea7Af\x8e.\x0cJ\x89u\x9a\x19\xe7\xe9v\x97a\xba\xc9\xb2\x05\x03\xe5\x0e'\xe9*M\xa0\xc4[\x94Wi\xa2\xc1\xb1\xb2\xb5:\xc2\x04r8\xaf\xb9ZI\xdfSu\xb4\xc0\x80D5\xca\xd6\xc09\xb0cd-\xa3\x05\xb9\xd1\xcfi!\x02\xb1\x14\x94\x17\xe8:pv\xf5,\xdf_\xb5\x076\x94\x03*\x16iU\xd0E\xac\xe7P\xd9\x94\xdc#PF\xc4\xd4\x03\xa4\x1eZ\xaa\x9d\xd9F\xc39\\\xf4\xcd\xc2\x81\xf9\xd7Xu\x9a\xa9y.\x17N\x96.\x18\xdbb\x1f)\xa1\xacw;R\xb0\x1d|\x87\x92\xeb\xd3:\xa7\xff\xa1\xfb6\x9f\x17\xea\x15$6z\xbdaCVPW\\\xb1I\xf5PR\xc5\x8a\x96\xcb\x94\xeb\nX\xe3\x1c\x17\xac\\)?h\xc9\xf2T\xca\xf6(?|\x08\xd5\xdf{\xf9\x11\xd1\xc9\x0f\x8f\x9f\xc29\xe5\x9f\xea\x05\xd1\x15\xd4\xbd8\xe1\xf9\x1f\xffh\xd8&_\x11\x02+B\xe0k\x98\xcdf\xff\xae}\x8c2\x83\xf2\xbd\xfe\x01\x94\xefg\x94\x8dW\x05\xd9\x1e\xaf\x08y\xa8\x7ft6\xd3\xef\x7f\xe9\n\x8eiS\xefYG.\xc9\xf1\x1fh[\x0f\xe1\x17\x83\x0e7\xb5\xf7\xabYvO,\xb2\xfb\x07\xbaA\x93 \x0f\xbef\xb6!\xfd\xca\x04\x12J\xcb\xe3W\x84\xcc\x92\x0c\x95\xa5E@\x9cE\xfa\x12\xefc\xe7E=\x0f\xbfj\x7f9=\xa5\xd3\xda\x8d\xc7\x0b\xb4\xc5\xd4tz\xc6\xb9]\xe3\xea\x05w)\x9c\xe5e\x85\xf2\x04\x1f?\x0ca^\xd9\x8e\xa9/\xc6Y\xf0'\xcb,8\xdfW\x1b\x92\x1b\xe6\x01\xe7\xf1\x15!\xc7\xb3\xd9L\xbf\xb15s\xe0\xd8\xf8\x0c[Gl\x86\x84N\x10\xda\xc8\x19\x97\xf8\x8b\x97\x17\xcf\xdf\x9d\x9d_\xbe}\xf7\xd0\xe4\xafl\xd7\x9c\xf9\xc3\xfc\xd3Fi\xfe\xd9\"\xcdo\x89\xa1\xfe\x1e\x95\xe4\xd3\xaf\xe1\x0f\xbb\xc5\xec\x15!\xbf\xccf3\xfd<\xa4L\x9fP\x83\x9a\xbe\x81\xf2\xfdn1{\x83?X\xf8OW\xec\x8d\x7f\xfb\x1a\xf243N<\xa3\x90\x0d\xcb\xc3\xfc\xde\xa0\x83\x86f\x04\xa7\xbco\xb3\xf7\xf9\x16\x15\xe5\x06e\x97\x84+\x8f\xa9\xba\xa1\xfc\x8d\x1e\xfc\xd9\xc8\xc9}\xaa[\x9c}7\xdcY\xf9\x9d\xf2\xea\x13\x81\xf0 R\x93M\xfd\xa9\x07\ns\xf3tUg\xd9\x8c\xfd@M\xf9\x07\x80:\x96\x00\xb5\x12D\x8dGe\x83|\xce\xa9?\xd6l\xbby\xb6\x97g\xee\x03GJs\x84\x00\xb4\xaa\xb0\xca\x83\xca\x89\xf9x\x1e\x9c>P\x7fJ\xd8\x0b\x92e\xe6 \x00,\xd6\xc8\xd1\x8a\x90\xd9\x02\x15\xac\xb3\x1fO\xf7\xb3\x7f\x1dq)\xb2s\xa9\xb2=\xfd1\x9d\xb1zD\xdb\xd0\x99\n\xff\xb8x\xfbF\xf3\x13\x1di\xfas\xebu\xe2\x964\xa1ZD\x98\x81\xfcd[\x97X\xfa\x98\xd7u\x864U\xc6\x0f\x9b\xa1\xaf,qk\xb8\x9d\x00\xde.\xf0r\xd9\x9ap\xdc\xd1\xael\x0ei\xfcW\x1d\xa3\x8a\xbb\xd7\xaf\xfeN\x05t%\xdc)\xbdH\x83\x1c\x02\xf52\x10j\xeb\xa9\xe1\x08\x86\x92k\xaa\xbbZ\x97\xc0*\xcd\xb0~\xb7\x91\xba\xee\x1c\x17%\xc9\x8d\x8bS\xf8\"WiQVs6\x8e_\xc3c}\xcb\xcd\x0b\x0cX\"\x9e\x7f\xe2\xbd\xefQ2qu\xc4dy\xf4\x14\x8eTk\xb3/\x86\x19\xef\xe5\xd1\x89\xa9=\xd6\xbf7hK\xdb\xfc\x0f\xde\x85\xff4\xbe@\xfb7x\xde\xb7\x93g+q\xe4\xec\xcf5>\x1b\xd2\x12>\xe0,{t\x9d\x93\x0f9\xd3&\x1bT\x02\x82\xa4.+\xb25\xac!\xd5/\xfd)\x7f\xc2\x8f0\x83u\xc0Ud\x87\x1d:\x815\xc7K\xc4\xa7\xb4\xfacWl1\xcay\xbe!\xd9RT\x06f\x9c\xf3\xa5\x9c\xe6\xcd\xfa\x00\xee\x03U7\xc5\x97\x8c\xfa;\x8c\x85Y\xb3\xa9\x1fS\xed%Ex\xe0\x1c\x93>\xe3\x9f~\xfc\xe9\xa1a!M1\xe7\xfa\x1f4O;&*\xda\xe4\xe3\xd9\x93\xc7O\xca#\xc3\x14\xe2\xff\xdd\xa1\x02mq\x85\xbb\x00\xe9GL\xbf>\x158\xabN\x13i\xfet\xe8\xcc/\xf0\xcfuZ\xe0\xe5S\xa8\x8a\xba+t\x8dKA\x85\x9a\xa9\xd0\xba\xf7\xf5\x0b\\\xdc\xa4 m\xec4!\xe5\x96\x94\xa7\x0bT\xe2\xd36byz\xf3x\x81+\xf4\xf84'K\xa6\xab#\xab{\x88\xb3Y\x12\xf5\xad>&\xcb=\x8c\x16\xee\xc0\x81Cp\x88\x06\x82\x0b\xab\x9c\\\xbcJ\x92|#\x83\xc6\xc6\xd4\xee!\xc3\x19c\xea\x08!\xd8\xa3\x84\x10\x10)4w\x00U\x1b\xe7h!L\x151\x84\xc0\xa8\xa1\xb1A*\\\xe7\xc8!\x8c\x8f\x1e\x82w\x04\xd1\xd8\x94\x88lxE\x11a\xeaH\"xF\x13\xc17\xa2h\x9e\xd9M\xb4\xd15\xaa\x08SG\x16\xc1-\xba\x08SF\x18at\x94\x11\xc2\"\x8d0U\xb4\x11\x82\"\x8e\xe6\xe5\x80J\xbc\xb4G\x1d\xe1v\"\x8fp\x8b\xd1G\xb8\x9d\x08$xF!!,\x12iS\xc1n\xd1H\x986\" \x1eQI\xf0\x8fLB@t\xd2Ae>t\x88P\xc2\x14QJ\xb0E*\xc1\xdd\xc8#\x00\x98yo:\x7f\x95\x9fSE\xaa9U\xa6\x10\xa9\xa5\x929\xfeX\xe9\xa3\xafVyZ}m\xbd\xae\xfe?\x9d\xffJr!\xc5L\xff)\xdc\xd5\xa8,\xb9\x7f\xfe\x1c\xad\xf1;\xfcs\x8d\xcbj\xc6\x7f\xd74\xf6s\x8d\x8b=k\x866K%\x89aK\xca\n0s\xfa2o\xf1\x0c\xce\xaa\x8e\xae\xdaU{Hu^\x9cj\x83\x0b\xcc\xa2\x059\x81-)\xb0\x8c\x0e\xa8\xf6\xe7\x8aTH\x13cv\x16\xa6\xe1\xda\x06Q\x8aZ\xeb\x08d\x9fgRd\xff\xc8\xeb\xed\x82\xfb$e\nU'_G\xd7\xdf\xae\xa0\x13R\xe7\xd5\x9c5\xa6Sc\x1fP %\xaeN \xadJ\x19\xab)\xa1\xce\xf9d^rw\xf4\x87\xb4\xec\xcf\x0fk\xbe\xf7!\xdc\xc3)\xf5{\xd0P\x93\x08\xdem\xe8\x9b\xfdw\x0c\x93\x11\xf3\xc0%\xc5<\xf0\x98\x07\xdeR\xcc\x03\x8fy\xe0-M\x8a\xde\xf0Anx\xa16b\x1e\xf8X\x84F\x00:c\x12d\x86?*#\xe6\x81\x8fAa\xf8 0\x02\xd0\x171\x0f<\xe6\x81\xc7\x18\x8c\x00\xfcE\xacr\x12\xab\x9c\xc4*'\xae\xf8\x89I\xb1\x13!\xb8\x89X\xe5D\xf7\x98\x15\x1f\xe1\x81\x8dp\xa9\x8f\xe1\x83\x89\x88UNB\n\x85\xd80\x0f\xb1\xca\x89;\xb6\xc1\x11\xd7\xe0\x82ip\xc33\xc4*'\x10\x88Y\xf0\xc0+\xc4*'\x13\xe0\x11\xacX\x84P\x1c\x82v\xdf\x8cUN\x0e(V9\x89UN\x064E\xc5 W\x8c\x807>\xc0\x0b\x1b\x10\xab\x9c\x04b\x00b\x95\x13I.UN6\xdd\x7f.\x9f;'$k\xd4:\x07\x10\x8a_\x80\xb6\x00 Is\xb5n\xef5!\x1e\xf8dU|+\x8d.\xdd\xc7d[\xe2\x9cl\x83\xe7\n\xda\xd2\x13j\xe0\xeb.x\x9b\x178yN\xd2N\xda\x0bT\xe4\x1a\xe7\x02.\xc3\xb9\x97\xc7i\x94/\xd9\x9f\x92t\x8b\xd4\x99\xaa\x9c]]4\xe8\xcd\xdb\xcb\x97OY\xe0\x87?'\"()\x83\xf9\xbc\xc0\x89\xf0-7\xd0\xaa\xae\x83Y\xd9 \x8f\xaa\xa9?V\xa6\xeb\x1cQ\x85_6\xc7IX\xecaM\xd6\x84ys\x0f\x832\xfd\x8c \xba\x18\xa4P\xfak\xe4A\xd9_%\x8a\xb7\x0f\x84\xcd2 z+(<\x8f\xa2\xbf\x10\x07\x8f\xc4d\nAq\x07\xbb\xe7\x1d\xec\xbf\x84S\xc7\xb8\x7f-q\x86\xd7\xac\x8e\xea\xe9/\xcd\xbf\xe7\xa2\x9a\xe9\xaf\xa7\x05\xfe\x80\x8a\xa5\xe1\x9c\xd2 B\xbc\xe0\xaf\xa7$\xbf$\x15\xca\xde\xf1W{{\x1dw\xf4\x89F\x01%IQs\xad\x80Q\xd2\x86S\x1a\x0bV\xb9\x0d\xaa?#\x9e\xfcd\xf7\xc3\x9e \xbbt\x1f\xb3\xb7=\"\x8c-[\xcb\xbbe~]\xdd7N\xda\x1er\xb2\xf4\x93\x93\xad\xb7\x9c\x8cf\x00'ko9\x99M\x02NNM\xb9\x98\x07\x9c\xbc\x8d\x04\xa3 \x98\xf9`1\x158\x05\x19\x0c\x86\xf6D\xac\xdad6p\xf27\x1e\xcc\xc1QI\xad\xf2x!\x95\x1dW m\xd8\x9ek\xaavR)\xdb\xa1\x87Vh\xf4\xe5\x83R\xfe\x9b\x0e\x00_\x13\x16\xf3F\xea\xc0fD\xb3LX!\x07\xba\xb1\xf3\xa1a\xa3\x9aD\xdb\xfb\xd0)\xd1\xccn(h\xd5\xdc\x93\x99\xcdw\xe4\xae\xc7\xa6\xac\xb7lz\xf7'\xa4\xc1\xd6>Xj\xcc\xf0Po\xd3\xe1F\xb7\xc6\xba\x88\xe6\xb6\xa0hn\xdf\xb1\xb9m\x82\x0c\x1dX\xd2\xba\xa9x\xf0`o)6\xbf\xca\xeb\x05\xa0\"\xa2\xb2\xc3\xaa\xbf\x19\x8c\x84$\xdd\xe2\xd1\xe1\xf4\x97\x03k\xd3pqF\xbb\xca\xbd\x8e\x0f\xa8\xb3\xffZ\x0e\x0d\xf1\xbcp\xf8\xb3m\xf9\xc5\xbd\xbd\xa1\xcfio\x1f\xda\x986\xfb\xb2\xb3x\x14\xad\xd9\xb6\xf9 w\xf8\xb8\xb9\x0f(n\xeeqs\x0f\xde\xdc[\xce\x0fvb\x1d\xe7\x07\x0f\xf68o~\xbdm\xceo\xc3,\x19^\x1ce\xb0BH\xd1\x94K\xea\xdb!m\x1b\x03G\x80\xc9\xf6\xe8\xb6\xf6\x85\x94\xc5'j}\xdc\xd2\xedZ\x9aUh\xdf\xe3;\x02WN\xc4\xb2;\x08t\xe7\x91;\x9ar\xcd\xaf\x86\x8e\x14\xf7}\xae;\x88\xa3w\xba\xde\xfc\x8a{\x9d\xa0\xb8\xd7\xc5\xbd\xee\x93\xda1\xe81bY\xa0\x0f\xfd`\x89q\xdf\xf8o\xf1\xca3\xd1[\xb9y\xc8\xa6\x1a1\xf8l\x1f\x83F\xbf\x90\xd2\xf9D\xf7\x10\xb5\xd8\xba\xe4\xbe)\x0c\xdb\n\x9c\\~\x9a~ \xef \xd4\xfdpZD\x9d/(\xea\xfc\xa8\xf3\xefV\xe73\x01\x18T\xf99\xfb\xbdQ\xdc\xfc\xf1&\xa9\xbd\xd3\"l\xc9\xb2\xce\xb0Zuw\x9e\xe3\x0d~!\xbb\xf7\x89*\xed\xaeX\xba\xd4\x87fqat\x07\xbb\x9dORF}\xb1\xb4d\\L\xe6\xa5\xd4b-+\xf4Q\xbf\xd6\x0c\xaba\x81J<\xdf\xc9B\xda&\xf0\x82uY\xd9\x0f-\xc0\\\x93\xbb\x02'\xa8\xa23\xf9r\x83\x95\x0c\xb4.\xc4e\xf3\xb4\xa69V\x01\xae\x84\x9c@F\xf25.XJ\x9c.\x8e.\xd2&?\x9e*\xa6\xeb\x83Rx\x02a\x8b\x93\x0d\xca\xd3r\xab\n\xa9/H^\x97\xf7+0\x15\x07\x9f\xb0\xc4z\x96\xca\x1c\xe7h\x91a\xa3\xc4\x86\x89\x85`\x15\x15\xd3o\\\x9d8\xd9$\xc2\n\x11\x1a\xed0g*Z \xd1\x02\xb9{\x0b$h\xd7n\x1d>~a\xc5\xce\x1aj\\.\xdd\xcd\xf9,_\x91\xc3\xcb\xf9\xd9\x86\x93\x96\xa5\x88\x1b5M\x948[=:\x00\xfc\xf0$\xad\xe6e\xf1t\xcf\x1e\xd0~[<\xfc\xc9\x9a\x05D\xa4\xddNq\x96\x1b\xb6\xa5q-\xcb\xc7\xa4\xf58T\xb6t\x10\xe6\x0b\x92/\xe71T\xca\xc9e\x83\x8d\xa1\xd2\x86z\xe2:\x98M}H\x14\xceV\x9d i\xa9\x06EAG_\xc4\xc9\x18'c\xf0d\xecl;\xddY\xd8\xf9s_U\x168\xc1\xe9\x0d^\x1a\\]j#R\xbb\x1fY\xed\xcaAk\xad\x95\xa9\xdf^\xa3\xb3KP45\xef\xd8\xd449\xbb~\x17!q\xb3\xd9|:\xdc\xb6T\x16t\xb3\xae\x9f\xb7ZH\x1a\xcc(I\xeam\x9d\xb1\xf2\xd6\x1d%E\xcdadI\xe6Q4\xfb\x85\x14\xca'j\x0b\x9b6\xf9[P\xe3`[\x93v\x9f\x99\x8e[\xb0\xe8\x08\xb0%\xe8Xt\x05X\xb9\xe3dM\xcdqX\xf66s\x05\xdc\x9aq1[ \xc4t1t\xde5\x1d'\xc8\x84\xd1\xb6\xe6\x98\x8a\xe3g\xca\x88jB\xea\xc0\x9ab\xad[\xed\x0cmLM\xa5\x8fZ\x0b\xa3y%\x1a\x18\x83_\xa3\x81\x11\x0d\x8c\xf6\x87;20H]\x95\x15bE\xea\xe6\xd6\x8c\xe2fe\xbfm\xdf\x1a&\x03\xc8C:\x83O\x1c\x88\xc6li\x1c6\xfb\x85\x94\xd2'jqX\x1c\\Av\x81\xb6M\x88F\xc1\x90\xa2Q0 ?\xa3\x00\x9cDhZ\xf6\x9d\xdc\xdc\x8e*Q4r\\\xe7\x8fd\x04.\x7f('\xb9\xaa#\x83\xc3 \xa4\xcc\n\xc8\xcb\xf4\x06\xf3Z\x9c(\xb9>\xe17\xb0\x95P2\xf1A\x89\xf2\xb4R\xad\x88d\x83\x93k\xffr$\x86.[\x0d\xa3A{\x8a\x1b\x04\x07v\x92B\xac\xd1##(\x1aL\xd1`\xfa\xa4\x0c\xa62C\xe5\x06\xbb\x18I\x17\xfc\xc9\xc62bo\x02\xbe\xe1\xcar\xe5\xee\x80\x11\x0d}!\x05\xf0\x89\xdaB=\xc9t\xe9>\x96V;r;\\\xa4\xc4R\x07\xc5i\x91\x18\xae=_\xb1\x9bou\x8e\x1c\xebW\xec[0\x0cf\xc3K:\x8b\xba\x9bow\xc3\xecL4\xcd\xb5P\xe2v\xf1\xb4d\xd6G\x9a\xb0Z\xec\xd5F\x80lX\xe9OV\xfa^\xfd6\xbb\xb19-\xd9U\xa1\xf2\x0e\xd4,a^F@;:2E\xca\xfe\xbd\x95\xf5\xc9\xcb\x8a]\xe8\xa9l\x8d\x19bJC\x80\x9b\x02\xdd\xe0\x1e\xb7\x98P\x81\x1b0O.\xee\x03B\xa2\xd7\x1b\xcdM\xb7$a7\x81\xdaj\x7f\x889\xdc\x0f1\x8a\xbf\xb9\xb9\x04\xdb\xaa\xe3\x87\x93a\x00\xd5kj\xb1\xf7\xe1z\x9d\x12\xed=\x03cR\xe7\xa3\xbcj\xc2t\xca0\xac\nC\x91SN\xbd\xaej*\xbe\xb4\\H[\xaa\xb9\xfb\x02v\xa8,\xf9\xdc\xea^\xf7\xcf\x7f\xd74\xc6w\x90\xcar9\xc6Y\xd5\xb9\xf7\x85\xddC\xa0\xbb\xdb\xbc\xda\xe0\x02\xb3\xc9\x96\x13\xd8\xd2%!\xca\xbf\xab\xc0e\x9ar/\xe0#L\x83\x82\x11\xde;\xed \xa7)\xd3\xaf\xbb\xb7\xa1s\xfb\xad\xae\xbf]Awo<\xd0<\xfe\x01\xb1\xf2\xf8'\x90V%\x88{\x96K\xa8s>\x99\x97\xfc\xea\xd9\x0fii(VkqF\x8a}\xcfjp\xdb=\x91r+\x8ef\xb5\xa0hVG\xb3:\xd8\xacn9/+TTi\xbe\x9e\x1f\\\xc4d2i\x06o\xf5:!/\xc9o\x1e\x12\x05\xc3\xdb\xbe\x0c\x17\xbb\xd8\x9e\x87\xfd\xf3\xbd7\xe3`@5ZYv\x9d_\xecq\x0b\x1d\x177\x86|\xa2\xdd\x8e\xf7_\xf9\x891\xde\x7fu\x8b\xc2\xb5\xcf\xd1x\xff\xd5\x14R\x8c\xf7_\xc5\xfb\xaf~\x1b\xf7_\x0d=\x80 \xddw\xf2\xb2.Oo\xbc\x13\x0f\xab\x83\xe4\xba\x8fm{\xa6\xdc\xc3\xe7\xf2\xa1\xdfP\xe2\xa1\xf2d*\xb2\x11\xd9l\xa1+\x14\xe7K\\l\xd3\xbc\x82VN\xe2\x19\xe6sR\xce\"N\x87\x82Uc\x19\xb3\xe6\x9a\xde\"\x0d9M\x18Wu\x86\x98\xd1\"\x9d\xeb\xfc\xe8\xc3\\\xef\xfa>3\x06\x9e\xad\xb1\xbc\x8c\x19N\xe1\x17t\x83\x0b\xca\x12c\xc1\xf4\xfd*\xdd\xe2_u\xb3LJ~)Z\x1e)\xf7\xf1\x12\xa5\xdc\x9a\xe5y&\x8dIHH\xc1\xf5\xf9R@>rjR?(\xe1\xa8\xce\x17\x84\xdb(\xa6\xdbz\xcb\x94\x14;\x1d0\x1b^\xce\x9df\xfb0-\x84\xcei\x9a\xc1\xb4+a+ \xa0\xc7\xe2\x0cK\x85l\x1a\xbc|)g\xdf\ne\x19mgE\x8a\n-\xb2=\xf3\x92\x17\x92W\xa1R\xc5\x96fh\xf1\x858)\xa6%<\xfe\xea\xcf\xff\xdf_\xfe\xf6W:#\x1f\x7f\xff\x8d]\xb1k\xa5\xf7RH\xe5\\\x16\x8e\xa8\x98\x85\x86aC>\xc0\x07\xcc'.n\x85Gt\xd1\x83-\xcaV\x18\x95(O\x94\x1bC\xe3\x9c\xbc\xb5\x9daW/\xe6\xd7x?\xa7MYg\xa6\xe9\xe2\x0b\xeb\xd5\x17\x0e\xd3\xdbM\xf8M|BH\xbf\xc0\xb4\xc9\x84\x9f\x88w\xf5\"K\x13\x1e\x12\xa3]jE\xa8\x9b\xb9 s\xdb\xa8Mch\x00iu\x89Kx\xf6\xcd\xf33\xfa\x05\xdaz\x8e\xb6i\xbe>a\x86\xf1\xb3m\x9a\x13v~TZW\xc2\x8e\xbe\xb51D;\xc5%\x8e\x92\xacB\x07\xb7XZol~\xe0=\x1a\xda\"\xd0IU\xa0\xf6T\xc7\xebG\x94\xb8HQ\x96\xfeK_\x9e\x8d\xc9\xa0\" \xc9`Q\xafV\xb8\x90\x9a`&\xce\xe6\xaco\xdc?)-\x1b\xa47\x7f2\x8cJ\x83\x95Ar\x0cG\xa7G\x90lP\x81\x92\n\x173\xe6:\xcbPYA\x89\xd7[\xdcF\x05\xdf\xbf{\xfd\xa0\x1c\x82]\xfa\xc4\x98j\xa0\xb4\xfa\xaf2\x8b\xb5\xce\xb2=\xfc\\\xa3\x8c\xd9\x8e\\\xbe2\x00I%y\x8cJj\x06h\x1b\xb9\xa2\xac\x9c\xae Ygx\xc6d\xb6\xa8W3\xe9\xad\xbbz\xc8{\xc2\x9am\x01\n\x06\xbb\x02\xd1S\x1f\xc9\xd3\x04eLu\xe8\xbf|\x8cg\xeb\xd9 \x15-\xf3v\x1d\xcd\x8ed4D\xdai\x0fM\xb6\xd8\x19\xb54PR\xa5 >\x81\n\xd3\x0d\xbf.kD\xc5\xc1m\xdc]\x9aQN\x85\xb5\xb2HsT\xe8O\xd8\xec\n3v\xaa\x95\x11\xe0\xbd\xfe\xd3|\x03\x85\xb4\x92v\x8f\x08\xb2\xd0\x89\x84?\xb2\xa1~\x96\xefg\xf0\x1d\xf9\x80opq\x02\x87I8-\xbd\x7f\xf7Z\xe2\x88iS\x8a\xec\x9c\x96\x982\xc2p\xb5\xa9\xaa\xdd\xd5 \xffoyuBm\xdb\x9c\x88_O\xd8l\xa4Go\x89\xe0\xc9\xf4\xdd.q\x05\xf5\x0e\x10\xeb\xbb\xe1\xbb\xb8\xb8\xe1\xd1\x8a\n\xb6hW\xf2\xa9\xc58\xaf\x88\\Y\xdc\xa2I+f kP\xcf\xc06\x14\x96)\xf5\xd40\xb6_\xc2\xd9\xaa\xed\x11\x9d\x16\xbb\x82P\x0d\xbal:\xcd@'eYo\xf1\xd2\xe0\xa3\xfa\x92Z<\xdf]^\x9e\xc3\xb7//\xa5\xa1\xff\xfe\xddk\xbe\xc6\xf6,\xffM\x9fZ\xf7\xe3pY\\\xeew\xf8\xa7\x1f\x7f\xd2\xbe\x00\x12w\x9a\x8b\xf9&vO6B\xbb\x82,\xeb\x04\x03\xca\xb9]\xa4\x8f\x9e|\xd95>y\xb8\x92e\x97Il{Bu\x0b!\xd7\xf5\xae \x80/Pi89\x12]\x14S\xd2\xfbw\xaf\x19\x8f\x1bt\xc3\xa6\xe0\xb6\xb3\x86\x96|\x11!\xd9%\xfa\xef\x1b\x92.\x01\xe5\xfa\x89\x05\x82A\xa6>\n\xbc\"\x05>\x91\x0d\xd0vQ\x95.Rf\x8d\xe7\x18/%\x8c\x85\xa9\xbc\xe2\xc6x\x06&9U\xb39;\xb8\x12\xbefgp\xfc\xbe\xc4\xd2\x1dB\xa5D\xa7's\x1a\xb1\xf9\x89r\xb46\xf5~Q`\x96\x0e \x1b\x9e=\xd4\xcf(\x1e\xd7b\xe7\xd5\xfe\xa9B\xe8.\x86\xea\xcf\xabl\xdfE8\xeb\xd5%C\xda1\xa0\x93\x1e\xd8,\xf6\xb2E\xbd\x82\x02\xb3\x882\xf7\x00pp\x10\xfd(;\xe02\xe0\xb1\\\x97\xda\xa6\x18\x8c-g\xee\x8b\xb42x/hK3>\xff\xd1.-g \xd9\x9a\xb4\xf1\x05[\xa9\xa5\x08G\xb0\xb0\xe6@K\xc1\xb1(1\xca\xd1F|i?\xd4o\x82\xcc\xd3\xb20(%\x8e*K\xabN\xc6*?\xad5\xe7\xbb\x12oQ^\xa5\x89&0{\x0b\x96\xf1\x90\\\xad\xa4\xefE\x9cTd\xcdt\x0c\x9c\x03;Fl\xeehAn\xf4s\xbaq&\xf1qT<\xe7\xc2\xd9\xd5\xb3|\x7f\xd5\xfa Q\x0e\xa8X\xa4UA\x17\xb1\x9eCeSr\x8f@\x19\x11S\x0f4^#\xaa\x9d\xb9G\x8aq\xb8\xe8\x9b\x85\x03\xf3\xaf\xb1\xea4S\xf3\\.\x9c,]0\xb6\xc5>RBY\xefv\xa4`;\xf8\x0e%\xd7\xa7uN\xffC\xf7m>/\xd4+Hl\xf4z\xc3\x86\xac\xa0\xae\xb8b\x93\xea\xa1\x04\x8e\x80N\xb9\xae\x805\xce\xe9\x19\x861_m\xc8R\x96\xc1V\xb6G\xf9\xe1C\xa8\xfe\xde\xcb\x8f\x88\xe5\x1b?~\n\xe7\x94\x7f\xaa\x17DWP#\xf44\x87\xe7\x7f\xfc\xa3a\x9b|E\x08\xac\x08\x81\xafa6\x9b\xfd\xbb\xf61\xca\x0c\xca\xf7\xfa\x07P\xbe\x9fQ6^\x15d{\xbc\"\xe4\xa1\xfe\xd1\xd9L\xbf\xff\xa5+8\xa6M\xbdg\x1d\xb9$\xc7\x7f\xa0m=\x84_\x0c:\xdc\xd4\xde\xaff\xd9=\xb1\xc8\xee\x1f\xe8\x06M&<\xf8\x9a\xd9\x86\xf4+\x13H(-\x8f_\x112K2T\x96\x16\x01q\x16\xe9K\xbc\x8f\x9d\x17\xf5<\xfc\xaa\xfd\xe5\xf4\x94Nk7\x1e/\xd0\x16S\xd3\xe9\x19\xe7v\x8d+\x119<\xcb\xcb\n\xe5 >~\x18\xc2\xbc\xb2\x1dS_\x8c\xb3\xe0O\x96Yp\xbe\xaf6$7\xcc\x03\xce\xe3+B\x8eg\xb3\x99~ck\xe6\xc0\xb1\xf1\x19\xb6\x8e\xd8\x0c \x9d \xb4\x913.\xf1\x17//\x9e\xbf;;\xbf|\xfb\xee\xa1)\x8a\xd8\xae9\xf3\x87\xf9\xa7\x8d\xd2\xfc\xb3E\x9a\xdf\x12\x83\x87\x99J\xf2\xe9\xd7\xf0\x87\xddb\xf6\x8a\x90_f\xb3\x99~\x1eR\xa6O\xa8AM\xdf@\xf9~\xb7\x98\xbd\xc1\x1f,\xfc\xa7+\xf6\xc6\xbf}\x0dy\x9a\x19'\x9eQ\xc8\x86\xe5a~o\xd0AC3\x82S\xde\xb7\xd9\xfb|\x8b\x8ar\x83\xb2K\xc2\x95\xc7T\xddP\xfev\xc9\xf0\xa4\xc9u\xb3O\xc9C\x18,\xf6\xadI*wV\x1e\xfbP\x9f\x08$\xa4\xbc.5\xf6\xdc\x03\x85\xb9y\xba\xaa\xb3l\xc6~\xa0\xa6\xfc\x03@\x1dK\x80Z tn\xe9\xf6M>\xe7\xd4\x1fk\xb6\xdd<\xdb\xcb3\xf7\x81#\xa59B\x88|^\xdd\x87\x98\x8f\xe7\xc1\xe9\x03\xf5\xa7\x84\xbd Yf\x9e\x00\xc0b\x8d\x1c\xad\x08\x99-P\xc1:\xfb\xf1t?\xfb\xd7\x11\x97\";\x97*\xdb\xd3\x1f\xd3\x19\xabG\xb4\x0d\x9d\xa9\xf0\x8f\x8b\xb7o4?\xd1\x91\xa6?\xb7^'nI\x13\xaaE\x84\x19\xc8O\xb6,X\xcfC\x16\xebZ\x8b8:l\xa6b\xb7\xbc\xb4\x86\xdb \xe0\xed\x02/\x97\xad w\xc2\x0f$\xaa\xe6\x90\xc6\x7f\xd51\xaax)\x9b\xab\xbfS\x01] wJ/x.\x87@\xbd\x0c\x84\xdazj8\x82\xa1\xe4\x9a\xea\xae\xd6%\xb0J3\xac\xdfm\xa4\xae;\xc7EIr\xe3\xe2\x14\xbeH\x16|\x9e\xb3q\xfc\x1a\x1e\xeb[n^\xa0SO>\xff\xc4{\xdf\xa3d\xe2\xea\x88\xc9\xf2\xe8)\x1c\xa9\xd6f_\x0c3\xde\xcb\xa3\x13S{\xac\x7fo\xd0\x96\xb6\xf9\x1f\xbc\x0b\xffi|\x81\xf6o\xf0\xbco'\xcfV\xe2\xc8\xd9\x9fk|6\xa4%|\xc0Y\xf6\xe8:'\x1fx\xe8s\x83J@\xa6J\xce|\x0d\xa9~\xe9O\xf9\x13~\x84\x19\xac\x836\xcf[\xb0C'\xb0\xe6x\x89\xf8\x94V\x7f\xec\x8a-F9\xcf7$[vkP\xf3\xa5\x9c\xe6\xcd\xfa0\x05:\xc5\x92Q\x7f\x87\xb10k6\xf5c\xaa\xbd\xa4\x08\x0f\x9cc\xd2g\xfc\xd3\x8f?=4,\xa4)\xe6\\\xff\x83\xe6i\xc7DE\x9b|<{\xf2\xf8I\xa9\x87S\x1e\xee\xc2\xbd3r\x838\xe3\x19&\xfd\xf0\xd4\x81\x87!V]`\x14\xab.\xb4?\xb9\n\xf3wWuA\x0d\x97\xe8\x04w\xc3\x0b.t\xc3\xca\xef\xce\x9f\x0f;\x11K/D\xf8\x84\xd5\xcd\xeb\xe2)\x85\x18\xe9\x8e\x91n\xed\x931\xd2\xcd(F\xba\x0f)F\xbac\xa4[G1\xd2\x1d#\xdd\x8cb\xa4;F\xbac\xa4;F\xba9\xc5HwH\xb08F\xbac\xa4\xbb\xa5\x18\xe9>\xa4\x18\xe9\x8e\x91\xee\x18\xe9\x8e\x91\xee\x18\xe9\x8e\x91\xee\x18\xe9\xfe=D\xbaM5\xa0c]]\xbf\xa2\xa5\xb1\xae\xee-\n\xd7^\x116\xd6\xd5\x9dB\x8a\xb1\xaen\xac\xab\xfb\xdb\xac\xab\xab-Ip\xfa\xcb\x06\x95\x9b_\xf5\x95 \x0e\xca\x124@0\x16\x89\x02\x92\xb7\x7f\xa1M\xc9Q\xeeU*\xf8\xad\x94)\x08\x02\x99UF\x0c\x865\xfc\xe0\xe2\xbf\x9f\x1c}\xe1\x86\xbd\x08A^\x98\x11\x16A\xf8\n\xf6 M\x83Vt\xc5\x04\xd8\x8a@d\x856\x1e\xed\x86\xab\x18\x85\xaa\x08\xc2T\xb0z[\xea\xf6*7DE\x08\x9e\xc2\x14\xe5tBSL\x8c\xa5pBRL\x88\xa3\xb0\xa2(&\xc2P\x8cAPx\xe3'&@OL\x8c\x9d\xb0 '&\xc7M\xdc\x0ejbr\xcc\x84;b\"\x0c/a\x10\xba\x0d-1\x19V\xc2\x0d)\xa1pT\xe8\xf5\xeb\xc4( \x1bFb$B\xc2\x80\x8f\xb0\x9a'Vl\x84\x9b\xfd2-.\xc2\x86\x8a\xb0\xf3\x14\x86\x88\x90\x9a]\xd1\xa0\x0d\x0f1!\x1ab\x04\x16B\x8d`2!!\xa6\xc5A\x98Q\x10S` \x9c\x82\xf8\x16\xfc\x833\xfaA\x1f\x8c\xf3G>\xe8\xdbR\xba\xc4'\xc1<\xf8\x08\xcb\x15\xef`\x97\x893\xd6!\x00\xe9\xa0\x8b\xc0\xdaP\x0e\xd3a\x1c\xc6#\x1c\x8c\xe3=\x12\xdd\xe0\x84m\xb0#\x1b\\p\x0dFa\xfbb\x1a\\\x11\x0d\x1a<\xc3\x04h\x06\x0f,\x83?\x92\xc1\x19\xc7`\x08\xffk\xd91\xbc\xe3\x8a_\x98\x06\xbd`d^\xf1K\x10nA:\xa2\x15\xediP\x0b\x13c\x16\xf4\x88\x85P\xbc\x02\xf3\x8f\xa8\x18W\xa3\x15\xa6\xc5*\xe8\x8e\xc16\x9c\x82\x16\xa50-F!\x1c\xa1\xa0A#\x04a\x11\xac\xb8\x03?\xd4\x813\xe6\xc0\x13q\xe0\x837\xd0\xa2\x0d\xf4\xdc\xb8F}\xdd\x90\x06\x9e8\x03\x0f\x94\x81\xb2k\xd3\"\x0ct\xf8\x82\x11\xe8\x02\xa5wF\x8b-\x08C\x16\x98P\x04\xd3c\x08\xc6\xcf$g\xfc\x80+z\xa0\xbf\x03:\xe4\xf1z%\xf1\x8a\xb4\xddA\xb8DR\xbc-]PL\xd9\x8d)\xbb-\xc5\x94\xdd\x98\xb2\xdbRH\x88I\xdbXL\xd9=\xa4\x89\xc2M\xe3\x02N\x01!\xa7I\x82N\x93\x87\x9d\xac\x81\xa7[\x08=\xddV\xf0\xe9\x16\xc2O>\x01\xa8\xd0\x10\x94Q\x87\xdb\x82P\x13\x86\xa1\\\x03Q\x9e\xa1\xa8\xc9\x83Q\xf6p\xd4\xe8\x80TL\xd9\xb5r\x16\x16\xa0R6\x15SvCBU\xb6`\xd54\xe1*\xc7\x18\x8c5d\xe5\x11\xb4\xb2\xe6\x1bz\x06\xaeb\xcanL\xd9\x8d)\xbb\x1d\n\x08o\xb9\x07\xb8b\xca\xae\xa0\x98\xb2\x1bSvc\xca\xee!\x85\x07\xc4\x94\xcd\xc5\x94]\xe5\x0bN!\xb4\x98\xb2;]@-\xa6\xec\x8e\x0e\xb7M3\xe7\x9cCn\xeeA7\xb7\x94\xdd\x0d*\xbb*\xca\x94\xa8K\x1f\xed\xd5\x9b\xee\xa50I\x9dX\xf02\xc0x\xd9\xb9\x86\xb5\xd7\x8c2\xb1\xebo\x9dGRV\xe1\xba\xa79\xdb\xbc\xae\xaa\xa8\xad\xd9\x8b\xb2o\x92\x81\xb9G'{\xef\xf4zk\xebd\xb7\x95\x17t\x99$\xf4H\xfc\x14\xde\x97\xfc\xdd\x13@\xf0\xdd\xcb\xff\x038O\x08]*\x9c\xe9\x13H\xf3\xb2\xc2h96\xd1\xcf%\xc9\xd8\x96\xf0\xb6\xc2x]\xa0\xbcj\x12\xde\x98\x93\x16\xb1\x8c7\xf6\x03.~\x95\xff\xc2\x86\xf4\xb7g\xf2\xb5\xa6\xee9\x7fg (\xcb\xf8\x0f\"\x88!\xda\x12\x97\x9e\x8b\xff[(\xd3\xe1\x9aF\xbf\x90\x02\xf9D\xf3\xe1\x1a\xa1\x1d\x9eLz\xfc4\xcf\xf1\x9c\xed\xf6\xffJaQ\xe5\xd4\x11\xd0@8-iy\x04k\xe4T\xb4\x19\x08cwq\xb95\xdf\x901|\xb4\\\x16\xb8\x94>\"j\x7f\x89^24F\xde\xcaA\xd3\x1c\x7f/-`U\xe7K\xa5#T\xc8\xec\x0e:\x85M\x9dZ`\xda\xa3f\xe6\xeb\\\xe6\xed\xb83\xe3\x94\xfb\x9bi\x03\x0fJ}\x17\x0ds\x0c\x9c\xfb\xd0~Y\xd4\x06\xa0'y\xb2\x82\x05*\xd3\xe4\x04v\xb8H\xc9\x92\xfeK\xc6jVX7(MSjk\xd48C\xc1:K\xc1!\xc2\xef0\xb2\xe0,\x19\x08\x8d\xf3\x1b\xda;p\xf5\x1a\xfc\x05\xd3\xc6\xfa\xad\xd1\xfe\xa9\xe3\xfd\xee\x11\xff\x89b\xfeaQ\x7fCsT\xa0\xceq\xff\xd1\x91\xff\xa9c\xff\x9e\xd1\xff\x89\xe3\xff~\x08\x00O\x0c\x80i\x0e7\xe8\x00W\x14\xc0\xc48\x00'$\xc0\x84X\x80\xb1h\x80 <\xc0D\x88\x80\x10L\x80\xa1\xb1\xa6\xac\x82\x19\x15p+\xb8\x80\xdbC\x06\xdc\n6\xc0\x0f\x1d09>\xc0\x15!0)F\xc0\x1d%\xe0\x8d\x13\xf0G\nXU\xe1C\x07\xac\xc0\x04h\x01\x0b^\xc0\xd1\xa0r\xc0\x0c\xf8X]\xde\xb8\x01\xd3&\xb8 7\xd8\x8a\x1c0\xdd\x8f\xf4-5\xdeY\xa9\x9b\x8a\x14mE\xa7\x7f\xfepA\xff?]nTy\x14K@\xdc\xce\xe7\xe3A\xcd\x19Ecb3\xed\xfd\xe2\x80\x85n\xce\xbdN`hU\x0b\xa7\xedy<\xa2\xa1\x05E4tDC\xb7\x14\xd1\xd0\x11\x0d\xdd\xd2\xa4\xa7!\x9f\xb3\x90\xd7I(\xa2\xa1\xc7\x9e\x7f\x02N?\x93\x9c}\xfcO>\x11\x0d=\xe6\xc4\xe3s\xde\x99\xf8\xb4\xe3v\xd6\x99\xf0\xa4\xe3z\xce\xf1<\xe5\xf8\x9eq\"\x1a\xbaG\xde\xa7\x9a\x88\x86\x8ehh\x88h\xe8\x96\"\x1a:\x04P\x1c\xd1\xd0\x11\x0d\xddRDC\x1fRDCG4tDCG4tDCG4tDC\xff\xde\xd1\xd0\x02\xaa\xd8i\xc3t\x8e\x0e\x0566\x10\xc6^k\x07X\xbf\xc9p\xd0\x02\xab\xe8\xd5+/dc\xafk\xbd\xc6lx\xc6\x91}\x0c\x074\x97^8\xe6\xb2\x012\xb3@\x82D*\x97M \xaauz\x83\xf3FtBff\x18\xb3\xf4@|\xfa8\xe6O$\xaai\xc4*;y\xf4\\\x9cb0bak\x1b\xb4c\x96-\xa8\xe5[\xe8\x9e\xd7\n\xd7\xb6\x15\x84^\xb6\xe2\x97\xdd\xfb2!\x86\xd9\x8ab\xb6\xce`p\x98\xc5\xe0\x10\x9f\x07\xb7\xf1\x06\x0f9A@\xac\xde\xd8\x98\xdaak8\xf5O\x1d\xb3\x07{\xdc\x1e\x02b\xf7\xe6\x0e\xc8\x8bs\\\xe2\xf70U\x0c\x1f\x02\xe3\xf8\xc6\x06=\x11\xce\xa3\xe3\xf9\xe0\x1d\xd376\xd5^\xae\xe3\x1e\xd7\x87\xa9c\xfb\xe0\x19\xdf\x07\xdf\x18\xbfyf\x07\xe0\x9d'\x8e\xf5\x83[\xbc\x1f\xa6\x8c\xf9\xc3\xe8\xb8?\x84\xc5\xfea\xaa\xf8?\x04a\x00\xcc\xcb\xc1\x15\xff|+X\x00\xb8E<\x00\xdc\x0e&\x00:\xc8\xfb\xaf\xf5\x90\xdf \xaf\x9c\xfa\x7f\xba9\xd8\xdc\xc2-\x0e\x8f\xcd\x85\xdc\xb0Ce\xc9w/~m7\xcb\x90\x9f\xf1\xdf5\x8d\xb1\x1cw\xd6\x8c\xe9\xc6\xee\xb3\xaa\xe3Ye\x97#\x1b.\xe0\xa43\xa1\xc0\xd4\xd0\xd8\xd2\x99'\xf6N\xe5\x8c&\x15\n\xbd^Ts;r\x97\xcc\x0bF|\x9eIQs\x99t\x07_\xa6\xeboW\xd0\xddk\x985\x8f\x7f@\xec\xce\xde\x13H\xabRZ2%\xd49\x9f\xccK\xae\xac?\xa4e\x7f~\xf8\xa4(\x94\x13\xe4(\x941IARLR\x98\xc6\xe1\xe5\xeb\xf8\x90\xce\x0dm\x83\xaeN\x8fI\x1d\x1e1I!&)\xb44\xa9#\xc3\xc7\x89\xe1\xe5\xc0\x88I\nc\x9d\x15\x01\x8e\x8aI\x9c\x14\xfe\x0e\x8a\x98\xa40\xc6!\xe1\xe3\x8c\x08pD\xc4$\x85\x98\xa4\x10\x93\x14b\x92B\x15\x93\x14Zr\x81\xb7\xc7$\x05\xddo1I!&)\xd8\x84\x1f\x93\x14\xb4\xef\xc4$\x85\x1e\xc5$\x85\x98\xa4\x10\x93\x14b\x92B\x8f\\\x01\xe31I\x81QLR\xf8\xfd$)t%9\x12E\xdf6\xdd\xc6\xb2g\xd7\xb8\xbb\x8d\x9a\x82\xc3\"\x1a\x8c\x84v\xe6Hy\x0e\x02\xe0\x01J\x11\x85kB\xc7\xcc\xcf\xb6\x1e8\xa4X,\x98j\x14[8\xf8-\xdd1I\xce\x0e\xe2d\xb5*qE\x0f\x01}v\xa1\x13'(q5\xcc8\xb8\x8d\xda\xeaJ!r\xfetr\x1cx\x0d\x7f\x7fFL.\x1b\xe3\xbf\xf0\xf1]\x04\xf8-brYL.\x8b\xc9e1\xb9\xac\x8a\xc9e-\xb9\xa4%\xc5\xe42\xddo1\xb9,&\x97\xd9\x84\x1f\x93\xcb\xb4\xef\xc4\xe4\xb2\x1e\xc5\xe4\xb2\x98\\\x16\x93\xcbbrY\x8f\\\x13}br\x19\xa3\x98\\\xf6\xfbI.\xeb\x1eqcrYL.\x8b\xc9e1\xb9,L\x8a1\xb9,&\x97\xfd6\x93\xcb\xd6\xe4\xe6\xf4\xe6\xf1iB\xf2\xb2J\xab\xbaj\xb0a\xaat\xb2\xe7\x9d\xa7\x18_\x12\x0c\x90lP\x9a?(\xa1\xdb\x8c\x1c\xd5^JX\xb7\x85/d\x7f>\xd1\\\xb0C\x99tI\x1bx\xd0\xc1\xa1\x98\xe4\xbb\xfd\x0f\x07\x0e\xf5\xc6\xa1E\x0c5\xcfF$\xd0\xe0\xd7\x88\x04r\x8b$AD\x02E$\x90\xf6\xc9\x88\x04b\x14\x91@\x87\x14\x91@\x11 \xa4\xa3\x88\x04\x8aH F\x11 \x14\x91@\x11 \x14\x91@\x9c\"\x12(\x04L\x13\x91@\x11 \xd4RD\x02\x1dRD\x02E$PD\x02E$PD\x02E$PD\x02\xfd\x1e\x90@\x8e1N\x06\x18*O\x7f\xe1\xff\x9dS\x86\x0d\xa53\xcf\xd9SM\x94\x13eY\x07q$\x15\xe4\x9a\xdc\xc0\x96,\xeb\x0c+\xa3\x9d\xdf\x92\x1b\xde\x8c\xf8\xf1\x93\x0du\xde\x90*\xcd\xd7s.\x99C\x83\xd3^0\xe3\x05]7 =#?\x85\xf3\x02\xaf\xe8\xfe\xcb=\xedW\xbc\xd1+H\xf3\xb2\xc2h\xa9R\xe7\xbd\xcf7\x15G*f\xcd4\"/p\xc6\xce\xe0\x15\x11\xcf\x1f\xb6d\x0c\xb2\x99Cl\x92\x05V;Q\x1f\x833:\x98zb\x92s]N\x15\xfe\x01Q\x9cq\xc8\xfa\x12\xefH\x99V\xf76\x00\xfd\xef;\x8c\x80xa\xd2!\xd8\xa6\xf9\\\xb4k\x1a\x00u\xe0\x15L\xc1W\xb01\xc6\xc9\x16\x84\x05&\xa9\x9clMG2\xeb,\xa1\x84\xb6\xa4\xce5\xbd\xe4\xe4\xd0\x8c\x8bC\x90\xd2s\x92v\xca\xf8@E\xaeq.\x1cz\xbc;\x12\x11D7T\x94\x0b\xe6L\xbe\xe37o/_>e6(\x7fV\x18s)\xf38\x9e\xe5\x95\xd8\xe6\x1a/\xaf\xb9\xb2\xa6\xd8\x03\x05\x86A\xfbX\x99\xaesT\xd5\x05.\x1b\x08\x0c\xbb\x0e\x9f\xac \xdb`\xd4vbOH\xdf\xa7y\xba\xad\xb7r\xf62\xdb\x1e\xb1a'%\xca\xe8\xbc\xc6\xac\x08\x8bq\xadR\xda\xa2\x8f\xf3f\xcdL\xa62\xb4c\xf8=\xfa\xc8\xf8\xe6\x9fbl?\xa3\"\xa3v\x04]\x98\xed\x82\x04:\x8cM\x8ft'\xc8\xb3<\xadR\x94 \x7f:<\xd1 }K\xf2js\xe0\x8b\xafP\x96\xed\xefMUu\xbf\xee\xa0\xa8\xd8\xe3\x93\xaa\xa9\x9fkR\xd4\x1a\x150\xd5x\x8by\xba\xc3EBm\xd15w\xa43$^Y\xa1k\xccbp\xcd^\xc8\xc1B\xba\xa8\xa8\x00\x16\xb2x\x9dn\xa0\x13\x92\x97\xe9\x12\xd3%\xc5\xc2\x19J\xc1o\n\\\xd2\x19w7]\xa7S\xb8\x90\x1b\xe8\xff\xc5%\xebh\xc9A\x8c\x9d\x05\xbbC\xa5\xb6\xa4\x9d\xf05\xcai\xfe\xd5\xec/J\xe3\x03Wd~\xb7\x9d\xe3's\xb2\x82\x1f\xb0\x18A\xb6\x86/\xd9\x00\xf3\xff\xcb\x8c\x07\x03\x0c\xa1+\x03\xfd\xb8\xd2\xbe\xe1\xe5l(\x89\xc7\xa7\x7f\x1aJ\"|9\x0f\x96\xa2,+\xcf\xfe\x8c\xa4\xb1\xfc\xf1\xb4k*+ZQB!\xff6\xe5\xba\x8d\xe6E\x87\x1c\x9aq\x9b\xd2\xd1\xbc\x88\xe6\xc5\x90\xc6\x99\x17p\xef\xa71\xf8\xdcwy\xf5#q\x97\xbf\xdb\xceM\xbf\xcb\xab\x1f\xf2\xd8\xe5A\xec\x83)_\xa1\x8d\x92a|\xdc\xaaP\xa86\xe7\xbdm\\\xac2\x93\xad? x\xdc\x81k\x1b\xd6\x11M\x83\x1c\xda(P8;\x94.\x01U\xad\xbc\xcaz\xb1M\xcb\xb2\x93\x86\xd0%\xf9\xd8\xff\x98\x90\x02\xdf\xc2\x98\x7f9'U/\x91d\x81\x92k\x93\x03\xb8q\xd7\x90\xa2\xe4y5\x9dM&-\xc5w2\xac\xa8 *Iem\xfd\xe5+\x07I-qi\xb4\x9e&\x11\x94\xbc\x9c\xa5#\xa3\x02'8\xbd\xc1p\xac\x1c:\xf8\xd2,\xa8\x87\xad|\xc4_\x86\xb9N-\x9d\xad8\xde\xed\x84\xcdD\xdd\xf7\x0e[6sP6\xa1\x84\x05\x1b\xe4 \x86\x06\x7f\xdc\xe1eZ\xe1\xe5|\xf2\xddR[\x13\xd9\xb8\x8d\x8a\xe0c\xc3W\xc7N\x98\xae\xafw\xab\xc2oe\x7f\xfa\xeb\xdf&\x1d\xfdx\xae\xe9\x90C3n3 \x9ek\x1c\x84$\x97I\xbb\xe4\xdd\x8e>\xba\x89\xa4\xb5\xc6\xa9\xd2\xa4j\x0e\xcf\xedv\xf90\x1b\xb4\xf7\x04\xcf\xcd\xa3\xcd\xb5\x9a9]uY]\x12\xcc!\xda[\x8c+q\x0c\xd0q\xd4l\x0e\xcda\xad\xc0\x94\xcb\xa9\xd9k\xac\xa4\x1e\x83\x8a\xc3\xa4Qt\xd4L\x9c\x9a3.\x1f\xbe,\xd8\x19\xa5b(\x1c\xc2>Fg\xf6\x16\xab\xd4FGg\xdd\x91\xf15\xa9\xed\xb9\x15\xf3\xbeg\x83nq\xc5\xad\xb1-OM@m\x90L\xd3\xcc\xc1\xce\xf0\xd5\xe3\x19|\x8fQ\xce\xb9Cr\x19\xb1\xecZ \xc1V7\xd5\x11(\xed\xc8\xe3\xaf\xbeb'\xc8\x93\x96\x0b\xf6g~\xac\xfc \xef\xca\xd24&\xf5\xc4\xa8m\xca<4,D\xcfc\xe3Ni\xb0\"\xf1U\x04\xe5\xdf\x9d?\x1f\xb4'K\xe6\xb7_\x8f\x19\xb0=\x8a\x19\xb0\xb6)\xd9R\xcc\x80\x8d\x19\xb0j\x8a\x19\xb0\x8cb\x06\xec!\xc5\x0c\xd8\x98\x01\xab\xa3\x98\x01\x1b3`\x19\xc5\x0c\xd8\x98\x01\x1b3`c\x06,\xa7\x98\x01\x1b\x92D\x1a3`c\x06lK1\x03\xf6\x90b\x06l\xcc\x80\x8d\x19\xb01\x036f\xc0\xc6\x0c\xd8\x98\x01\xfb{\xc8\x805\xd5\xc2\xef\xa4\xbbv\xda1\x9d\xa5;o4\x00\x08>l\x9d\x1c\x9b\x8a\x88K\xcdW\xa48\x91\x85\xd7y\x8d\xf4^cG<@}t\xd2\x17\xef\x11K\xcc\xa1?P\x9b\xfcH\x04)\x8f\xba\xaand\xc9~\xd7\xac`\x11W\x17\xcf*S\x81\xe5#\xfdl\xe0\xe6\xaf\xcc\x91 $\x87uz\x83s(+T\xd5\x8d\xff\xa6\x97\x10\xdc\xb4\xf4\x85\xec\xcf'\x9a\x10<\x90J\x97\xaa{\x08\xfe\xa5\x1a\xb8\x97\x97\xcf\xcbp\x85\xfd@\xca\xe9\xb2\x97Y\xc6\xc3~\xf4\xaf\xa4\x8f\xc5Po\xccB\xdbX Uz<\x96\x05\x91e\x15&'\x9bH9U\x96\xa8j\xfb\x94\x15\x9c\x05\x8e\x1e\xba\x96|\xe3\xac\x96\xe6\xd4\xee6\xc3\x99\x8d\x91w\xcc\xd5\xd2\x1e\xaal\x91WN\xbe\xf1W[7P\xb5q\x8e\xc2r\x9a$\x16\xcb\xc9;\"ki\x8f\xc5k=\xe2\xb2\x9cFFg9\xf9\xc5hm\xfd\xe0\xd1#\xafH-'\xdfx\xad\xa59j\x05\xf9Dm9y\xc5nm\xf3\xbd\x89\xec\xbaFp9y\xc7qm\xeb\xb3t\x89\xe6r\x9a,\xa6+\x9b\x1b\x13\xd9\xe5\x14\x10\xdf\xe54I\x94\x97\x93\x7f\xac\xd7\xb6L\xa4\x01e_Q\xb7\x12\xf7\xe5t[\xd1_N\xb7\x10\x03\xe6\xe4\x13 \xe6\xe4\x1c\x0f\xb6-\xa5N\xb4\xd81*\xcci\xc2\xd80'\xd7\x081'\xc5A\xcd\xbe/\xf8F\x8bmj\x8d\xc7\x92\x1db\xc6\x9cFG\x8e9\x19\xe3\xc7\x9c\x9c\x8d=\x87X2'?\xab\xd0;\xael\x9b\xa5\x0br\x83\x1d\xa2\xcb\x9c\xdcy\x9d0\xd2\xcc\xc9=\xde\xcci\xd2\xa83\xa7\x90\xd8\xb3m\xb6\x95\xf6\x084\xa7\x908\xb4\xb99\xfaU[4\x9a\xd341iN\x8e\xc1UN\xd6\xf84'\x8f(5'c\xf0\x84QH\xc4\x9a\x93\xbdm\x83\xffv\xb2\x186\xa7\x10a\xbb\xc7\xb39\xd9\xfb\x1b\x10\xdb\xe6\x14\x14\xe1\xe6d\x88\xc01\xb2G\xbb9M\x19\xf3\xe64E\xe4\x9b\x93\xd3<\x1a\x1d\x05\xe7\xe4\x18\x0b\xe7\xe4\x12\x11o\x9et\x88\x8bsr\x1a,\xff\x189'\xf7H9'm\xbc\x9c\xd3$QsN^\xb1sN!\x11tN\x1eqtN\xf6A\xb1.E\x976\xdc\xe3\xeb\x9c\xa6\x8a\xb2sr`\xd0\xb8\x16\xa7\x8b\xbbs\xb2F\xdf9\x85\xc4\xe0\x0d\xcd\x89\xe8\xbc1\x12\xcf)$\x1eoh\xae\x92\x9e?mT\x9eSPl\xde\xd0\x1e\xf79\xd8\xdc0\xf68='C\xb4\x9e\x93\x7f\xcc\xde\xd0\x981\x9a/\x1f \x88\xe9\x1b\xda\xe36\xb9\xd1\x1b:]|\x9f\x93=\xca\xcf\xc97\xd6\xcf\xc9#\xe2\xcf\xc9;\xee\xdf{\xcd1\xfa\xcf\xc9\xa8o\xc0\x12\x95\xe5\xe4\x1a\x9bu\xc5\x03\x88V}Q\x01\xe25\x1fl\x00'\xa3\x08Bp\x02\x86\xe6:qx\xf7%\xe5\x86\x19\xb0,\x17\x96+k@\x0ep\x9a\x10? \x1a4\xa1\x088\x19\xb0\x04\x86\xb7BQ\x06\x9c\xa6\x9b\xd5\x1e\x88\x03\xd1\xb03\xee\x80\x93\xceFq\xf5\xa1\xc8@)\xbfMy\x83;\x0e\x94\xe6'\xeef\xc5\x1fqR\xd3c\x7fjN\xb2l\x92\xe4w\xa8,\xb1\xc6\x13\xc6\xe3\xf3:\x83\xb9\xc7<\x7f\xb4_f\xb4)1\xd4\x0b\xf3\x0f\xc9\xc1\x8b\x86s]!\x03`\x80\x85\xf3wo\xcf\xdf^<{=\xbf\xb8|v\xf9\xfeb\xfe\xfe\xcd\xc5\xf9\xcb\xe7g\xaf\xce^\xbe\xf0x\xeb\xc5\xcb\xf3\xb7\x17g\x97\xf3\xf3\x97\xef\xce\xde\xfa\xbc\xf8\xc3\xdb\xcb\xb37\xdf\xfa\xbfw\xfe\xec\xe2\xc2\x8b\xc3w/\xff\xf1\xf2\xf9\xa5\xd7+\xaf\x9e\x9d\xbd\xd6\xbe s\xbf\xbd\x05\xb8Js\x94\xcdy\x81Y\x1e\xb8p\x9a$\x86\x19~\xd8\xa2\xccrg\xbf\xf0\xea\xb4\xb2v\x9b\xc5\x9b\xd9\x80\x0e\xe0\xbf7\xd8`\x830T\x0eW\xaa\xcd\\\xbdI\x11\xac\xdf\x9d??\x11^\x7fYw$'\x06\x00\x01\xd9\xd5\xbc\x8cn\x9dWif\x8e\x17\xca/=(\x075\x81\xe8\xb6\x83\xf3%V\x96\xf5\x0070\x83\x0b\x94a\x8f\xcby2Au\x18\x18\x8en\xd3\xb0\x1c\xb9\xf6\x82\xfd}S\x0f\xc8\xa9,\"\x00Z\x94\xd4\xfa\xbb\x1dF-\x8e\xf5\xde\xb7\x0f\xfb\"~\xee\xf4\xc7\xd8\x9a\xbd\xaf9\xb9\x9dn\xcav\x0f\xbb\x90\x13\xbf\xd1\xc8\xc9\x9c\x1a\xf4\xacT\xc9\xed\xf0j\x19\x92C\x06\x94\x9d\xe2\xc5UpE\x8c\x8d9w\x9d\x95\xc6\xab\xe6U\xba\x9d\"\x91p\x89*\xfc\x88\xb6\xe5\xa2);\x9f\x96=e\xff&\xab\xce\xb6j\xac\xdc\xd7\x14T\x9b\xe3|y/}\x18~_v\x04\xe7K\xde\x19j$\x8a\x87\xb4\x9d`E>\xcdU\xbb>-\x9c\x98\xb5~\x97\x93\xc0\xc1\xa9\x86\x97cS\xee+\xcd\xb3\x92\x97\x95y\xb3\x17d\xda*_\xceu\xbeB+}\x0d\x04\xd9\x9b\x99\xcd\"e%K;5\x80++\x08R\xd4$,+T\xdc\x8f\xae1\xcc\x88\x03\xded?\xd9_X\xf1%\xfa\xc7J\x94\xdd5n\x86NR\xb8/]5\xf8\xfc\x81\xaa\"+i\xad9\xec\x1b[\\\xa1%\xaa\xd0\x88N\x88*b\xc6#!\xff\x08_.\xfb\xde\x89P\xfc\x82\xaa\n%\x1bq\xbb\x83\x8b\xbd\xac_3\x15K\nJ\xc8v\xcbLT!d\xe9'\xec\xf2\xc2\x8f\xa1+R\xe7zo\xc6\x06\x17&?\x1d\x03\x89<==]\x92\x84\x9e\xd4\xcb-)g9\xae>\x90\xe2\xfa\xf4\xe6\xab\xd9\x9f\xffv\xca\xcb\xe33d\xfa\xff\x92\xdc?\xfa\x93\xb2A.\xc9\xf0\x91\xe8M\x93\x07\xea\xe2\xfb\x0f\xcc\xa3\xc8\xfe\xd3n\xe3\xf4\xff\x0c\xe0\xd1\xca\xf7%\xaa\xfe^y\x17L\xb0Y\x06\xe5\x86\x14U\xf3'\x97>\xf0\x1f\xb1\xa2\xa2\x17\xa7\xbb\xe9\x84\xe4B\x8e\x81,\x9b;\xe8\x01\xed\xd9\"\xadt\x01\x88\xa6v\xa3\xb93\xa6\xe2\x80.\xbd\xf9\xcbW\x96\xdetkH\xf2\x9dzX\xf80-\xdb\x87\x94m\xadP\x9a\xe1\xe5\xbc\xc0\xa8$\xf9\xad\x8e\x8d\xb57=Vz\xfe#\xf1\xa7\x0f\x9b}\xbfw\xfc\x0dE\xab.\xbb\xdayS\x1c\xb2\xf3\xa5\x84\x14X\x18\x1f[L\xcf\x13lj X\x93\x1b\\\xe4(O\xd4\xbaS\xbf\x0b\xf48i\xd3_\x867\x7fP\xe3\x03\x97t$\xdb/\xb5\x8f\x0f\x9b\xdd\xa1\xb50\xbf\x0eG\xac\xff\xc1\xe6\xc1\xc1\xb5?\xcd\x9fEtL\x95\x16\xc3\xc9h\x10\x9b\x0d\xe1\x1c\x7f\xac\xe6\xd7X\xa3\xb7\xac\x93\xca\x8a\x95\xebuU[\x7fYr!\x97<\xfd\xa7\x00\xa2\xa2\xb2\xe4{\xe29Z\xe3w|\x08f\xfcwMc<}\x8b\x1d7\xf1\xc7\x8a\n\x12\xc3\x96\x94\x15`\x06\xe3d\x08\xd0\x19\x9cU\x1d\x7f\xfe\xae\xda\xeb]\xb0\x15\xdd\x00\x99/7'\xb0\xa5\x93O\xa0\x7fU\xf6\x043)G\n\xd3\x90\xd0c\xb34\xb8E\xcb6v\xfa\x8f\xf6\xbc-\x8bSu\xb0\xad\xba\xfev\x05\xcdN\xefs\xd6\x98\xce\x02\xf8\x80J(qu\x02iUJ4v u\xce'\xf3\x92\x03K?\xa4e\x7f~\x98W?/\xa3)\x97\x96S%MU\x0b\xa7m\x86\xdb\xbb\xf3\xe7\xc3\x0e\xc4\xda\x9a\xb1\xb6\xa6\xdf\x9e\x19kk\xfa\xe5v\xc5\xda\x9a\xe3\xb3\xb7\xfc\xf2\xb6bmMu\x83n\x99Y\xde9Y\xb1\xb6\xe6\x98\xac+\xff|\xabX[sL^\x95OF\x95s.U\xac\xad\x19kk:[I\xde9P\xb1\xb6\xa6S\x96SH~S\xac\xad\xa9{\xcc\x9a\xbb\xe4\x91\xb5\xe4R\x95\xd1'S)\xd6\xd6\x0c)Oi\xcb<\x8a\xb55\xdd\xb3\x8a\x1c\xf3\x89\\2\x89\xdcr\x88bmM\x08\xcc\x0c\xf2\xc8 \x8a\xb55'\xc8\xf1\xb1f\xf7\x84\xe4\xf5\xc4\xda\x9a]\xb2\xe7\xec\xc4\xda\x9a\xb1\xb6\xe6\x80\xa6\xa8s\xe8\x9aK\xe3\x9dE\xe3\x95?\x13kkVa\xb91\xb1\xb6\xa6$\xa7\xda\x9a\"n6\xe7\xc9 \x9d\xb6L\xf1\xdc\xc1[\xbdp\xb6\xf8\xd3\x00\xc3qp]\xb11;\xc4\x98\xf9\xd0\xfb\x9a\xdc\x88\xcdI-\xb6\xa4\x92\xc3\xef\xf5\x7f\xef`/\x07\x1f\x82e]\xc8\xab\x18\x05\xbc\xb0/)\xd5\x8d\xa0\x96T\x95Cnz?\xbb1\xa3\xb8\xa7\xd4\x91\x17\x9e\xfer\xc8\x04\xff\xbb\xe1\xeb\xa4w\x0d)\xd3\x17\x9b\x81\xdb\x9c\x07\xf9\xad,\xc8\x84\x9aC&\xe4/\xe3\xd8X`\x9cC\x81\xff\x87\x05x\xad\xdc\xf0\\\x9dC^\xf8\xdf\xc7q\xc2A3]\x16\xd2\xfc)\x076t\xfe\xd6V\x8d]\xa1\xac\xb4\x94\x8d\x05ef\x96{6\x96m\xb1X\x1e\xd6g]9eZ9fW9dTyeQI}xC\xfa0\xb3!\x1a\x15\x17=\xf5\xc3\xff\"qk\xf2\xaaO%Th\x82q\x95L6\xb7\xe7\xeb\x18m\x1e\x18\xe8J\x0e\x7f\x16\xec\xe2\x12V\x05\xd9\xde \xc7-\xc6iv\x8d\xf7:\xb6\x07\xbb\x8c\x80 !a\xa9\x17\xb8b7\xcf3\xdf\x05C\xae\x08DF\x83)b1\x97\xf5 8\xd1d\x93U\x16\x9c\xd0[zz\xe2\xf5\x9f\x81\xacV%\xae\x80\x14\xd0g\x17:1\xe3\x12W\x13KK\xe3\x81W\x08\x91\xf3\xa7\x93\xe3\xc0\xfb-:\xc3D\x99\xd7[\\\xa4\x89\xfc\x1b\xd3I\xa2\xf45\x0f?l\xfe\x7f\xf6\xfe\xb5In\x1bI\xf4\xc6\xdf\xfbSd\xfc\xcf?B\x9e\x13R\xb7=\x1e\xcf\xee\xfa\xc4>\x11\xb2\xa4\x99\xedX_\xf4X\xb2'\xf6U\x05\xbb\n]\xc5\x15\x8b\xac!Q}9\xde\xf9\xeeO\x10\x17\x12$qI\x80h\xa9=\xce|1cu\x91I \x82 \xf2\x97\x99\xac\xd6\x86?\xd7\x83\xc7g\xf6\xf6\xbe\x12\xda\xaa~\xcc\x0f&\x94>\x92s\xd7\x9b\xfa\x03\x8b\xb4\xe7T\xfd#\x1bwF]Y\xcc[\x95\xc7\x12k]q\xec4\xce` cIo\xa09\x82\xe5'g\xff\xebD\xdbI\xee\xfd\x9b\x7f\xba\xba\x81\x8a\xddp\x0d\xaf)\x9aM/|\x84#S> \xf2\"\xbd\x9d\xaf\x1f\x80\x15\xdb\x03\x14\xa7\xd3'\xb4\xa2\x89\x94\x8d\xe7\xfbli\x9c\xd1[T\x8c\xd0FdJ\x87\xfe?\xcazWn\x0b\xce\x06\xa4A\x07\x9e\xf6\x07Z\xd2\xf2\x96\xf5\xb6:\xeff\xfb\x0b\x85\xbc\xca\xc0\x94\xcc\xee\x98 \x94\x0cWg?\xa7O\x08\xcd\x89\xb2\x9f\xaf\xe6\x0b\xdbY\x17\xc4\x96L\xcb:\xc5\x92\x89\xc7k|\x1e\xfbG\xeeB=M\xe5\xben\xda\x99\xa3X?\x8d\xd3KH\xcb\xac\xbd\xb1s\x1e\xdar\x03[v\xcb\xda\xc9\xa9\xbe\x9b\xa7\x8e\x9e\xdf\xb8\xd2@\x12[f\x7f\x12&z\xfak\xb0Z 4M\xbbc\xed|\xfb\xc7\x8a\x9a\x7f\x95\xd5\x1a\xb1\x99\xf7/\x7f\x1d\xbe\x88\xca\xdd?\xe4\x99\xbe<\xfcC\x1a\xfe\xd3\x88=\x0b\x9anL$\xab\x0f\xbdz\xado\xb45\x0f\xffg\xba{O<\x0d\xbf\x0b\x13LB\x99]\xc9\xf4\x83.n\x04w;\xb1\xd2\x9a4\xfa\xfe$\xfa\xdc\x03IB(0\xd2k:)!`\x12\x10\xd0$`L*\x05\xe3|\xd7\x12\x0bPz\x95\xd9\xbd\xe8\x1eWLn\x90\x12\xc20%$\x00\x95\xfe\x0e\xc4\xa6\xca\xb7\xf9\x03\xa2\xc1JH\x84+\xbd\n\xa3\x93\xe4\xaf\x84,!\x1a\xb4\xf4\xaaJM\x8f\x9f\x15\xb8\x84H\xe8\x12b\xc1K\xff\xc8\x1e\xa0L,| \xb9\x01L\xc0A\x98\x90\x13\xc4\x84\xd50&\xa4\x01\x99\x90\x0b\xca\x84$0\xd3\xff8\xe0\xd3\xe0?\x02\xa0 \x8f\x08i\xc2\xe3\x80\x9a\x10 kB\x1a\xb0\x19\x9a\x829\n\xda\x84\xbc\xe0&D\xc0\x9b\x10\x0fpB\x02\xc4\x89\x982\xb1 \xefW\xc3\x9c\x10\x02:\x01\xbf\x0c\xb0B8\xe5|<\xc8\xeaT\x15L7\x9f\x04\xb9:\xb5\x05S\xcd\xe7\x83]\x01\x05\xbcB\x02\xf4\nq\xe0+\xa4\xc0\xaf\x10\x0d\xc0B(\xb3z8 7\x16L\xc4\xc2\xb0\x90\x02\xc4B,\x14\x0b\xfe\x8e\xa7\xc0\xb1Ne\xa8t\xf2)\x90\xac\xf7\x81\xc0\xa4\x92\xcf\x08\xcbB\x08\x98\x85\xc4$\xf2\xa90-d\x1c\xbb\x11P-D\x81\xb5\xe0\\\xa0\xe0\xf6&\x92\xd2\xc6{\xee\xe1\xe0Ev'\x8d\xf7\xa5\x8c\x9f4:5a|p'\xca\x97,\x1e\x0f'\xfa\xceA%\x8a\x8f\x01\x16}gy\x93\xc4#!F\xdf \x9e\x04\xf1Q`\xe3(\xd8\xe4\xf0\xb81\x9c/1\xfc\xe0D\xf7\xa6\x85\x8fL\n?&\x7fw\xe8\x0b\xa6\x84\xd7W\x89M\x08\x1ft\xce\x87]\xf3\x88T\xf0\xc1\xc7\x0d\xe6w2_\x1axd\x12\xf8\xf8&z\xb7\x9cs\xa6\x7f\x0f\xf50\x9c\xfa=\xbes\xb9\xd2\xbe\xc7$}\x8fo\xa5\xf7\x16\xc4\xa6{\x97\xdd\xf2(\x0cv8\x98\xea=\xd8C\\\xda\xe1\xe9+pu\x92w\\\x8a\xf7\xc7h{\x86\xe4\xee\x88\xd4\xee\xfc \xd0K\xc1\x84\xeeA\xf3\x02*\x99;B\x0d\xf6 \x8aL\xe3\x8eH\xd6\x9e7U;2Q{Z\x9a\xf6\x89\x91\xf2$iG\xa6h\x0f\xde\xc1\x84\xe7\xccy\x97\xf3\xa5fG\xf4\xfc\xe3\xcf/\x19\x13\xb2\xfb\xd3\xb1\x07\x1b\x1fJ\x90\x9a-\x11\xfb\xd8\x07\xd7\x84\x961 \xbb7\x05{\xc6\x04\xec\x9e\xf4\xebA\xcbO\x06DT\xe6\xef5\x89\xd7\xbdi\xd7\x1f\xbf\xcd\xab\x12\xae\xcb\x9f\\\xe9\xd6\x1f\xbf\xf1\xfa\xfa\xb0\"\xd1z \xcd:\xb7\x06\x15\x98\x12\xee\x85+)y\xae\x04\xeb\x88\xf4\xea\x19\xeeE\xa0\x17\xd9\x12\xab\x87\xdfG\xf9\x92\xaa\xdb\xe7q\x7f\x0b&\xa9\x9dQ\x99\x9dg\xb9\x9cg\xfa~z\xfb\x8a29\x03er\xce\xb6\x1c\x8f\x0dD\x90c\x9529#\x82\x0ex\x8e\x80\x83\x94`\x03\xca\xe4\x9c1\xb0 &\xa8 *\xa0\x8029\xaf\x0d\x1eH\x08\x1c\xc8\x124\x10\x1f0@\x99\x9c\xd7\x04\x08\xc4\x04\x07$\x04\x06P&g\xca\xe4\x1cX%E\x83\xfe\x94\xc9\x19\x05\xf5\xa7\x00\xfd\x94\xc9\xd9uX\x10\xdc\x8f\x80\xf619\x80c`}\xca\xe4\x9c\x92\x0c9\x04\xe3S&g\xafU)*\x18O\xa6\xc11\xa9\x1ao\xcf\xcb\x9cj\x8b\x1d\nk\xfa\xadu\xb9\xd6.\x15.\xa4T\xd8\x92\xae\xbdVG\x0cI\xd7\x8aj\xa0\x8c\x94\xef\xb3+\xeb}\xb5\xec\xf6$\xe3\x9aV\xf3\x99\xee\xfb\x13\xcd\xb865\x88)\xfc\x13\xb8\xf3\x8c{\x95a;\xcb\x93\xb7-\xe7P7u\xaaD\xba+\x1a\x8f\xd9\xce\x02\xf3Z\xc8\xa4\xbdNE\xc3\xa3b\xef\x93\x1fy\xf4\x0d\x12)^\xb838`\xa4\x84\x86\x8d\x94 \xe2\x89\xb2?\x04\xfb,\x05\xa5\n{3\xa3a\xcf`\xe3\xfd\xb9n\xf2\x82\xa0h\x144\x15\x06\x9d\x19R\xb5YzZ\xd4\x88\x97z\x86\x87\"u\xa3XM\xdb\xe3\x9d\xd0X\xed\xf4:\xfd\x9f\xb7\x12i\xd7p\x94\xa3\xec\xbc8\x92\x97\xb7\x8e\x8f\x1d\xf7|b\xe3\xb4\xbb\x19\x00$j\xb1\x0b\xc0I\xfe<\xd72&g]\x8e\xe5\xe9\xfc7\xa6\xac\x9d\x84r\x99\x99l\xc1\x04q\x96\xed\xf5>\xc8\xfe\x07Xg\xe4v#\x1e(.\xd5\xe9\xbd\x98t\xf5\x7f\\O\xe1\x90\x17\\1GC\x8apU\x86\xa0\xff\x87Y\x02_\xfe\xeeP&\xe2\x8f\x84\x1a_\x0e\xf1+n\xac\xa4E\xbaf\x17-\xc2\x0f\xace\xc2\x7fZ7plZ\x9d\xcb\xd8:i\x0b2z\xa51=\xef\xce\x10J;d3v\xa5\xb76\xfc\x89\xae\xfe\x9a\x866\x13C;\x0e\xbf+D\x16\xe1\xe7\xd0?#\xcas\xdd\xc1\xb9\x96\x83y'\x9dywe7\x1d\x1f\x08 M/\xe3b\x80\xb4\xd9\xd2O\x0b\x01iJ\x08H\xcb\xb3\x02$ \x8d\x804\xbb\x10\x90&\x84\x80\xb4\xa5\x10\x90F@\x9aK\x08H# M\x08\x01i\x04\xa4\x11\x90F@\x9a\x14\x02\xd2R\x98.\x02\xd2\x08H\x1b\x85\x80\xb4\xa5\x10\x90F@\x1a\x01i\x04\xa4\x11\x90F@\x1a\x01i\x04\xa4\xfd6\x814\xaaZ\x9dZ\x12\x98\xaaV?\xa2q\xc3c\x94\xaaV\xe7\xb0\"U\xad\xa6\xaa\xd5\xbf\xc7\xaa\xd5\x03I}\xf9\xeb\x00\xddyJY\x1bf\xd4\x88\x9d\xe6\xab\x15M=dw\xac\xe5\xc3\xd7\x0f\xc4\xa1@\xa4\xbe\xf2\xd5\xebqA\xa2Nx\xb9\xdb\xb5>\x02[\xfd\xf4\xd4\x01l\x17\xbd\x92\x04\xd4\x051\xea\xa0\x0b\x06\x81\x81\xe5[\x9a\x8d\x1a\xbd\xf8t\xb0\xd1\x18\xc7K6p\xda\x8bM\xfb\x00b\x1e@\xa6)\x1b\xaeU\"\x01i\x04\x06\x9d\x17\x82F\"\xd0i\x00\xf4z\xfc9l\xe6\xcc\xe8\xb3\x17|\xb6\xcf\x02x\x1e3\x01\xc7\x9ci#\x1aS \xd1\x98y\xe6'\xa21\x89\xc6\xb4\x0b\xd1\x98B\x88\xc6\\\n\xd1\x98Dc\xba\x84hL\xa21\x85\x10\x8dI4&\xd1\x98DcJ!\x1a3\x05h$\x1a\x93h\xccQ\x88\xc6\\\n\xd1\x98Dc\x12\x8dI4&\xd1\x98Dc\x12\x8dI4\xe6o\x9d\xc6\x1c|\xa1\xae\xf6\xc7r\x00v\x8f\xff\xca\x8e\xac\x84pD\xd9t7u\xf3\xbe\xff\xf9'\x89\x8fi\xdcF\xbc#\x84\xf7@\xe42\xd4\xeaD}Q+Gc(\xf9Lw\xf0\x89\xb24\x869L\x99\xb4E\xf6\xdd\x9eGK\xfc\xb6|q:[\x02A\x17d\xa06{p\xf3m\xd2\xf4<5\xd9\x11\xf5\xd8\xe3\x9a\xe5\xdc\xee\xcbU\x83\xdd\xd7\x1b\x7f\xed\xf5\xb8\x8e\xe4\xa8\xb9\x8e\xad\xb7\x1e\xd72\xa7\x89\xd3j\xacC\xe3\xda\xa8wu\x0e\x81f\x18\xf3D\x0c\x9e\xf1\xde\xe2\xb7#8C \xc1\x19\x04g\x8cBp\x06\xc1\x19\xa3\x10\x9c\xc1 \xce\xb0\x0b\xc1\x19Z\x08\xce 8\x83\xe0\x0c\xe4*\x89\xe0\x8cA\x08\xce0\x85\xe0\x0c\x823,Bp\x06\xc1\x19!\xe3\x13\x9c\xe1<\x87\xe0\x8c\x89\x10\x9cAp\x06\xc1\x19\x04gL\x04\xeb('8C\x08\xc1\x19\x04g<]8c%\xec \\\x97n\xd8\xe1\x17\xe1\xd9\xd4\x98\x83\xf2s\xde@\x01\xfb\xf2\x96\xd5\x8b\x8eN\x18\x07q\xeeg\xba\xabO\x94n0\xfao\n\xff\x04\xae\xbb`\x82\x91\xa8\xad\xab\x8f^\xa7\xb1\xb7d\xb6\x1a\x8dB\x99\xf6t\xcb\x7f\xe8\xc4\x08\xa8\xc6H\x07I \xe3\xc7\xd3\xa8\xb0(\x9b\xea;\x02\xb7\xa57\x8a\xd48\xb9\x97r\xef\xb17\xa46\xcds(\xb9\xf4\x95\xd4\x8d\xbb\x0bR\xb4\x1buw\x96\xbe\x0b6\xd1\xe4\xf9\xfc\xc0\xddy)\xac>\x07\nM\xf6\xd3\xdb/?\xbe\x7f\xb3\xf9\xf1\xed\xfb\xab\x1f\x7f\xd8\xfc\xfc\xc3\xbb\xb7o^]\xfd\xe5\xea\xcd\xeb\xa8\xf3\xfe\xeb\xcd\xbb\xa8\xe3_~\xfb\xee\xfd\xcb\xab\x1f\xa2\xce\xf9\xe1\xc7\xc8\xc37\x7f\xbbz\xff\x1f\x9b_\xde\xbc\xf7\x9f\xa8\x89\x8d\x04C\xdc\xb1r\x7f\xc8Q\x80\x13\xa2G\xa4\xbc\xb4\xf9<\xeb?\x15]\xd7lK\xb1g*\xb6\x8e\xf5\xef\xa8!\xee\x1ey\xf8\xe6\xfdM\xb4\x83\xed\xfa\xb7\xd5\x8f\xd3\x07\xa7\xe8\xa7@\xe1\xf3\x15-\xee\x97H\x81\xa6u\xa7\xaa\xe4\xaeVM\xda\xa4\x9e\x1dm\x92;\xd5\n\xc4\x83ud\xbc\xd8\x15\xbcX1\xd5\x86\x8a\x0d\x8e\x17\x91\x89{\x1e\x0c\xef\xc0\xf0K\xc1y\xb1=H\xc7\xa5\xbek\x9e=4\xf9e\xb9m\x8eGV\xef\xa4O\xebX\x0c\xec\x84y=\xe90\xbci\xce\xb5\xdbYx`\xad\xd3\xbf\x03 \xdcR\xdf\\^\xee\x9am\xbf\xbe\xec\xd7A\x175\xe3wM\xfb\xe1\xf2\xf6\x8b\x8b?\xfd\xcb\xe5\xb1\xd9\x9d+&VG\xff\xabo\xf8\x8b\xaf-\xca0\x83\xa8\x1f6\xc6\x80\x91\xb7\xaf\xee\x17H\xcd-k\xeb\xa2\xde\x9a\xaf*\xab\x8a\x97R\xc9\xb6\xa9\xbb\xb2\xd3\xe5\xb0\x07\x84\xf4\xea\xf5\xf3\xf1%\xf8\\\xef\x8c\xb8\x07\xa2\xeb\xc9X\xbc^\xa7uO\xe5\x12O\x8e?*yj7\xed\xa4\xabT\xf2\x14eL*y*>\xc8\xc4\xb7P\x0c\xc1)?\xbc~z\xfbj\xa6\x8d\x08N\"8\x83\xefw\xcc\x8b\x0b\x88\xe0$\x82\xd3y$\x11\x9cB\x88\xe0\\\n\x11\x9cDp\xba\x84\x08N\"8\x85\x10\xc1I\x04'\x11\x9cDpJ!\x823\x05\x82$\x82\x93\x08\xceQ\x88\xe0\\\n\x11\x9cDp\x12\xc1I\x04'\x11\x9cDp\x12\xc1I\x04\xe7o\x93\xe0\xa4b\xa7\xa9\x95$\xa9\xd8\xe9#\x1a7\x90,\x1c\x90\xae\xb6K\x88f\xc2\x88L\xb0\x1a\xed>\x1c\xf8\xaf\x8cm\x0f\xa1g\xc7\xb2\xe6\x97\xb7_^3^|yY\xd4\xf5\xb9\xa86bA\xd2\x8d\x18\x8f\x0d6{)\x0e};\x1c\xa9w\xe8\xa0W\xd8O\xa3R\x17\x8c\xba\xe4\xab\xce\xca\x99\xcd\x95}\xa6\xfb\xf9D\x993\x87\x9dL\xf1nty\xb7\xb8\xc2[H\x8b\xcbk\xaft\xf0\x1eX\x94M\xee\x8a\x14\x7f\xfa61\x82\xe6w\x0c\xe5\x1f\xb7)\xba\\\x0c$*\xbf\xaa\x84|\xe5\xbe\x8d\xe2G\xd8f\x8e\x9a+\xcb\xfa\xa622=\xda\xe6\xc8+}\x88\xe2\x93\xed\x0f\xe9\xa0\xc83A\x0e\x9a\xd4\x8fOvf\x9cY\xc5\x94L3\xe2h.\xc7\xa4\xe7\xb0\xa7E\x95\x1d\xf7\x19l\x9d>\xa7\x8d7\xfe\xa7\xb7\xaf\xe6k6\x9a\xdbhn{\xe2s\x9bX\xab{\x16\x7fo\xc5\xef\x93YMF\xa8\x88\xa0\xac\x9b\xe1Q\x1c\xd7\xfc\xd6Y\xed\xfb\xb2\xe6R\x95\xfa\xf5\xc9Nk\xa6AL\x99~\xa2H\xabL\xf3\xf9j\x03\x0c\xac\xa6\xa0*\x97\xdb%\xde!\xe7\x1fp\xbd\xb57;V7\x0e\xb2;8`\x14\xcd\xca\x95/p\xdb\x94\xe2\xdb\xb6\xd7k9~\x98_7m\xc1\xd9F:\xf7\xd7]\xf9X\xdc\x97\xc7\xf3Q\xafW\xa5\xca\xfeS{\x9c\xcb\xfbky\x1bs,\xee\xf34\"\xe6\x9a\xa5#\x90\x00}\xcd\xb2\xc6]s\xdf\x14\xd5\xe6\xba\xa9w,5(E]\xb1W\xd4\xdf\xe4\x13k\xb7\xfd[S\xea\x84\x827G\xdb\xd7\xc1u\xd5l?t\x9b\x13k7\x0f\xacH\x8d/A\x04\xc4\xa8\xe6\x0d\xef9y\xe1\xbe\x99\xd0_xr\x0e\xe2%.\xa7\x15\xd4\x1b\\\xbd\xb3\xd5\x9cF\xdc.\xbd\xafm\xbf?\xb5\xf7\xb5|\xd9\xa0\xdf\xd8\xc6W\xbc\x1a\xe8:P\xb0\x18\xc1\x9e\xe1m%){\xf9\xaaz\xae*\x18\x95\xbc\x83\xee|\xdd\x9d\n\x01\xdb\x8d\x1bu\x1f\xd8\x83\xf5\xed\xfe\x1bz\xb3c^\xec\xd6\"\x00\x83\xc5\xb2\xbe\xd0\xb5\x99\x93f\xdb\xd4\xb4\xfe\x9e1\xec<3i\"\xa6I\x18h\x12\xb6\x9f\xfe\xd4&a\x9f\xcfB?\xa4\xae\x118\xcc\x95\xe6\xbc!\xa7\xd4~q=\xd6\xab\x18g\xdd\x9b)\xbd\x9c\x12w>\xeb\xa1n\xac'I\xca\x07\xf60ib\xffo\xedJ\x19Z\xa6\x1c\xee\xbaOY[\x19\xf9\xa6\xd3m\xf0\xbc\xec\x8c\x99\xe8\x9d>zx\xdf\xf5\x13NQ\xf5\xef\x94}\xd9q\xd6\xb2\xdd\xd0\xadNx+\xfb\x1f?\xb0\x07u\xe4\xa0i\xde\xf7\x89\x11\x9fY\x93\x08\xfc\xf9\x99:v\xf2^\x1c\x9a\xa4~|\xb2\xaf\xc6\x99\xa5M\xf9\x14\x13\x84\xff\xad\x88x\xc4\xfb\x9b\xea?yu\x9d;\xe7\xd5\xc3N\x9dq\xac\x1a\xf1\x92\xe3\x138L'\x12\x9eQ\xe3T=\xb0v\xaaV\xf8\xca\xd9}\xd9q\x11)\xe38\xc6|\xaa\xed\xc7\xd8\xc7\xf6\xe4P\xc4B`\x18\xf6\xc3Z\xc0\x9cu&\x8b\x02\xf9\xe8\x0d\x89\x96\x96a>E\xb5\xa0\xfa\x91\x8f\xb3\xa7\xb3\x81n\xd2\x8ac\xf6+\xad8\x1ea\xc5\x11z\x19vU\xd1\x1d\xcaz\x8f\xfe\xf0\x9b}\xed-7%\xb5F\xb56Q\xe7O\xdfX\xea\x90\xdf\xd0\x17\x9ds\x88\xa5}\x90\x95\xfb\x9a\xed6j3\xec\xae\xacw\xcd\x9d{L\xa1\xb6\xc2\\;a\xc7\xb2\xde\xa8\xcb\x9dX\x9b\xe7Z\x8eH\x9a]sW\xf3\xf2\xc86\xff]\x94\xd5f\xa7\xb0\x9f\xa4k\x89A\xb4\xb9\x11\x81\xa3M\xbd\xd95\xe7\xeb\x8a\x89~$\xa9\x0b6}q=\xd9\x93\xc7\xb8X\xf8\xcd=xC\x14\x95\xb6x\xca\x868\xb2k\xb9\xe2\xd7\x8f\x9c\xed\xf6[\xdc\x03\xaed\x13\x8f\xb3\xd19\xfc\x91^x\x0b\xfb\xd0\x0b\xef\xd3\xbf\xf0\xfaI\xa5\xac\xf7\x9b\xb2\xbei<\xef\xbdw\xf2\xb0\xab\xfe\xa8\xe1\xed\xa7\xce\x15i\xd1\xc4\x1egU\xc9\xc8\xc0\x827\xad~\xb1M_}\x86\x1a\xf5\xfb\x93}\xf1\xf5\xbdz\x1a\x03M\x81\x8d\xc9#\xa5\xe3E\xcb7\x07ob\xa5\xa0\x92\xf0\xbb\x16<\x93\xeb(\xff\xa1\xf2*q\xc5\x05\x0f\x03F\x14\xc1\x14\xf8\xb5L\xcf\xb0\xeb\xff\xcc\xe0\xc7\x9f\xfa\x1f\x9c\xea\xce\xf5\x8b\xfe}\xeb\x08\xc6.\xeb\x1d\xbb\xdf\xc8\x8c\x8e\x8f\xdc\xf3\xf0\x8bM\xcaU\xdf$\xd5\xf7\xb2\x83\xb2\xde\xb6\"*\xb8\x9f\xf4o\xc5&Vy\x1cBl\x85]JO\x9c\xb4t7\x965\x14\xd2\xc5'\\ \xce\xc37\xc7\xe2a#\xc3\xe7\xe5\xa2H$\xffa/\xb6\xcd\xf1Xr\x99\xa0\x81\xab\xdc#\x9ep\xf0mS\xff\xb7\n\x1b\x1d\x92b\xb9/j[\xed\x0d>\x00\xce\xda\xe3\xf0\xd5*\xee\x96-\xe7\xa4)\xc7R\x14\xb3\x95\xbd\xbd.\xf9\xb18\xd9\xa3%\xe4\xb0\xd8\x9ck^\xa6O\xd1\xe3\xbd\xef\x07\xe3\x8b\xfe\xde\xac\xbc\xff\xef\xcb#\xebxq<\x81h\x99\x1a \\g\xbaSw\\\xb5\x1ev\"q\xacSYU\xde\xb2\x9au\xdd\xb0\xf8\xb4\x9b\x827\xc7\xeb\x8e7\xb5\xcb\xdb\xad\x0d1O::\x15l\x0f\xffv`\"\xbe^\x0e\xa7\xc9P>\x14\x1d\\3V\x1b-\x82\xcf?\x94\x95\xeb\xf9\xed\xa59\xcbDgZ\x89g\xa41\xfe\x07\x9d\xafU\xa03\xf5\x96\xcd,+Gz\x07\xceN\x02\xb0\xbf\x9f\xcb\xdbf\xab\x82\x82Z\xb9\xd1Q?\xc8\xa4\x01\xee\x8bo\x9b\xfa\xa6\xdc\x9f[\xb6\xeb\x87\xe85;\x14\xb7\xa5+}\x86\x1c\xc3\xfa\x91\x109i]\xc9&\xa3\xc6h\x8e\xf9\xe9%\xa8\xf6H\xf2H\x93\x8fR\xcc\x1cP\xcf\xb3YY`\xcc\xcf8\x84\xaa\x955\xec\x7fz\xfbj\xfc`W\x1f\x99\x1d\xdc\xf5\xf7\xccv{\xecK\x97m\xd3J\x1d\"\xebW+;?D\x95\xf5\xaf11\xf5\x99\x96\xb1\x9aC\x9f\xf1\xae9\x8e\xed\xf6\xc6@\xb7\xec\xc4D\xde\x8do\x8bv\xb8I\x81P\xcb\xa9Y\xc4\xf8v\x05[N\xa3\xb8\xbd{!\xe6\xc7\x1ajG\xc4\xa6\xe4r\xf2\xe5\xe8\xe4\xb7\x87?\xd26\xc9\xc2>\xb4M\x92}\x9b\xc4\x1b=I\xc5P\x82\x90\x01\xb8\xde\xf4T\x0c%\xafq\xc3e<\xa8\x18J\x0e+R1\x14*\x86\xf2\xcfY\x0c\xc5\xbf\xe3\x7f\xf9\xeb\xb6\xa9\xbb\x8d\xdaa\xf6TC1\xbf\x9eM\xef\xf7\xfc\x93U\xd2\xcd[\x91\x11T*U\x9a\\~\x80\xcft\xa7\x9f\xa8\x1b\xe0\xb6\xa86\xa6\xc9\xb2~l{w\xf6\x03K\x9b\xf0\xae~pm\x14\xde7\n}^f\xdd\xcd\xf7\xed\xe5\x87w\xf23\xf46\xfc\xfd yw\xf0\xa3\xf6\xef\xe3v\xef\xcd]z\x87\xc2\xd0\xde}\xd6\x9d{\xe4\x96^x\xd7\x1e}\x9f\xfd;\xf6\xb8{\x9dq\xb7\x1e\xb5W\x1f\xda\xa9\x0f\xef\xd3\xe3\xfa\x95\xb6G\x0f\xcd\xd9\xf6\x05\x082\xa5hp\x87>j\x7f~\xb2\x0f\xef\xba(rw\x1e\xbf7\x1f\xb13\x8f\x1e\x87k\xe7\x9b\x94\x1dy\xb9\xf3\xee\x9cg\x83\xfb\xf1\xf1\xbb\xf1\xe1\xbe\xe4\xdd\x89\xc7\xec\xc3\xe3w\xe1\xad\x0d\x9e\xbf\xfa]\xdb\xf4j{\x90\xed\xfa3\xc4\xda\xc7\xa2l\xba\x1a\x92\x82\xdd~\xcb\xb2\xfbF\x9bo\xb4\xf9f\xfd\xfd)m\xbe\x99_#\xaeQh\x1e\xa3\x9f\x08\xfd\xcf!\x14h\xf6\x8c\x1a\xba\x1e9\x03X\xc7E\x96\xfe\xe1sk\xc7*\xb6\x17/\xb1\xee\xf2W\xf5\x8f\xa6\x15\xed\xf7|n\x19S\xc2k}\xce\xebQ\xd3\x18n*\xb6W\xc6\xbf\x8bHS\xf9\x0d6\\k\xd0\xa4\x8cd\x0d\xb91.\xf8\xb7\xfeK~[\x88\x17\xfeM\xdb\x1c\xa1\xa8e\xc2|\x1d\xc1*\xea\nH3\xcb\x04\xf8\xfd\x1d9\x8b5\xef\xa1\xdc\x1f\xa08\xf6\xef\xabA_s3N;\xfb\xa2\xeb\xbf\xb2%\xd19\xecT\xc8\xbc\x98r-\xdd\xb4-\xdb\xf2\xea\xc1\xdc7\x98|;\xda\xec\xa1\x8e{\xb2\x1f\x91\xe3-\xdaX\xda\xa8\xe5SL\x10c\xcb\xfc\x0f\xb9\xf3\x02\x80\xb8\x08\x8c\x17RC\xdf\x83\xb3\x01nb\x01\xd4\x9a\xc3Qw\x17\xd7_\xd1\xddA\x97\xbb\xbb\xdd\xa1h}w?\xad\x8fR\xabZ#\x8a\xd6\x8f\xc3U\xff\xd8\xb2-+o\xd9\xce\xd56\xac\xd1\xc6\xd9d\x8e\x9e\xf7\x1f\xe9\xea[\xb9\xf9\xc0\xea\x0e\x0e\xfdlu\xfd\xe0\x83\x88\x8a\xadX\xb3\xabU\xb9\x9bzi\xeej\x99\xa9\xba\xa9\xd98\xacT\xe5\x94\xceV}\xd2=\xe2\x1a\x99$\xa8\xb9\x93_\nM\xed\x81\xf2\x02\xb7\xf4\xba\xa8\x8a:\x14\x1b\x98aJp&\xd9\x91\x82\x1a3\xf2m\xb3R\x0dv\x94\xbcjJ\xb3\n\xa7\x18\x10\xaaP\x88\xec\x8e~\xa5\x89X\xb9Z5\xceW\x93\xe6\x87\x1f\xdf\xbf\xf9F\xe4\xb6\x96\xc7\x8e/\xc3\xa2\x86\xabZo\xac\x0d\xd5c:\xef P\xb9u\xd5\xba\xde\xfd\xb8\x96\xfb\xba\xe0g\xf9\xfc\xc8\xb5O?\x08\xf7\xcd\xbe\x11\x89kSa\xab\xf1!2?Y\xc4\x97|Q \xc7[c>h\xec~\xcbN\xd2\xb3gUWr\xa3\xae\x8b\xbd7j\xa4\xce\x13 \xab\xc9a\xd8\xa4\x13\x94Nw.\xb9v\x94X\x95m+\xe1\x1d\x1c^\xd1)_\xb9\xb6W\xfd8bT\x90\xa9\xb1d{6\xd2^nm\xcb\xe7\xd4G\x7fM\x1ai,\xb3\xa6\xa9\xb4\x0c?\xd1\xe4\xa3\xd2\xf2\x8d\x9c\xbe\xc1M4\x19\xd1d3\xf9(4\x99\x7f\\\x88o6\xdbwD0\xb1\x8aM\xd1\xa5\xf5\x0b\x8d\xf2\xee*\xa1\xfd\x95)2<5\xec\x96\"\xc3\x1f\xd1\xb8\xe1\x98f\x8a\x0c\xcfaE\x8a\x0c\xa7\xc8\xf0\x7f\xd2\xc8p{\xa4B\xd3.\x03\x15.[f kR\xa9-l\xe1'\xf3\xb0!Har\xf2\x18$\xfe\xcf\x11\x8e0\xe9\xb2:\xe0\xc9\xc6!\x98w\xe2\xa9E\"\x98m{t\xf0\xf8\x89\xc6\"\\\xb3\xed\xe1\xab?\xbeX2\xfa^u\x93\xe50&$\xa1k\xb7\x9f\xa8\xe7\xd66\xe8\xde\x8fa\xc0\xe6X\xf0\xeaS0\x94|\"\xc7o\x01\x8c\x11v\x1d\xff\xe4F0\xda\xb0\xc2\x08;\xd6q=w\xe1-\xc1j\xdez\x9f\x12\xff40J\xa0\x94\x0f\xe0\x9e[)\x98\xa7W\xca\xb6er\x1a\xf3\xe7\xb5\x1e\x05y#\xa5\x84c\xb7M\x89\xb9\xf9Rf\xad\x87\xc9\xa7\xad\xfa\xdb\x90k\x00\xa1\xcf\x1c+\xc0\x9b\xe6\x03\x9c\xaaYe1\x9bl\x9b\xe3\xa9b\xa2!\xee\x82\x0f\xa6$\x191\x94:y\x94\x04CN{0\xb1\xe3\xb9.\xefe2\x0e\x1f66\xca\xc4\x88\xa3\xe2\x90\x11\x05\xaaUT\x9b@\xd0\xcc(QF\x8c7\xc9\xac=\x13\x93\xa8\xdft\xd8\x04B\x9bX\xbdO,#\x12\xcf\xb8\x03\xae\xb4\xc8\x10\x8c~\x8a\xfb\xe4\x16\x19\x9b\xa2gY\x15k\x13x\xb1J1\xa6\xd7\x17\xe3\xec\xac\"L\xc4\x83,\x1c9\x08M\xa6\x19C\xe6;\xd7\xd72\xfb\xe8\xa6tf\xed\x1e%\xca\x80\x88@\x00SBA\x01\xa6\\\xe9d8\"\xf6z\xe7\x03\x94=i\xedG\xe9_R!\xcb\x8e\x96\xea\xe7\xd3\xa6\xdamZv#sw<\x92\xe1\xf2\xdb\xed\x1doK\xf1\x99qj\xba\x92\x97\xb7L~\x96\x94\x9d\xb4\xc0\xb3n\xec%B\xdb\x90\xc2\xa5\xe3\xcd\xe9$\xdd\x8c\xec\x9e\xb3\xb6.*\xf5\xd9\xe47~\xdc#f~\x02\xbd\xe9\x9bkD\xc8Mf\x0e\xc4\x02@e%jY\xc5n\x8b\x9a\xc3\x91\xf1bW\xf0\xc2\xf7\xb8LZ\xab\x965\xf23]l\xae\x18\x0dP?\xba\x94a\xbb\xfd\xd3\xf4Ea8\xc7\xaa\xb2\xe32\x08\xffT\xb4\xbc\xdc\n\xcf\x9eK\xcd\xb0f\x7ff~#\xd7{\x11q\xea \x1a\x95_\xc1\xc6\x15\xf42x\x9c\x9d\xc4\x86\x1a\xaa \xe3\xd21\x10\x13\x1aX/\x86\xd7\x8a\xa8\x92\x8f\x81!\x82[\x1fN>s\xc5\x03D\xcbS\xc4\xb0\x1e\x85\x96\xa7VI0$-O\xe7B\xcb\xd3\xb9\xd0\xf2t\"\xb4<\x1d%\xc9p\xf9\xedF\xcb\xd3A\xe2\x97\xa7\xa8\x89\x17u\xa3\xf1\xfd^\xf4\xd9\x9d\x8f\xc1\x1d\xb5e3\x9d\x91\xb2\x01JOH%\x18\xd1\x0e1I\x1a<\n\xcd\xf4\x0d*U\x83\xef\xfa\x9e,\x0e8K\x9a\x9d\xf7\x98o\xfa5 \xedc\xd5\xa7l\xd6\xe9\x95\xb4\xbd\xf1C\x0c\xedj\xab\xa1\xed\xe5\xb4\x14%\x99\x10\xe2\xc3{F\xa1$\x13\x80{y\x87^<\xbf\xcd$\x13\x8b\xee\x08w\xfb\xc4;\x9c\x96]b\xeaSw&\xf1\x1co$e\x99X\x18\x88\xb2L`^x@Y&(\xcb\x84\xf3H\xca2!\x84\xb2L,\x85\xb2LP\x96 \x97P\x96 \xca2!\x84\xb2LP\x96 \xca2AY&\xa4P\x96\x89\x94D\x0d\x94e\x82\xb2L\x8cBY&\x96BY&(\xcb\x04e\x99\xa0,\x13\x94e\x82\xb2LP\x96 \xca2a\x06\xda\x19\xaa&\x9f\xd3\xd3\xa3>u\x96\x89\xae\xddn\xa6\xd5{\\\xed^\x1e9i\xfb\x08\x83\x19m\x1f\x80\x17&0\xe2y\x0fb#\x8e\x1d}\xd8u\x1c\xd9\x87\xe5\x91Q}\x98\x96*\xc9\xd8\x03\xca\xf5\x81\xb1\x16\xe5\xfa\x90\xf2\xc8\xc6\x0dg\xa9\xa0\\\x1f9\xacH\xb9>(\xd7\x07\xe5\xfa\x18\x81e\x03<\x92\xca\xb1\xa5J\x7f\xd6*\\5K\x87k,\xaa\x97\x0e\xcaD\x92\x90\xd1\x90\x8b\x95\x98\x1eN\xae;\xfc\xc4\xf3\x86xm\xa5Nx\xb2yD\xc6!\xf2\xc4\x92\x88L\xc7\xb2'\xb5\x03\xc2_\x88q\xb9\x81\xed\x9a\x90Vjs\xd0\xe3t\x7f\xe2*\x8af\xecZ\xae*\xa2\xff<\xa1\x85Qq}\x88;!\x05\x1f\xb9\x81\xbdsR\xe6q|\xa5=\x82\x0f\x1d\xbd\x81\x0b\xdd\x8b\n\xdb\x8b\xb6\x11.\\/\xd2N\xb30\xbd\xd2\x12\xa1\x876\x12.4/*,\x0fm\xa4\xb8n\xfbB\xf1T\xad[u\x88\x87I\x93\xd2\xbfX\xfa\xd7\xeaN~\xa0\x8b\x9a\xbc\xd0\x7f\xaa\xa1\x8c\xf1)\x8d\xe0\xe9\xfc\xa4+Y\xee:>l\x0e\xdd[\x04q\xaf%D\xdek\xc9\x19&\x17\n\x91K\x0e\x8f\x8b6P>\xfbD\x84\xc3\xc1\xc1\x83VJI\x0e\x85\xc3\x8fs\xcb\x1as\x16 W\x1bM\x0e\xc6\xc1\xc5\xc5\xc0M\x9a9O\xcf`\xfb\x10\xf0\xa5i\xc0\xf4\xd9\xd2\xdb\xde\xbe\xad\xfa\xf6\x10\xe9\x19\xba\xb2\xdeW\xccL\xc1`U56\xcf\x93\x93\xa1\x7f9\x0c\x1a\xc7\x1d\xcb\xb2\xee\xcd\xda\xbf>^\x88\xcfB\xb6\x13\xe9!\xe6\xbd\xa2 +!\x14d5\xfe\x845&\x05Y\x89}\x8e\xf9\xf3\x8e/\xe9;\xd3f\x81\xf9e\x0c\x96\xf7\nT\xeaW\x0b\x05a\xe5\xf9\xec\xa6 ,\n\xc2\xb2\x0b\x05a \xa1 \xac\xa5P\x10\x16\x05a\xb9\x84\x82\xb0(\x08K\x08\x05aQ\x10\x16\x05aQ\x10\x96\x14\n\xc2J\x89c\xa2 ,\n\xc2\x1a\x85\x82\xb0\x96BAX\x14\x84EAX\x14\x84EAX\x14\x84EAX\x14\x84\xf5\xdb\x0b\xc2\xa2\xf0\x9f\xb8\xd8\n\n\xffyD\xe3\x86\x03W(\xfc'\x87\x15)\xfc\x87\xc2\x7f(\xfcg\x00\xd8<1?\xffc\x89\xf9\xf9e8o\x12\xe93\xaa\x83\xb2\xbei\xc4\xf8\x94\xf5\x7f\x87\x0b\x0f\xba\xfe9\"{\xdeIc[\x0c\xa3\x8e~\xb2a=\xf3[o\n\xff\x04\xc8\x8d.f\xfa\x11#^\xe6\x97\x9c,D\xa7\xd1.\xa3\xb9\x1c\xf0\xa8\xa9\xef\xff\x88\xda\xbeC\xdcLY\x8b\x0f\x0e\xfb\x87u?ZY\xdd\x9d\xbb\xcd\xe9|\xedD.\x83\xd6\x05\x84\x85\x01\x016\x01\xce\xc2\x10aeH\x80\x9c\xbc\xca\xec\x9e.\xcfvin\xd8 \xc2\xc0\x13$@O\xfe\x0e\x14\xfc\x80\x06\x9f \x17\xfc\x04\x89\x00\x94W\xa1(x\x81\x85\xa0`=\x08\x05\xd10\x94W\x95\x824\xa2\x80(\xc8\x0dEA$\x18\x05\xb1p\x94\x7fd\x0f\xe0\x14\x16\x90\x82\xdc\x90\x14\xe0@)\xc8 K\xc1j`\n\xd2\xa0)\xc8\x05NA\x12<\xe5\x7f\x1c\x8a\xfe\xd3<\x08P\xc1\xe3@T\xf0\x88 \x15<\x0eL\x05\x91@\x15\xa4AU\xa1)\x18\x07VA^\xb8\n\"\x00+\x88\x87\xac \x01\xb4BL\x99\x7f@\xc0V\x90\x03\xb8\x82\x10t\x05\xf8\xe5\x19\x02\xbe\x82\xc8U\\4\x84\xe5\xd5&\x00-\x04\x88\x05\x11\xad\xcc\x08dA\x14\x94\x05\xb9\xc1,H\x84\xb3\xfc\xe3\xaa\x0b\x03Z\x90\x0ei9\xf5\xf5W\x0c\x81Z\x90\x0d\xd6\x02\x07\x11\x8ew#\xc06\x7f.b\x80cq\xbf\xf9\xc4\x06\xd0M\x98\x8c\xabcq_\x1e\xcf\xc7\xb9E\x82\xca\xe4\xec8>\xf9\xdb\xa2\x06v\xcbZe\xcah\xdbH\x12\xe7)\x98\xc8h\x89\xd5R\xbb\xa2\x0c\xa6\xe8\x16\xf1%-+:\xb6\x00\x98\x0dKK#\x05U\x85\x8dx>\xf5o\x87`\x06x\xa4\xe1\xb0o\x1c\x884\xb0\xd1J\xfd\x1c\n'\x82\xf8\x83\xed\xa9\xbc\x0b\x00\x88\xf2N\xed\xecv9\x96\xf5\xa6\xffP5*\xab\xacx\x0bc\xfbi\xb9\xeab\xbb\xe5Y'\xbe\xa0a\xc7\xb6U1\x0f\xeb\x99)\x13#N\x1d\xad\x15z\xf3\\\xd9\x02`\xfel=\xca\x98\xbf\xbb\xec\xf9\x8bq!\xc2\x84-q\xaa\xde\x9c\xf9\x96\xddk\x99$\xdf\x16 L\xa9\xf1\x95Pj\xfc<\xdf2\xb1Q\xa3r\xd8Rj|D\x84(\xcf\x11\x1d\x9a\x12\x19J\xa9\xf13F\x81\xc6D\x80FE\x7fRj\xfc\xb5\x91\x9e Q\x9eY\"<\xe3\xa3;)5\xfe\x9ah\xce\x98H\xce\x84(NJ\x8dO\xa9\xf1\x03\xab\xa4\xe8\xa8LJ\x8d\x8f\x8a\xc0L\x89\xbe\x04J\x8d\xef\x90`\x94eD\x84%&\xa9zLd%\xa5\xc6O\xc9.\x1f\x8a\x9c\xa4\xd4\xf8\xf8\x08Idt$&2\x12\x17\x15I\xa9\xf1!1\xf21\"\xea\x91R\xe3g\x88j\x0cF4\xa6F3:\xdf\x9b\x94\x1a\x7f!\x94\x1a\x9fR\xe3\xcf$G\x9arl\xa4at\x94aT\x84!\xa5\xc6\xe7i\x91\x84\x94\x1a_\x0b\xa5\xc67\x84R\xe3K\xa1\xd4\xf8y\x8d\x1bN\xeaN\xa9\xf1sX\x91R\xe3Sj|J\x8d?\xb2i\x97\xbf\x0e\xff-\x7f\x93\x97\x88\xce\x95?\xa4\xca7`DG\x96|\x0b\xcfz*\xca\xe1\x1d?IA\xbf\xbc\x90:\xea\xe9\xa7\x9ew\x11-I\xd8\x1d.\x81|\xd07\x83qn\xe4N\x1d\x1f\x9f8\x1e\x976\xdekM\x08Z\x14\x10\xb8\x0f\xc2\xa2\x80\xb6*\xa4B?\x1e}Q\x89\xe2\xb3\x82?A\xf4'7\xfc\x83\xc7\x7f2\x01@i\x08\x90G]dj\xf8\x95\x18Pn\x10(\x12\x05\xca\x0c\x03\xc5\xe1@\x91@\x90o\x0c\x0f\xa8\x10\x16 \xca\x0c\x05\xa1\xb0\xa0\x8c`\xd0Z4( \x0e\xca\x84\x07\xa5\x00B\x1ee\xe8\xe4\xef\x8f\x00 =\x1e&\xf4(\xa0P\x1c*\x94\x1d\x16\xc2\xe2BY\x81!<2\x14\x0d\x0d\xc5cC\xc1\xa9\x10\x97\xe6}5:\x14L\xf1\x8eZP!\x00\xa2\x98UW4D\xe4{ \xa2\x13\xbb\xe3\xda\x97\x11%\x8a\x81\x892\xe3Di@\x91o\x04\xa1\x92\xb9'BE\x0em\x1c\x95\xc8=\x0fX\x84\xa6c\x10pQ\x14^\x14\xca\xe7\x9b\x82\x18\x85t:\x1dm\x99@\xa3xc\xe2a\xa3P\xdf\x12\x80\xa3D\xe4\xc8\x9fC:\x8c\x1d\xe5\x05\x8f\xf2\xa0G\x88\xb1\xb1\x1a?B\x03H8\x04 \x0b!!\x06N<\x88\x14\x83\"yS\xb2g\xc1\x91\"\x81\xa44$)\nJ\n\x19\xdd\x9f\x86=p.\x1eN\xca\x87'\x05\x1b\xe5|~\xf2AJ\x08L)\x1dTr\xa8\xe3\xc1\xa4\xebYa\xa5\x10\xae\x94\x08,9t\x85\x93\xad\x87\xa1\xa5@\xa2\xf5\xdc\xe0Rvt\xc9\x0d/\xe5\xc4\x970\x00S<\xc2\x14\x051%`L\xb1 S y\xba\xbfuX\xb4\x04\x8b3%\x00M\x91H\x93\xa7\xbb)X\x93C\x15\"]z\n\xda\xe4\x19\xf2\xe1T\xe9\x19\xf1\xa6`\x9a\xf4\xc7@\x9cr\x8d\xc5\x08\xcc)\x06t\xb2/\x0f|)\xd0\xb9\xd5km\nn\x17 %\xf9\xb9Hr\xee\xd0\x87M}\xeeK|\x8ekyR\xd2\xf3\xe8\x94\xe7\xc1]#_\xba\xf3\xd8d\xe7Q\xa9\xce\xe3\x12\x9d\xa3\xd3\x9c'$9\xf7\xa58\x0f\xda\x0fw\xb3\xd7&7\xc7\xa46\xc7%6\xcf\xd4\xa1\\)\xcd\xf1 \xcd\xcdv\xadj\xf8p\xd4\xaaT\xe6\x81L\xa5|\xbd\x8f=\x98\xc2\x80\x882\x0c\xaf \x1c\x8a \x1b\xca\x1c4\xc4Q!C\x19\x03\x86\xb0\xe1B<.X(6T\x882\x0cO$:8\x882\x0c\xa3B\x82R\x02\x82(\xc3\xb0\xeb\xb0`\x10PD\x08\x10&7mL\xf8\x0fe\x18NI\xd2\x1b\n\xf7\xa1\x0c\xc3\xf8\x10\x1fd\x80\x0f&\xbc\x07\x17\xdcC\x19\x86!1\x9c'\"\x98\x872\x0cg\x08\xde \x86\xee\xa4\x06\xee8\xdf\x9b\x94ax!\x94a\x982\x0c\xcf$G\xb6WlHNt@NT8\x0ee\x18\xe6i!8\x94aX\xcb?k\x86\xe1ijEW\x9b\xa7G\xd9k\x08?v\x9bc\x93K\x1e\xca\x8e7m\xb9-\xaaMY\xdf4\x97\xbfJ\xc0\xd6\x93=\xf2?\x863\xae\xea\x9bfH\x17\xd9\xf7rT6\xcf\x19)\xb5\xea~N2CN\xf5}\xa6\xbb\xfcD\xb3B\xf6]\\\xae\xff'M\xe9\x0f\x99\xdc\xfc\xb9YTzY\x9beFq\xb6\x0d\x82\xce\xc9\x03+v\xae@\x0d\xafZ\x08\xaa\xeeE\xed\x11{\x988 \xd9\\\x17]\xb9\x85\xeb\xaa\xd9~\x10\xfdv\x1f\x1fj\x13\xa0\xda\xd5\x8b\xb8Z&\x80\x11\x81\x13I)N\xa7\x8f{I\xcc\xc6\xa3\x94W:\x03'l\x8b\x13?\xb7\x03\x90\xad\xff\xdc\x9e+&c\x8bNm\xd3??\xfe&\x16\xc3\xfd\x94\x1e\xc1\xfe\x1f\xdbCQ\xd6\xcf=\xdf\xa2*U\xb2\xe0\xa5\xfa\xb7\xf7p\x12\xec\n^\xf4v9oe\xdb\xd4\xe7\x88l\x95G\xa1\xde\xc0\x1d]<\xcf\x1c\xd5\xe0\xa5t\\\xb0JmQw\xf2m~,\xb6\x87\xb2v$|\x124dYoJG\xb0(\xe0n\xa9/\xb6\x02p*0T \xc0G$T\xc5zY\xdc@\xbfu\xe4\x0cpj\xd9\xedG\x9e\x00\x0eEw\xc8\xfc0z\x93\x97\x89\xb5\x0e\xdft\x8co|\xd3\xae\x16TO\x01\xdd\xdb^<\x85\xe7'\x87yQ\x9d\xb9`\x86\x9d\x96\xb0\xc9!\xc6\xec\x807\xfd0\xd0\xde\x16-\xef\x18\xff\x0fq\x07|CW@\xd1|\xe3o2\xaa\xa9\xa8&\xaa\xe6\xf5\x97c\xc2G!\x1f\x86~\xdas\x9c\xd3\xff\xf4\x91\x9a7\xe6\x0e\xffH\x17\x9c\xdb\xe3\xa6m\x8ez\x1e\x87\xe6\xccOg>\xfem\x9c;\x1c\xdaDa\x8e\x8f\xde\x871\xa5\xf5\xc7\xb9^q:}\xa4+\x89\xe7C\xb1\x10\x1f\xe9\x92\xec\xb6\xdc\xb1z\xcb>\xd2\xe5\x86\xf17.\x7f<\xaf\xa5~\x06n:\x16\xc8\xd4\x0e\xd9\xda7Y\xd4\xc9\x99l\xf2\x151,\x93\xc4\x96\xa2\x9aI\xe4;\xc7\xb6\x8c\xb9-\xaa\x8eyc\x11V\x81\xf8\xdeW\x18\xe6\xe5\x85K\x84/\x05e\xe0\x98eqTj|\xaf\x1e3\xb2\">A\xbe\x14\\\x9a|)\x08\xeb\x03\xf2\x0e\x80R\xe7O\x9c?\x1e\x87\xb8\x03\x10y\x17 \x81n\x0d*\xe4V\xcc\xc1\xf7y \x05M\xbb\x065\x8d4l\x88z\xd5\x12K\xbf\x06\x15\x9e\n~@S\xb0ZlN\x9ch\x1aV\x0b\x9e\x8a\x0d\xaa2\xa9\xd9\x08:V\xcbJJVK\x1c-\x1bT\xa7H\xbe(jVK,=\x1bTx\xd3\xb4Q\x14\xad\x96(\x9a6\xa8-%I\xbf\x14\x14]\x1b\xd42\xa5o1\x94\xad\x96l\xb4\xed\xa8p\x0du\xab%\x81\xbe\xd5\x92\x85\xc2\xd5\x82\xa7q\x83\xaa&\xb4n\x98\xca\xd5\xf2\x08t\xae\x96\xc7\xa2t\xb5<\x02\xad\xab%\x86\xda\xd5\x82\xa6w\x83\x9aL\xbaW\x8c\xef0\xc5\xab%\x8a\xe6\x0dj\x13\xf3\x04\x96\xea\xd5\xc2\xe3\xe8^-\xb1\x94oPaLY\x00)\xab\xa9_-\x81\x12\x01R\"\x96\x8e\xc1o\xa4QbW\x99QtpP\x1b\xd7\xf40\x82\x12\xd6\x12\xd3\xe2Hj\xd8\xabk\xba\x9aE\xd0\xc3Z\xa2(b\xaf\xa6`\xd1\x01))\xa4qx|\xa2\n\x10HI!\x8fC\n9\xaa\x18\x81\x94<$\xb2\x16$T\xab%H&k\x89 \x94\xb5\x04r_\x0bI!\x96\xb5`\xf4{S\xebf#\x99\xb5\xa4\x19\x1fO6k\xc1\xf4<\x81t\xd6\x92D;\x11I\x99k \xccL\x10L\xbf/\x05K\x02c\xe9\xf3Ao,\x85>\x9c\x18C\xa3k \x18#\x85N\xf7*D\x94\x8b\x90\x92B\xab\x07\x1f\xa6p\xe9\x08)\xf1\xf4zp\x8e\x0e\x94\x91\x90\xe2\xa1\xd9\xbd\xe7\xa5\x92\xeeZr\x8e\xf7\x08\xf2}P\x8d&\xe0\xb5\xb8W=\xbe2\x14R\xe4\x8e\x99\xaf\x18\x85\x94\x98\x1d\xa5\x94\xc2\x14\xfe\x91\xd06Gty\n)\xbe\"\x15Rbz\x94T\xb0BJt\xd9\n)\xc8\x9dL_ \x0b)\xb1\x85,\xecgy\xcbY\xb8Oq\x17\xb5\xb0\x9d\x13\xbcHB\x81\x0b)\xbe2\x17\xea\x08\x9c\xbdc\x06\xcd\xda\xc2\x17R0\xe5/\xa4\xe0\x8a`Hy\x84\xee\xe6*\x8b!\x05_\x1cC\x8a\xd9\xd2l\x1d\x1a\x8e]U.C\n\"\xd7vv\xe2&XFC\nr0@\xa4\xfd ca\x0d)(\x1bb\x8alHy\xc4~G\x96\xdd\x08\xea\xfb\x9c\xdd_\xe0\x8boH \x96\xe0\x90\x92j\x85\xb5\xe58\xa4\xe0\x8brHIm-\xe2\x9ee+\xd31U\x17*\xd6!%X\xb2CJj\xf7\x93\xcbwH\xc1\x15\xf1\x90\x82l\"\x96\xfa\x8f\xb9\x8b\xf1\xc5=\xbc\xea\n\xbe\xaa\xc4\x87\x14L\xa1\x0f)\x91\x86\x0b\x85\xcf@\xb2\xf1\xb0\x05@\xbc\xea\xd4\x9c\x9eR\x06DJ\xa8\x18\x88\x94I\x0f\xd7\x97\x04\x91\x92\xf95\x8c/\x12\"%\xe6\xaeA|\xc1\x90\xa0>\xa9dU\xd9\x10)H;B\x84-\x01UHD\n\xf2\x81\xd2\x12kv@\x97\x16A\xa92\xca\x8f\xe0jF\x8c\x82+3\"\xe5#\x18%\xa6\xf0\x08J\xa1\x9c\x85\x03\xe5GP\x9a\xe2l\x8a.T\"\xe5#\x99\x16U\xba\x04\xa5M\x977 \x170A\xa9\xc3\x19\x17U\xeaDJ\x84Ac\xde\x8a\x90`\xfc\xd8\x12(A\x85wE\xe7+\x84\"\x05]\x0eE\n\xd2^1}\xcfX eP\x18W&E\n\xbaX\x8a\x94\xe8\x92)R\x90\x06\xc4\xae]C\x15@\xa4t\xf1\xa5T\xbc\xfa\xc4\xaej\\A\x15)\x88\xb2*Rx \xa6K\x8a7\xb2K\n\xd2\xde\xe8d\x05X\x93g+\xbd\"%\xa6\x00\x8b\x14\xec#\x98V\x8c\xc5\xa9n,\xc9\xe1\x8d\xb8\x88/\xcc\xe2T%\x0b\xb6`\xcb\xb3H\x89.\xd2\xe2\xbe\xfaX\xbc\xc5_\xaaEJR\xc1\x16\x7f\xd7Qe[\xa4\xc4\x16oq*2\xa6jD \x17)I\x85\\\xdc-(\x07|\x85\xfb\xcb\xb9HI+\xea\xe2\xed\x0c\xdbyJ\xbbHI+\xf0\xb2xZE\xda\xa3if\xa1\xa1\xb8K\xd9E\xd4w\x99e;\xfa\xe9\xed\xaby\xdb\xa9\xd4\xcb\xf4\xedK\xa5^,\x82}\xb7\xc4\x06\xc3\xca\x01L\xa5^\x10A\xae6\x8e-:\xb8\x15\x1f\xd4J\xa5^\xb4\xc4\x06\xabzw\xf2c\x82T\xa3\x82S\xa9\xd4\xcb\xda\xa0\xd3\x84`\xd3,A\xa6\xf8\xe0R*\xf5\x92#x4&h\x14\x1d,J\xa5^\xa8\xd4\x0bz\x95\x14\x15\xcc)?\x97\xa8\xd4\x0b\x95z\xc9\x15`\x89\x8c\xed\x0b\x06TF\x04Rb\x8a\x84\xc4\x04NR\xa9\x97\x94j)\xa1\xc0G*\xf5\x82\x0fdD\x060b\x02\x17q\x01\x8bT\xea\x05\x12\x03\x0f#\x02\x0e\xa9\xd4KD\xc0 \x95z\x99Il\x00 \x95z\xb1\xa9\xa3R/\xd6\x13\x90AxT\xea%.\x98\x8eJ\xbd\x0cB\xa5^\x94\xe8\xb2)\x0b\x9ew\xf2\x19=\xe5\x81G\xb2W\xfd}(\x90\xc2\x97%4\xcciie\xc1\x14p\xb0#\xb1\x85T\x84\x1d\xd4\x19\xb6\xb2)o\x07;MJ\xa6(5\x16\x08vR$\xe5\x9d\x10\xf5\xde\xef\x00\x87\xbcNp\x089\xc2\xc1\xef\x0cw\x9e\x93\xea$\x87\x8cc7\xc2Y\x0eQ\x0esp.P\xfe\xbb(+\xb6\xf3\xfb\xed\xae\x9b\xa6b\xceMu\xec\xee\x86\xbc\x92\xf2R\xee\xe0\xee\xc0\xd4\x1e\x97YO\xbd\x1f\xe1\xd7\x8c\xd5\xeah\xf7\x1dn\x9b\xe3PP\\\xb8\xde\xa5#\xc0\x9a\x8c\x1a\xd4!\xae^b{\xa0.\xa4R9\x8f\x8d\x96\x7fw\x9e\xf6\xb9l\xe7\xe5\x90n\\\xfd\x97p\xfc\xd8OA\xec\x92\xb1\xfa\xec\xc8\xad\x0d\x82\x85\xf8\xf6\xc7\x1f^o\xde\xbd\x7f\xf9\xfe\xe7w\x9b\x9f\x7fx\xf7\xf6\xcd\xab\xab\xbf\\\xbdy\x8d>\xa3\xffW\xe4\xe1W?\xfc\x15y\xbcW\xb9\x0eb\x8e\xea\x82/\n\x1beO\xec \x90\x17R\xc3X\xad7T\xe1}\xfd\xdb\xe7e\xbd\xad\xdc/\xfe\x8eU7/\xc6\\\xf2\x8eA0\xa4\xf3\xde\xc8\x82\xf9\x1f\xa1k\xf3K\x8eDA\xc3\x8bJ\x15\xee\x87\xb2\xeb\xce\xd2\xdb\xe2~\x15\x19\xbc\x81\x91\x97\xdc\xd5\xd1\xb1u\xab;0\x1c7\xa1!\xcc\xbfs\xd6\x1e;\xb0\x17\xfc\x1fe\xe8\x80\xff ]M4\x1c\x9b\xba\xfc\xc0,1\xf2\xa3 n0D\xd8\x08\xc6\xab\x8e\x85W\xe0p>\x16\xf5\x8b\x96\x152\xa1\xbeX\xd1\x85l\x04\x18;\x81b#\xb8\x93\x0d\x81\xc7\xe9\xa3\xbe\xec\xd8\xc91\xccv\xfc\xb1+\xf7u\xc1\xcf-\x83\xcf\xd9\xbd\xff3\xf8\xe7\xb7M\xcb\xfb\xb7\xcc\x7f\xb2\x87\xeb\xa2c\xce\xc9\x1b\xe0\x8e]w\xa5\xab\xbc\x80\x94\x94\x1e+\xb5\xd6\x1e\xe9\xdf\xaa\xb2\xfe\xe0\x9bz\xb6\xe7\xb6\xe4\x0f\x1b\xf1\xad\xb2\xe5\xb9[\x18\xb8'\xf3\xcb[{\xc2\x8eEY\x05\xf1\x01\xad\n\x94*w\x9f\x9d\xe9\x1cFI\xe9\xaaR\xab_\x04\xd2a7tB\xfdjo\xd5X+F\x16:Z1\xb5\x87K\x83\xe0\xef\xd0\xbcY\xfa\xee<\x87\xd2(\\\xf3\\\xcc\xa8\xea\x08\x0ff$\xd7\xfa\xc2\xe9;_\xde\xed\xcf\xb5\xbf\x10\x0e\xae@O\x94\x81v\x05g/z]\xd9\x8c$k\xfb\xb8Mt,kY\xff\xc77\x94\xa7\x0bI\xde\x08\xa7\x7f\xc58\x0b\x19h\xac\x1a\x82zi\x8e\x87O^\x8c\xc6\x9f\x97\xe5\xa7\xe6\x92\xe9\x957\xab\x8c\xe2}0\xb1w\x05,z'\x1d\x15PNQ\x85\x8b\xadH\x91\n$l1\x00\x02\xdb\x96\x15\\~\xef\"^{({\x01\xd2f\xa0\xda\x14\xda\xd1G<\x10ZbL\x0b\xba\nM\xb9\x186\xe2\xcf\xb2\x0e\xcd\xce])h\x94q5\xf8\x1c\x04\xc2\x7f#\xc06{\xc9\x9eQ\x8e\xc5\xbd\xa7b\xcf(\x8fh\x00\xdd\x84\xc9\xb8\xd2u\xb2f\x16 *\x93\xb3\xe3\xb4\x9a\x0f\xbbe\xad2e\xb4m$\x89\xf3\x14Ld\xb4\xc4j\xa9]Qz\xb2\x9ch)\xeb\xfei\xeb\xd8\x02`6,-\x8d\x14T\x156\xe2\xf9\xd4\xbf\x1d\xbco\x1a\xc0\x1b\x0e\xfb\xc6\x81H\x03\x1b\xad\xd4\xcf\xa1p\"\x88?\xd8\x9e\xca\xbb\x00\x80(\xef\xd4\xcen\x97cYo\xfa\x0f\xd5\xcd\xf8\xa1\xba\xe2-\x8c\xed\xa7\xe5\xaa\x8b\xed\x96g\x9d\xf8\x82\x86\x1d\xdbVE\xeb\xd9#\xd2\x05\xb6\xd4\xd1Z\xa177FYoY\xff\xb6\xec\x8eM\xf7\xa2\xdb}\x80/.\xfe\xf4g\xeb\xe1\xe3B\xa0\xa97\x87\xa6\xdamZv\xb3\xd96\xe7\xfa\xb1\xd7s\xa1\xf2crs^\x04z\x9c\x9a\xae\xe4\xe5-\x93\x81!\xe6R\xecY7\xf6`\xd8u\xf3(lN'\xe9\xd4c\xf7\x9c\xb5\xfd\x12W\x86\xac\xd8\x87\xd8h\x9cr\x17\xd8\xb9\xb0\xc7iHqFkHA\xd8s\xb4\xe8y\x9dI\xab\xb2\xe3\x93\x02\x8eP\xee\xba\xe7\xc0\x8a\xeda\x19\x06\xd0\xaf\x11\xdc\xc6\x1cU4\xf3\xbbb9\x07\xf3\xe8\x0cq;\xc6\x17\xfd\xa0\xf39\xf0f/\xf7Z\x85\x87Kx\xa7\x1a^\xd8}\x852\xc0H\x13p\xfe\xab=\xeb\xc4\x16\xac\xde\x18RA\xbee\x0b\xec^\xce-\xaat]#\n\xf49\xd6\x95\xef\xaa\xa2;\xf4\xc6\xd0\xf9\x91\\D\x7f\xd1?\xf1\xf2\xa5\xa0\\\xa3\x93\xcb<\x97\x1c\xb0\xc0Re\xa0\x93U\xcb\xb6\xa8\xb6\xe7j\xf0\x17\xde\x9c\xfb\x8f\x7f\xfb\x05\xcf\xf58it\xc2v\xcd\x99\xf7c\xb2\x95\xcb\xc0\xe6\x96\x99U\xf7.TtW\xdfU{\x07\xda\xe9^\xa1\xfd\xaa\xd3\x01\xf1|\xf6\xf6+\xbb~\x19\xba+\xb9f5\x0bcf\xb3\xea\xbb;4\x9dQ\xe0\xd1~Q\xf36\x96\xdd\x84\x8a6F\x84\xe8\xda\xd8\x05\xab\xa6]9\xb8\xff\xa5\x87G\xa0\xbd\xf6\xabN\xee\xdf\x05\xfc\xd2\x08\xb3\x9e\x9a;&\x17D\xd7l\xb8]l'\\\xfa\xcea\xab]\x01\xa2\x0b\xf6\xab\x1d\xcf\x15/OU\xa9\xa71\xf3\xda\x8b\x13&O\x9d\x11\xfb7\xc2\x99\xaa^\xad\x8c\x11\xdc\x81\xbb<\xea\x18\x8c\xb7\x9c\xc9&\x971\xa2\xf6&)P\xc7?\xabqo\x8b\xab\x93\xe2\xfd\xe4\x08\xe4De\xf7|\xe3\x0c\xe1\nN\xb5A`w\xd2\xd5\xffqM\xb4\xba\x15\xfa\xad\xdf\xff\xa7b\xde\x8b\xae\x93\xdb\xceo\x8b=\xfb\x89\xfd\xfd\xcc:~!\x7fw(\x1b\x8bG\xf7j{C286\x1d\x07&\xc8q\x81\x9c_\xc0\x157\x1c\x9e'\xfe\x00\xa5\x0b\x05\xed\xe7P&\x1e\xe3\xba\x81c\xd32=g\xd9f61VW\x1a\xd3\xf3\xce\n\xbd\xb1\xe4\x96}\xa9\xf7\xee\xc7\x02\xafz\x9a5r\x9e\xb9\xfak\x1aZ,l6\xf2\x01t\x1c~W\xf4+3\xfe\x1cJ\xde\xe9\x80\x8fN\xcc\xa2\xd2\xe3'\xb6\xc8\xee\xcan:>\\\x1d\x11\xb1\xbcc@*65\xee\"\x84U\xcb\x98.w\xf8\x81\xb2\xe5\xce~\xa5l\xb9\xb8\xf5\x16$\x04\x85\xca\xc1J\xd9r\x11\x01\xa0\xf1\xb4Op*\xc4%__M\xfc\x04\x13\xaf\xa3\x16T\x08\xee'f\xd5\x15\xcd\xfe\xf8^\x82\xe8t\xeb\xb8\xf6e$\x80b\x18\xa0\xcc\x14P\x1a\x07\xe4\x1bA\xa8\x14\xeb\x89,\x90C\x1bG\xa5W\xcf\xc3\x03\xa1\xa1\x16\x04\x13\x14E\x05\x85\xb2\xec\xa6\x90A!\x9dN\xffX&>(\xde\x98xF(\xd4\xb7\x04N(\x91\x14\xf2gv\x0e\xd3Byy\xa1<\xc4\x10bl\xac\xa6\x86\xd0\xdc\x10\x8e\x1c\xc2\xb2C\x88\x81\x13\xcf\x0f\xc5\x10D\xdeD\xe9Y(\xa2H\x8e(\x8d$\x8ab\x89BF\xf7'G\x0f\x9c\x8bg\x8a\xf2QE\xc1F9\x9f\x9f|l\x11\x82.J\xe7\x8b\x1c\xeax0\x15zV\xc6(D\x19%rF\x0e]\xe1\x14\xe8a\xd6(\x90\xfe<7o\x94\x9d8r3G9\xa9#\x0cw\x14O\x1eE\xb1G \xf4Q,\x7f\x14Hi\xeeo\x1d\x96\x08\xc1RH \x1cR$\x89\xe4\xe9n\n\x8d\xe4P\x85Hb\x9eB$y\x86|8\x81yF*)\x98\xbc\xfc1\xc8\xa4\\c1\x82N\x8a\xe1\x93\xec\xcb\x03_brn\xf56\x9b\x82\xdb\x05HII.R\x8f;\xf4a\x13\x92\xfb\xd2\x91\xe3Z\x9e\x94\x8a<:\x11yp\xd7\xc8\x97\x84<6\x05yT\x02\xf2\xb8\xf4\xe3\xe8\xe4\xe3 \xa9\xc7}\x89\xc7\x83\xf6\xc3\xdd\xec\xb5)\xc71 \xc7q\xe9\xc63u(W\xa2q|\x9aq\xb3]\xab\x1a>\x1c\xb5*\xc1x \x7f(_\xefc\x0f&\x16\x0f\xdeJ@[\x052\xa6\x14\x0ffV\x0d\xa7\x13\xcf\xdc\xb3\xcc\x89\xc4\xd1i\xc4\x83I\xc4\xe3\xfb\xb96\x818>}x|\xdb\xbc\xf7 [\xe2pl\xda\xf0`\xd2\xf0\xf8\x0e&'\x0c\xc7\xa5\x0b\x0f6(\x9cZ\x12w?r\xa6 _\x93$\x1c\x93\"\x1cm\x14\x7f\xb2\xd6X\xc3\xc4\xa4\x06\xc7\xbc%\x00\x9d\x18<\x94\x16|\xd2\x93\xf5I\xc13\xbc\xa8\xf0\xe9\xc0qw\x01\xe2S\x81\xcbt\xdf\x1e}\xab\x12\x81\x07m\x04(;\x01*\x05xp\xc0k\xc1\x1b\x13\xd0\xc9\xbf\xcd\xe4\xde\x01\x85\xe8\xf4\xd6\xb8\xc4\xdf\x8f\xd4\xed\x98\x94\xdfr.\x0b(\xcc\x91\xf0;*\xdd\xf7#\x1a\x06\x95\xe8{H\xe4\x1dP\x18L\xf3\x1d4\x0d*\x897\xca\x1c\xb8w\x02D\x19-s\xf2nO\xeant\xe2\xee\xa0-p\xbd\xcb\x98\xb2;:a7:]wt\xb2\xee\xa0q\xc2\xab\xa9P\x86\xce.o\x92\xee\xb8\x14\xdd\x88\x04\xdd\xd2\x04\xee\xf4\xdc\xde\xe4\xdcA\xfbeIr\x9a-)wLJ\xee\xf0c\x91\x96\x8e[%Z\xb6\xe8s'\xe3\xce\x99\x8a\x1b\x99\x88;:\x0d\xb7\x99r\xdb\xde9w\x12\xee\xbc)\xb81 \xb8\xf3\xa6\xdfF$\xdfNJ\xbd\xad\xd3l\xdb\xf4\x05\x13o\xa7\xa5\xddV\x9b\xdb\x16}\xee\xa4\xdb\xe8\x94\xdb\xb8$\xc0\xd19\x80g\xda(\x05\xb0\x14J\x01\xec\x7f3\x85gx)IaE\x94\x02\x18\x13Ld\xa3J\xa2C\x89R\x02\x89(\x05p\xc6\xf0\xa1\x98\xe0\xa1\xa8\xd0!J\x01\xbc6`(!\\(K\xb0P|\xa8\x10\xa5\x00^\x13\"\x14\x13 \x949<\x88\xa3\x82\x832\x86\x06a\x03\x83x\\XPlP\x10\xa5\x00\x9eHt\x18\x10\xa5\x00F\x05\xff\xa4\x84\xfe\x00\xa5\x00vH0\xdc'\"\xd8\x07\x93<6&\xd0\x87R\x00\xa7d\xd1\x0d\x05\xf6P\n`|0\x0f2\x94\x07\x13\xc8\x83\x0b\xe3\xa1\x14\xc0\x90\x18\xb8\x13\x11\xb6C)\x803\x84\xe9\x04\x83tRCt\x9c\xefMJ\x01\xbc\x10J\x01L)\x80g\x92#\x1d+6\xf8&:\xf4&*\xf0\x86R\x00\xf3\xb4`\x1bJ\x01\xac\x05\x93\x02x\x9ad\xd0P5\xf9\x9c\x9e\x1e5\x01\x7f\x16\x19\x05'\x89\x82\xcd\xc9\xa9\x14\xd5n'3\xe2\x98L\x91\xb7\xe7@\xca\xd0\x8c\xa9\x14/\x0d\xff\xb2T\xe9M\xab\xf8\xda\xf0F\xeb\x0c\x8b\xda)\xebL\xb0\xa8{\xee\xda\x96\x90>\xeb\xa2\xd2\xc1EP\xd4r\xabI\xe2\x1b\xcf\xe5\x8e\x9c4\xa4\xdc:\xda6uw\xee_\xdfp(\xf7\x8798`\xfa\x99\xf7E'\xb1\x92I\x1da\xf9F);(k\xe5\xa4\x97\x89\xb6tK\xed) \x8d\xce\xab\xe3\x9el6\xc8\xf1\xaen,m\xd4\xc2?\x81{2De\x05/\x00\x88\x8b\xc0$\xc6\xc6\x9b\xbbR\nbG\x10\x90\x1bk\xe3\xb1\xb3\xebk*Lg\xa2\x9cf\xb4\xc4\xe9r/\xf4\xa7\xcf\xf5\xc7\xef\xee\xe2\xfa+\xba\x8b\x80\x8a}AZRR\xfa8\x89\xc6R\xeb\xda\x01\xeaS?\xb6l\xcb\xca[;{\xb8P\xe81\xda8\x9b\x8cK i1A\xc4H6J\x06\xb7\x1d\xfa\xd9\xea\xfa\xc1\x8do\x01\x14[\x01\xf3\xa9\xc4\xc7\xee7tsW\xcbo\xbc\xa6f\xe3\xb0R>\x07\xe1uk\xb6e1\xe0=\xbe;ukr3\xcdM\xaf\xd1}\xdd\xc0-\xbd.\xaa\xa2\xde\x066\xec3L u\xe3\x0c\xd7\x04\xec\x98\x91o\x9b\x95j\xb0\xa3\xe4US\xd6\x06E'\x06\xc4H^\xd5\xcdQ\xbf\xd2\xfa\x1bX\xd4\xaaq>o\xce\x0f?\xbe\x7f\xf3\x8d\xf8*Tt\xd5\xf02,j\xb8\xaa\xb9Zx\x0e~\x97\xce;\x08\xd4\xaaTQE\xee\xc7UG\x87u\xc3B\xa7\x1f\x84\xfbf\xdf\x88%_\xaa\x17c|\x88L6\xaa\xbf\xc2mQ\x89\x04\xfa\x8d\xf9\xa0\xb1\xfb-;\xc9\x0c\xfdVu%7<\"\xf6\xde\xa8\x91:_\x82\xab\xc9A\xd9\xae\x93\xd5\xf1\xbbs\xc9u\xc2s\xab\xb2m%\xb2\xfc\x0f\xaf\xe8\xb9\x19\xc6%\xcbr\xb8M\xccc\xacm\xcc\x15\xe9$\xc9\xba\xfa\xb4_\xae9\xa4x\x9f1\xff\xd3\xa5\x8bE\xb8\x81$\x14J\xec\xf4\xb5M\xba\xfa?\xae\x87e(Y\xa1^\x1fY[n\xf5\xdf\xc4\x0c\xa1\xf2\xf2\xc8\xbd,U\xc1]\xba\x88\x87\xed\xc3y\x89\x7f\xa1\xad\xea\x87\xce`B\xb9\xe1v\xeezS\x7f`\x91\xf6\x9c\xaa\x7fd\xe3\xce\xdc\xf7\x16\xf3V\xe5\xb1\xc4ZW\x1c\xab\xb9\x08\x97W\xdfZE^\xfd:\xd1v\x92\x1bI\xe6\x9f\xaen\xa0b7\\S\x10\n\x8b\xd0\xcbY\xb1+.\x1f\x10y\x91\xde\xce\xd7\x0f2OYq:}B+\x9al\xc2x\xbe\xcf\x96\xc6\x190+\xcb\xdf\xffGY\xef\xca\xadH5\xa6\xfcc\xca\x82\xe2@5\x90Lue\xbd\xad\xce\xbb\xd9b\xb5\x90W\x19\x1c\x94\xb3;&\xdc\xdd\xc6\xbey\xff\xba\x99\xa0>\x13e?_u\xb3\xbb5\xeb\x82X\xdf\xb7\xacS`\x82x\xbc\xc6\xe7\xb1\x7f\xe4\x14V\x08\xe5\xben\xe6\xe9\x0b\xf5\xd38\xbd\x84\xb4\xcc\xda\x1b;\xafpa\xb9\x81-\xbbe\xed\xe4T\xdf\xcdSG\xcfo\\i\xb0--\xb3? \x13=\xfd5\x98J\x98\xd7\xeeX;\xff\x96\xb0&f\xfc*\xab5\x1e)\x08\xe0\xf2\xd7)\xb8\xfc\x0fy\x0d[T\x80\x01\xd6\xa1c\x01F\xe6\x14NE\xd9Z\x81\xfb\xd7\xf3\x8cr\xbf%\xcc\xde\x05\xae$\x81u!X\xde\xab\x1a\x82\xea!\x0e\x93G\xb8zp\xfe\x12}d.@>\x88\xc7G\xc0\xf1\x99;\x99\x0f\x8b\x0fB\xf1!$>\xbeg\xebqx\x9c\xa1r\xa2\xf08\x10>\x1e\x83W\xb8\xbbC\x1f\x06\x82\xf7\xde@/\x00\x9f\xe51\xf7\xa2\xef\x88\xb1\x11\xc2\xde\x83*pc!7\xf0\x9e\x13wG\xc1\xee\xf1\xa8{\xd80\xe9\x98;\x94\xb6\x11\xe3\x87\xdc3\"\xee~\xc0\xdd\xdfq\xb1\xa0\xb1\xf7\xdc\x97\xfct\xb1z\xd02\x12\xbbc+\x08\xd9\x9d\xfdJ\xc8nhX\x8eB\xc8.!\xbbv!dW\x08!\xbbK!d\x97\x90]\x97\x10\xb2K\xc8\xae\x10Bv \xd9%d\x97\x90])\x84\xec\xa6P\xaf\x84\xec\x12\xb2;\n!\xbbK!d\x97\x90]Bv \xd9%d\x97\x90]Bv \xd9\xfd\xed!\xbbS\x84\xc4\xd5\xe6\xe9Q\x936\x8f4\xd2#\xb7\xf9c\xd1Z\x97ca\xdb9\xda.\xe1\xa2\xf5\x91\xb6\x99\xb6T\xdb\xe6\\\x97\xf7\xb2x}?\x19\xe2\x0c3\xaa\xf2ln\xd4%/\x8bj\x13H\x88\nx\xc3\xc4tvv\xf5\xc9\xabR\x01x\xea\x10\x8f\xe3\x15\xd4\xb4\xbb;W\xd2\xab\xa7\x10A(8\xca\x04\x8f\xd4uO\x9f\xe2\xdbh\x96\x8f\xcf\xd0PD\xd2F)*\xe3\xe1U\xbdm\x85WH\x96|\xf7Q'e'fI\xf7\xed\x1a\xbb\xd2O\x00M\xb5\xdb\xb4\xecf\xb3\xcd\x90\xe3\x16\"\xa6\xabPNJ)\xefx[\x8a\\\xed\xa7\xa6+y\x7f\xbf\xca\x1b\xa3\x8f\xcf\xcc\x95J\xff\xc1s\xcd\x98\xdb? \xe2s\xb39\x9dtun\xce\xda\xfe{[f\x9dw\xb9\x19\xb1\x8f\x93e\x91\xf3\xa6o\xe3\xc86\xd6f\xd5}\xdf\x8b\x06\xa4S\xa9e\x15\xbb-j\x0eG\xc6\x8b]\xc1\x0b\x04r\xab^\x902\xaa\xc1\x9c\xc1M\x92W\x1d\x94\x02&\xda\x16\x8d\x1doD \xfe\xaa\x12\x9b,\xd0\x95\xf5\xbe2\x96\x1a\xcfl\xa6\x1d\x1b\xd6\xff\xbf\x95\xdb\xed'\xdaA\xdb\xb8\xf0\xec?\x06k1\x15\xbf\x10\xa1\x18l\x07U\xd9\xf1\xc7$\x0dm\xa7_\xdaV\xb5\xb3\x03\x89@TB\x04\"\x11\x88\xa3\x10\x81H\x04\xe2(D r\"\x10\xedB\x04\xa2\x16\"\x10\x89@$\x02\x11\xb9J\"\x02q\x10\"\x10M!\x02\x91\x08D\x8b\x10\x81H\x04b\xc8\xf8D :\xcf!\x02q\"D \x12\x81H\x04\"\x11\x88\x13\xc1\xd2`D \n!\x02\x91\x08D\"\x10\xd7\xb59'\x81h\x83\x0c\x95r\x1beh\xec\x80\x0c\xb5\x14-\xee\xd2\xce\xc2\x1b\x1a\xfa\xc5\x0bsP\xb4\xe0\xc2\\{.\xbf\x95\xea\xf26\x83\xa8\x13\x9e8\x16\xd9\x8f\x83\xa7Ye>\x84.\xa2v\"1\x9by`\xbbfb\xaa\xb7@6;$\x95\x99\xb5k\x91\xd0fX\x8f\xbdk^\x9c3\x0ct\x06\x90\xce\xe0\xa0\x92\x12\x1aZR\"\xc0N\xd4\x9d\x90\x82\xa5\xa5\xf0wNJ^\xc0\x13\x87xFA\x9e 6\xc2\x80\x9e\xd1v\xca\x07{\xe2p\xcf(\xe03\xc2Hq\xdd\xce\x86}\xae\x03?Q\xe8\xe7\xa3\x19\x01\xcb\x87f\xb9\xebX~4\xa2\xb7h\x86\x14\x0b[B\x1cf\x1a\xd0\xe5\x87P\x931\xd4\x04\x03\xe5\xb3O$\x8e\x1a\x1a\x80\x8c\xd5 @j\xcc8\xcf\n\xa5\xc6a\xa9Y\xc1T\\\x9f\xb3\xc1\xa9(\x97\x1dg[)c\x0d\xfa\x02\xea\xf3\x91\xb5\xe5V\xffM\xcc\x10\xdb\xa2\xee\xfb#\xf7\xb2T\x15z\xe9J\x1e\xb6\x0fg+mY\xc5\xbe\xea\x87\xce`B\xb9\xe1v\xeezS\x7f`\x91\xf6\x9c\xaa\x7fd\xe3\xce\xdc\xfc\x16\xf3V\xe5\xb1\xc4ZW\x1c\xab\xf9 \x97\xf7\xdfZ _\xfd:\xd1v\x92\x1bI\xe6\x9f\xaen\xa0b7\\\xd3\x12\n\x9f\xd0\xcbY\xb1+.\x1f\x10y\x91\xde\xce\xd7\x0f\xc0\x8a\xed\x01\x8a\xd3\xe9\x13Z\xd1d\x18\xc6\xf3}\xb64\xce\xe8-*Fh#&\x1a\xe8\xff\xa3\xacw\xe5\xb6\xe0l\xf0\x8f)\x0b\x8a\x03\xd5@2\xd5\x95\xf5\xb6:\xeff\x8b\xd5B^epP\xce\xee\x98pw\x1b\xfb\xe67\xa2\xc2\xbe\x81\x04M\x94\xfd|\xd5\xcd\xee\xd6\xac\x0bb}\xdf\xb2N\x81 \xe2\xf1\x1a\x9f\xc7\xfe\x91S\x15\xb6\xa1\xdc\xd7M;\xf3:\xe8\xa7qz i\x99\xb57\xf6\xbai*f\x94\xff\xb6\xdc\xc0\x96\xdd\xb2vr\xaa\xef\xe6\xa9\xa3\xe77\xae4\x18\x98\x96\xd9\x9f\x84\x89\x9e\xfe\x1aL\x91s\xed\x8e\xb5\xf3o\x89we\xbde\xdf\x80\x0c\xb7y\xd1\xed>\xc0\x17\x17\x7f\xfa*\xab5B1>\xe7\xd3\xbe-vl\x88\xf1)N\xa7\xaad\xbb\xcd\xa9*\xea\xcb_{;\xfeC\x9en\x8b\xe2y)\x0f~[\x15cb\xf0\x02N-\xbb-\x9bsW=\x80\xd2\x06\xea*\xd0k\xed\x1f\xe9\x92w\xe2\x1eY\xe3_\x0c\xad\x9f\xe9.?\xd1h\x17\x17\xea\xefuw\xf8\xa9\xd3I?\xa6p\xfeu\xd5l?\xe8\xbf\x15&\xa5/\xecz\xd7/\xb7\xa5\xed.\x16\xc30\x00J\x1967\xb1(n0\x83r\x95\xef\xcbwi\x0e\x87\x9f\xde\xbe\x9a/Z \x84\"\x10*\xe8\x05\xc48\xd2\x80@(\x02\xa1\x9cG\x12\x08%\x84@\xa8\xa5\x10\x08E \x94K\x08\x84\"\x10J\x08\x81P\x04B\x11\x08E \x94\x14\x02\xa1RX\"\x02\xa1\x08\x84\x1a\x85@\xa8\xa5\x10\x08E \x14\x81P\x04B\x11\x08E \x14\x81P\xbfw\x10\xaa\xff_C\xc1\xe4#Z<\x89\xca\x17gn\xc3k\xdf\xaa\xf0\xfd=\x12\xf6\x14\xed=>\xf3C\xd3\x96\xfc\xc1\xed3\xfeI\xf8\xcbew\x8a\xad\x04\x18\xe4w\xbb>WlF6\xf5\xee\xbc\xe5\xdaq\xac\xbf\x9a'\x86yfu\x9f\xff\xf9\x99:v\xeaS\xd6\xca?\xd3Fx\xa2\x1eeg\x06?\xe7\xc6Q\x8cM\x94*\x99\x01D:~\xb5a\xc2n_\xe5\xe4\x9dY\x92\xfc\xb8\xe4\xc7\xb5\x08f\x1f\x10\xc8\x8fK~\\\xe7\x91\xe4\xc7\x15B~\xdc\xa5\x90\x1f\x97\xfc\xb8.!?.\xf9q\x85\x90\x1f\x97\xfc\xb8\xe4\xc7%?\xae\x14\xf2\xe3\xa6\xb8B\xc9\x8fK~\xdcQ\xc8\x8f\xbb\x14\xf2\xe3\x92\x1f\x97\xfc\xb8\xe4\xc7%?.\xf9q\xc9\x8f\xfb{\xf0\xe3\xc6\xfaD\xd5\x8e\x8f\x88\xa8u\xbbE_\xc9\xa3&\xa1\xb4\xf2\x96\x89\xbfO\"h\xadQ\xb3\x86\x02\xf5\xf3\x93\xf5q\x8e\x960e\xd2\x14\xe1\xd4.\xc3&\x18\xc5\xeb\xf2\n\x14\xb0(\\\xa5\xa8\x82\xbb<\x98m\x12\x80w\x8c\x1b\xfe{\x15B\xab\xfb\xa3\xdc\xca\xfe]!\xeb\xf70n\xcb\x0d0\x8an\xe8\xf3!#\x86{[S\xb94\xc6\xb4\x11C/\xcb\x0e\x9a3\x7f\xd1\xdc\xbc\xd8\x15\x9c\xc9|\x0b\x86\xad\x1d\xfa\xde\x97G\xd6\x7f\xa8\xff\x87\x0e4w]\xb8e\xc5\xf6\xd0\xbf\x92\xe4\xa2z\xbc\xaeh0\xbb/\x17\xd5k@\x90\x06\xc9O\x16\xae\xa8\x1b\xee\xf9{\xdd\xbfg\xb7\x05g\xbbod\x8f\x85;d\x80K\xa4[C\xdc\xac\xddp\xe4\x858\xd2\xa1pr>T\xcd\xbe\xdc\xba\x0c7\x8c\x83\x96\x1d\x9b[]q\xb47\xe1\xbb\xd7\xff\xe9\xdc.\xb8RU\xa3\x86\xc2\xa1u\xa3\xd2\xa6<\x1f\x1cD\xc3l\xc1\x0fmsg-.\xe6+E\x88\xbe\x03\xeeR2\x13\xeb\xbf\x1f\xcb\x07Nr\x13h+\x1d\xd5\x1e\xf6\x89\xb5\xbdf\xfb3_\xd67MbsCum\xc4\x06\xdb\xe87\x1b\xdd\x00\xc3lT\xdf4\xca\xd1\xa4\xd2\xad\xb8\xfcLM\xfdb{(\xdcn\xf3\xee\xbc=\x80X+\xeeKQ\xe8\xeeX\xaa\x04Ec ]\xd8\noyq\xe6\xcd\xb1\xe0\xe5\xd6\xe3\x87\xd5\x0d\xb4\x96+\xd2/\x82\xcd\xb6*\xfbeF\xc7\x0b\xee}\xe6<5\xbcB\\H\x98\x0cA\xdc'@?\xb6\x90\xca\x87x\xf4-\\\x04\x9e}\xa6\xbc\x8cH\x90\x12\xc9\xcd\x89\xe0I\x91L\xacH\x1a-\xe2Q\xd7\x1b\x14\xcd\x8b\xac&Fr3#\x91\xd4Hfn$\x8e\x1c\x89dG|cx\xa0J\xb0\xf4Hf~\x04E\x90ddH\xd6R$I\x1cI&\x92$\x85%\xf1(\x93\xcb\xa2 M\xf2(<\xc9\xe3\x11%\x8f\xc2\x94\xc4Q%\xd9\xb9\x12,Y\x92\x95-\xc1\xd3%\xd1|IB\xa1s\xf1\x1cK>\x92%\xd8(\xe7\xf3\x93\x8fgA\x10-\xe9L\x8bC\x9d\xd8j\xf5P-\x99\xb9\x96\x10\xd9\x92\xc8\xb68t\xc9oh\xdf6B\x98o\xf1\x12.\xf9\x19\x97\xec\x94\x8b\x9bs\xc9I\xba`X\x97x\xda%\x8awI ^b\x99\x17/\xf5\xe2g\x10\xf0\x14\x02\x96|I`_\"\xe9\x17OwS\x08\x18\x87*\x83.\xc1=\x128\n\xc63\xe4\xeb\xbd\x9f\x83\xc9J\xc2\x04X\x98\xc7\xa1ar\x8d\xc5\x08\"&\x86\x89\x99/\x0f\x10\x99\xc6\x0dN%\x1cr\xee\xca4n\xd22\x94i\x9c\"\xd4\xad\xbfS\x84\xba!\x14\xa1N\x11\xea\xa3d\xf54\xc6\xf8\x19\xa3\xbc\x8c\x14\xa1\xbe\xd6\xb7\x98\xe0Y\xcc\xe2W\x8c\xf7*R\x84\xfa\x1aob\x8c/1\xb3'\x11\xe7G\xcc\xe8E\xc4\xfa\x10-\x0bb\x8aP\x9f\n\xc2k\x88]%E{\x0c)B\x1d\xe5'L\xf1\x12R\x84\xba\xeb\xb0\xa0g0\xc2/\x88\x89m\x8e\xf1 R\x84zJ\x90w\xc8\x07H\x11\xeax\xbf\x1f\xd2\xeb\x87\xf1\xf9\xe1<~\x14\xa1\x0e\x89>\xbe\x08\x0f\x1fE\xa8g\xf0\xe8\x05\xfdy\xa9\xde<\xe7{\x93\"\xd4\x17B\x11\xea\x14\xa1>\x93\x1c\xd1\xc2X?]\xb4\x97.\xcaGG\x11\xea\x89~9\x8aP\xd7\x92\x1a\xa1~lv\xe7\x8am\xd4\xeeS\xe7\x0eR\xff^\x1c\xf8\x8b:n\x12\xa7^\x95\x9d\xd86\x96\xba\xf4NV'\xa3\x1dEL\x9a\x9e\xb7\x10\xf9\xaa\xbf\xb2\xe6\xf0\x9e^]\x1d\xf1d\x83\xdc\xadF5\xe5S\xb8\xcd\xdc\x91\xee\xa8\xfd\"\x15bYO\xb3\xd0\xab\xaeZ\xcfQ\xdd_qMG\x91\xfe\xa9\xa8\x86m\xfb{Yw\xe7n\x1e\xfe\xeem\xe5dx\xfc\x8f}#i2\xf6\x86\xcd\xa9~\xaeU\x03^ngv\xcb&8>3\x82\xa5\xdf\xa5\x847\xb9f\xe3Lx\x15\xe6O\xa3\xdcHV\x01\xea\xacl\xc7VZ\x14jM\xd3u\x06\xc2\xb3?}>\xd3\x9d\xfb\xb3\xe7|v\xccOo_\x0d\xfe\xfd\xf9o\x01\xa3\x12\x060\xfb\x950\x80\xd0\xc0\x1e\x850\x00\xc2\x00\xecB\x18\x80\x10\xc2\x00\x96B\x18\x00a\x00.!\x0c\x800\x00!\x84\x01\x10\x06@\x18\x00a\x00R\x08\x03H\xf1\xa4\x13\x06@\x18\xc0(\x84\x01,\x850\x00\xc2\x00\x08\x03 \x0c\x800\x00\xc2\x00\x08\x03\xf8=`\x00\xbe\x82\xe3\xcakX{\xea\x8e\xcf<\xa1\xc6\x19\xd2\xc7(g\xaa\xa1\xf0x1nWX<\xadK\xcf\xac\x01\x06\xc0w\xac\xb8\xed'\x02\xb1\x1b%\xb7U\x16\xc9 n\x18W \x85\xfb7\\\x04o\x00 \xcb\xa0\xff]Q\x10Z\xc6:\xe87E\xd5\x99\xcd\xb5l\x99\xc4\"\x15cV^\xddq\x99\x98\xf7\xf2W1\xd9\xc9<\xc9\xffp\x93\x16\xc6F\xc6\xcfJ\xd5+\xad\xe9]\xafhZ$`\xb0\xae\xb8\x88|f\xc5C*v!\xc71,\xa6\x05\xde\x9e\xbb\xfe\xab\xfd\x03kkV\x0d\xe9\xe8kv\xcf\xa7~\xf3\xb2\x03\x91\xe6\xf8\x02\xae\x94:\xb1\xd20\xf7\xb2:\xde\xb4\xfd\xf3/\x93\x91\x8b5\x84\xca\x01=\xd5\xf0Y\xa8;?\xbd}%v\x00\xd5v\x86\xde\x11\xab\xd8\xbe\xd8>\xa8\xce\x1a/i\xe1\xfbjO\xdb~(\x8e9\xbb\xa1n\xeed\xe7\xaf\xbe}%&\xc1\x92w\xd0O\x8a-;U\xc5V\xec\xad\x8dJ>\x17\x1bz\xdf\\^\xeeK~8_\x8bgS\xdd\xcf\xf2z\xfbb\xdf\\^W\xcd\xf5\xe5\x1f\xb7\xff\xfa\xaf_\x14\x7f\xfc#\xfb\xb7\x9b\x7f\xdbn\xff\xe5\xeb\x9b?\xff\xf1\xfa\xeb?\xfe\xcb\xb6\xf8\xb7?\x15\xc5\xbf|\xbde_~\xf9\xc5\x9f\xbf\xf8\xe2\xcbK\xf1@\xf7\xa7^n\x9b\x96]\xca\x84\xcc\x97\xb7_^\x8a\xa1'\x9f\xf7\xff\xf5\xdd\xd7\x7f\xd2\x0b\xfa \xddb\xb7\x8b:\xf2\xc9R.\xaeq\x1e\xe5R\x0e\xec@*\xb8#\x80\nIA`\nvC\xa7\xe3\n\x8e\x1b7;\xd6\xc4\x16\xf4\xdf\x88G\x98\xfdJ-/%\xa3\xa5\xb5\xcb\xd8\x1d>-\x86\x1ao\xa6a\xd4\xd9\\\xca\xbf\xa1\xf0\xe9\x8fK/\x18\xe6\xc9\xe1\x18\xce\xcb/\x90\xc7\x98<\xc6\x16\xc1\xec8\x02y\x8c\xc9c\xec<\x92<\xc6B\xc8c\xbc\x14\xf2\x18\x93\xc7\xd8%\xe41&\x8f\xb1\x10\xf2\x18\x93\xc7\x98<\xc6\xe41\x96B\x1e\xe3\x14\xa7+y\x8c\xc9c<\ny\x8c\x97B\x1ec\xf2\x18\x93\xc7\x98<\xc6\xe41&\x8f1y\x8c\xc9c\x9c\xd5c\xect\xe3\x84\xfc\x93\x99\xd3;O\x1c\x90\xe9\xe1\xd3\x8f\xe1~\x8cr\x8bw\xe5\xf1\\\x15\xdc\x17@\xfdN\x1d\x02\xfa\xd8\x0e\xd8=\xdb\x9ey?\xa3\x16S\x97x\xff\xae\xeexy,\xc4\x8f\xfb\xa2\x83\xb3\xdcl\x90:'Nn\xadW\xfd\xf6d\xfd\xdb\xfb\xa2\xdb\x94\xf5M\xb3\x1c=\x93\xe6\xe8\xc3\xf48\xe8\xff\xbb=\xcai\xac\xb8n\xce\\\x99C\xec\x0e\xcbM\x19i\x80E\xdez\x08\xb9+\xfd\xce\xca\xbe!wE\xcd\xd9\xce\xed\xca\xf4\xee\xd3\xe9]\xba\xb3Y\xca|*\x98\xbd0\x80\xbf\x16\xdd\xdfDC\xb4M\x8e\xc5}y<\x1f\xe1\\\x97\\l\xe2\xdc5\xed\x07\xb8S\x9b\xf5r\x8f\x98\xdf\x03o\x1c\nO\xac\xed\x1bg[\x91\xf4\xbd\xee\x8d\xfb\x91\xfa\xfc\xd7\xa2\xfb\xb9\x1b;V\x1c\x9b\xb3\xf4X\xf67\xb9\xd8r\xe9V\xdb6\xb5\xf2\xb7LUI\x1fD`@\xc9\x83\x0c\xac\xa1\xff\x97\xde\xcf{\x9c\xa1\xb3+x\xb1\xd2\x80\xce\xad]\xdc\x90y]\xf0B8\xaa\xea\x07\xd1\x1ah\x19?\xb75\xdbI\xdcF\xbfJ\x85\xe3\xa5\xdeU\x8e\xbdS\xd03TS_\xc0\x15\x87\xef\x7f~\xf7\xde\xb33^\xb1z\xcf\x0fpj\xd9My/\x9f\xcf\xa6\xdd\xf5\x9f0\x0dt\xac\x7f\xbbq&[#\x1bq\xaexy\xaa\\{\xc9\xba\x8dC\x13:\xe7\x16\xc8\xeb~\xb5\xb3-8\xdb)'\xbb\\\x94\x0bo{\xbf\xf295'1E\xee\x9e\xc3\xf5\x99\x8b\x06:{|\xec\xf6\x9b\x81})\xeb\x8e\xb3\xc2\xe9\xeb\xbff\xdbBxa9\x14U\xd7L\xd7\xfd\xdfw\xfb)D\xe3\xf8\x06\xa8\x9a}\xe2X\xc1\x0d\x85\xef\x9a\xfd\xb4aU\xb3\x9f\xcc\xaa\xa9#\xc2r\x00\xbbe5\xf7\xa0\x1f.\xdc\x04|\xc8 \x84\x1eF)!\xf4\x04\xb4\x1a\xe7\xaf\x08\x93\xf7Rp\xde\x96\xd7gk\n\x90QB\xdd\x95\xe2\xed\xb4\x14D\xd7\xa5`\x0c \xe5\x03\xb3\x10fsA\xd9B\x8a\xd7\x9f5J\x84\xc6\xb2\xde\xb1{\xac\xc6\xeb\xa6\xa9X\xe1vu\x02\xfaY\xd1\xf2\xa6\x1f\xc7/\xf5}\x16\x13)te\xbd\xafXo\xbb\x17rG\xe2T\x94\xad\xef\x03\xa0\x97\xa2\xeb\x9am)|.\xd2\xf5T\xcbg\xc4\xb5'\x86m\xa6h\xa0|\xddwP\x8c>{\xd8\xb1[V\xf5\xe3@8\xa0\x0b\xce\x8b\xed\xc1\xd8\xaep*4'\x04\xee\xd9\"\xd5\x98\xe0_\xcaZ\xec\xa7|[5j\xb3U\xff\xf2\xea\xc0\xb6\x1f\xde\xdf{\xf6\xab\xbf+8k\x9f\x9b+\xde\x0e\x8e\xc5C\xff\x81\xfa\xf73kK\xb6\x83so\xed~\xb6\xea\x98\x9aT\xec\x16\xc3\xd9KX\xab3\xfc\x89\xd0U\xe5Vx\xf5\xa4!\xe5\xd3\xa5\x10\x9c;\xd6\xf6_\xca%\xe7N\x1c`w\x96\x10\x97\x9c4]=\x1d\xe7R\xff\xaci\xber\x9e\xf8\xe4\xe9c\xf7\x00\xff\x88\xe3n\x9b\x94X\x8e/8\x99.\x9d\xb9\x1e\x8f@n\x9e\x0f\xc2L\x1f$p}\xfe\x0e\x14\xfc\x80f\xfb \x17\xdf\x07\x89\x8c\x9fWao\\4\xe7\x07\xebY?\x88\xe6\xfd\xbc\xaa\x14\x87\x14\xc5\xfcAn\xee\x0f\"\xd9?\x88\xe5\xff\xfc#{`\x03\xb1\x0c \xe4\xe6\x00\x01\xc7\x02BN\x1e\x10V3\x81\x90\xc6\x05B.6\x10\x92\xf8@\xff\xe3P\xf4\xdf\xfeAF\x10\x1e\x87\x13\x84Gd\x05\xe1qxA\x88d\x06!\x8d\x1b\x0cM\xc18v\x10\xf2\xf2\x83\x10\xc1\x10B\x0e\xcbdB\n\x97 \xb1l&\xf8;\x9e\xc2h:\x95\x19\x04$\xf6\x91\xc1\xb1\x9a\xde\x07B\xa0c\x1e^\x13\xf22\x9b\x10\xe26\xc1\xcfn:\xcfIe:!\xe3\xd8\x8d`;!\x8a\xef\x04\xe7\x02\x05\xb771\xf1\x0f.!\x13\xedc\x1c\x0f\x11/\x1a\xbb\xae~F\x93h\xce\xcb\xfa\xa1s\xbfi\xach\xe4\x9f'\x07\xfb\x0b\x8eh,qM^\x99A\x87\xc1p\x8eW\xa7\xdc0\x13\xa1\xdc0\xd8\xe7)\xde\xa7\xac7\xe2\x9c\n\xb1\xfe\xe4\xac\xbed\xca\x0dC\xb9aF\xc9\xea#\x8e\xf1\x0fG\xf9\x86)7\xccZ?p\x82\x0f8\x8b\xff7\xde\xf7K\xb9a\xd6\xf8zc\xfc\xbc >^\xca\x0dC\xb9a(7\x0c\xd6G\x9b\xd5?\x9b\xe2\x9b\xa5\xdc0\xae\xc3\x82>\xd8\x08\xff+&\xabH\x8c\xdf\x95r\xc3\xa4\xa4W \xf9U)7\x0c\xde\x7f\x8a\xf4\x9db\xfc\xa68\x9f)\xe5\x86\x81D\xbfh\x84O\x94r\xc3d\xf0y\x06\xfd\x9d\xa9\xbeN\xe7{\x93r\xc3,\x84r\xc3Pn\x98\x99\xe4\xc8\xd3\x81\xf5CF\xfb \xa3\xfc\x8f\x94\x1b&\xd1\xcfH\xb9a\xb4|\x82\xdc0\xc8j\"\xa3\x83/\xbd\x9a\x08\xbfW\xc7\xee\xd92a\xca_\x19\x7f\x7f\xdf\xc9\x00\xcd\x1b\xc6\xb7\x87~\x92\xbf\xef\xfa\xf7\xfc$\x86v\x92\x0d\xc58I\xfd\xfcq\x12\xa2 \x8df4O;F\x9f}6\xb6\x82\\\x9a\x13!\x97&nK\x0c\xc8\xa5I.M\xe7\x91\xe4\xd2\x14B.\xcd\xa5\x90K\x93\\\x9a.!\x97&\xb94\x85\x90K\x93\\\x9a\xe4\xd2$\x97\xa6\x14ri\xa6x\x05\xc9\xa5I.\xcdQ\xc8\xa5\xb9\x14ri\x92K\x93\\\x9a\xe4\xd2$\x97&\xb94\xc9\xa5\xf9{wi\xca\x9c\xaf\x86\n\xdfg\xb4\xe6\xdfC\xd6\x14\x02_=\x925D\x0b6\xd7\xeeW\xd6\x1fg[\xef/\xe0\xc7\x9f^\xbf\xf9i\xf3\xed\x7fm~\xfe\xe1\xdd\xdb7\xaf\xae\xfer\xf5\xe6\xf57\xd6\xbf\x0e\xdb\xfcbo\xfe\\\xcb\x85l\xd7\xb4|\xec<\xfc\xd8\xff\xdf\xb7\x0f\xfa\x81\x9f\xeek\xf3\x06^\xbe{%\xadXv\xb0-\xba\xb9\xb3\xc0h\xcf\xcbw\xaf\xbe\x99\xfcKz|\xfb\xabO-\xee\xd4\xf0\xfa\xcdDE\xff\xcfA\xc7\xfc\xb6\xad\xbc!\x8by\x87\xd5\xe7\xe3tMb7\xb5\xeb\x90\x97\xef^\xb9~\xea\xfb1\xb9\xc1\x92\x97\xf2\xab7\x9e\x17\xe7\x132[\xd0\x88\x85\x87zS\x88\xffV\xd3\x0eo\xa4y\x9eC\xc7\x8b\xb6\x7fP8|y!}\xe8\xdcp\x9d/rA\x19/\x01\xf1u\xa6^\x1f\xe3\x01Y,\x1f\x98\xf1\xe9e\x99l\xba\xb9~\x9f\xe9\xe4W\x83~\xda\x84\xfd\x16_\"\xf2\x18\xf1v\x94\xcc\xc5\xbd\xd8\n\x9b\xd6\xebz\xcf\xea\x1dk\x8fe\xcd\x9fuS\xe3\xbd\xbf\x7f\xc7\x8av{0\x8b\xdb\x89\xbd%\xa9\xf7\xa8\x9c\x9c\xe2k\xc4:+O'\xe5\xaf\xbf\xc8iN7\x00\xea(\x8c\xf7m\xdb\x14\xbbm\xd1\xf1\xf7\xf7p\xad\xff\xdb4\x9a\x15\xf44\xce\xfaL\xb7\xf2c\x80\x9e<\x1e\xa4\xe4\xf7C\xfa\x1e\x17\x96\x98Tf\xec\xc0\xca\xfd\xc1R\xfe\x0c0nu\x83\xbbt\x14j\xe3%\xaf\xd87b\\]\x8b*/\xf2z\x96c\xf9\xfd\xa1\xe8\x0e\x89\x0d\x99\xdc\x92\xf7\xb3\xc7\xa5\xd7k\xdbI\xdc6;\xd6\x9d\x8a\xad\x03+\x08^T\xf5\xed\x87\xe2(\xd5\xe8DD\xf0\xaa\xd9\xd9\xf6o\xecd+@\x88n\x05\x94\xa5'&\x18\x12&\xf5\xd7\xb4\x12\x05\xe9\xd5\xe5\xe6\x17\xea\xe7\xda\xfe\x13\xb6{\xae\x1dY\x96\xd3\xda\xe2n\xf3\xd8E\xca\xfa\xfb\xde\x9c\xf9\xe9<\xac\xf7\x8d\xa2F\xcf:\xa8\x9a\xfd\x9e\xb5\xf0y[\xdc\xa9\x8b\xfd\xe1\x02\xbew\x96\xd6r\xe3,uS\xbf\xd81.\xe6\xd5\xb2\xe3\xe5\xd6\xd6\xe3\xaa\xd9?\xe1:<\xc7n\xbf \xd6\xc7\n\x0fK)\xe1\xc1 \xbe\x1auR\x82\x83\x00\x02\xb5\xe1\xa4\x84\x8c+\xe5\xd3\x94L\x13*\x03\xc7 \x0d!\x05WEN\n\xce0R\x10\xe6\x91\x826\x92\x14\xbc\xa9\xa4\xa0j\xccI\x89\xb0\x9a\x94`\x9d\x03S\"\xb5\xe3\xe6\xab\xa9\x8c\x95\xe2\x86\x0f\xb5z\xbc\xc1p\xd7\x16\xa7\x13k\xe1\xee\xc0Z\x1f\x1e9J?\x01~`\x0f\xc2W\"\x97\xc1E\x1b( \xa1Ev\xb4\xd3\xdb\xd6b\xbd^\xdc\xc9Y\xde\xe3\x9a\x8e\xee\xf9;q\x1d\x19\x9d\xa3{\xcd\xeaI=\xb5\xa8\x8e\x0b0\xbc\x9f\xf7\x87\xe7\"\xd4_\xbd\x05\xff\x81=\\\x8e\x15\xf9\x14X^\xb4ln\x8a\x80:\xac\xa1b\xcc\x14_x\xce\xabN\x15\xa5\xd3\xe5\xe7\xba\xe6\x18\x18\x14\xde\xb2s\x10\xd1\x99\x97\xdf\xbe\xba\xfa^:\xa4\xbek\xf6\xe30\xefm|\xde\xf2s\xcbt'EJ\xd2Z\x16p\xf4\xf0\xc5\xfc^\xe8\x1c\xbc\\U\xb3\xb7\xb7\x11\xd7B\xec\xfa\xa1\x9f\x0cvr\xe9\xe0.5\x86Z#\xd8KY\x03f\xc2\x99~\x84\x8c\xbeu\xa3\x06\xa3n!\xae-\xd9JU#\x97\xa8/'e\x9aU\xa5vMF/\xbf\xdbL\xc9T_:\xa9\xa1\xba\x8c4\\?\x84\x9a\xc9\x1d\x8b\xab\xe0K3\xfc\x9a\xe4\xc12\x8aA+\x00\xfa\xb9\x80\xd4\xc80\x8f\xbe\xa8\xf2\x89Y\xa3\xc3\x82\xf1a\xb9#\xc4\xf01b\x99\xa2\xc4\xd2\xe2\xc4<\xea\"\x0b&\xae\x8c\x15\xcb\x1d-\x16\x19/\x969b,.f,2j\xcc7\x86\x87x2l\xdcX\xe6\xc81T\xecX\xc6\xe8\xb1\xb5\xf1cI\x11d\x99b\xc8R\xa2\xc8<\xca\xd0%\x11\x1f!\x92\xec\xf1b\xc9\x1e%\x9a,.\x9e,{D\x196\xa6,kT\x19>\xaeL.#\"\"\xcb\xe2c\xcb\x82S!\xae\xf8\xe1\xea\xf8\xb2\xe0\x86\x00jA\x85\x882\x8bYuEG\x9a\xf9^\x82\xe8r\x87\xb8\xf6e\x8c7\x8b\x898\xcb\x1cs\x96\x16u\xe6\x1bA\xa8\x12\x87\x89\x91g\x0em\x1cU\xde0O\xf4\x19:\x84\n\x11\x81\x16\x15\x83\x16\xaar\x95\x12\x87\x16\xd2\xe9\xa4\xb13E\xa3\xc5\x1b\x13\x1f\x91\x16\xea[BTZb\\\x9a\xbf\xb2Z86-otZ\x9e\xf84\xc4\xd8X\x1d\xa3\x86\x8eR\xc3\xc5\xa9a#\xd5\x10\x03'>Z-&^\xcd[\xa80K\xccZd\xd4ZZ\xdcZT\xe4Z\xc8\xe8\xfe\xe2\x84\x81s\xf1\x11l\xf9b\xd8\x82\x8dr>?\xf9\"\xd9\x10\xb1l\xe9\xd1l\x0eu\xce-*\xd2-!\xd6-6\xda-PR\xd0\xdf:l\xfc\x116\xe6-!\xea-2\xee\xcd\xd3\xdd\x94\xd87\x87*D\x11\xc1\x94\xf87\xcf\x90\x0f\x17\x10\xcc\x18\x03\x17,\x1e\xf8\x18qp\xb9\xc6bD,\\L4\x9c}y\xc0\xcb#\xebxq<%\xfa\xc9p\xfb\x00\xef\xcb\xd1=qj\xd9m\xd9\x9c;\xc9\xfa]\xc0_\x9aV\x01\x7f\x1d\xfc?\xf0\xe5s(\xf9\xb3\xcesg\xef\xc4\xb1b\xf8\xef\xca\xa2\x9f\xab]\xb7D\xcc\xa0\xba\x7f:)\x8b\xda%\xb9m\xf8\xf8\x15.[\xf2]\xd1\xf1W\xcd\xf1Xr\xd7t;6\x15\xfe\xfd\xdf\xe1\xcb\xe7\xce\xd7i\xdf\x83\xfe\xdb\xbc+;\xd1\x02\x9bB\x1f\xa6\xc4\x9f\x00\xfd\xc5\x03 Rph\x00\x1a>\nuW\n\x028Bt]\n\xc6\x00RPx\x11\xca\x16R\x90HQ\x84\xc6 \xa2'Ej\x9c\x87\xb5\xd8\x04\xf7Lk\x11|\xc9\x08&\x89\xa0\xc2\xae\xac\xf7\x95 \x8b^\x8c\xc0L\xa8\xcei\xd1u\xcd\xb6\x14\xbbY\xaaF\xf34\xfd\xee\\\xb0\xcd\x94\x00\x8c\xf0\x94t&\xad\x01;v\xcb\xaa~\x1c\x087@\xc1\xb9\x80\xfe\x87\xe5\x99S\xa1\x81O\x00\xf7|Bj\xc0\xf6/e-\xd6\x90\xdf\n\xb8\xb9\x7f5\xeb_^\x1d\xd8\xf6\xc3\xfb{\xcf\xf7\xfdw\x05g\xeds\x93\"\xe8\xe0(\x89\x8d\xbf\x9fY\xdb\x7f\x06\xc8\x08K~`\x1dS\x93\xca\x9a-[E\x12\x0d\xe0\x8d\xa2\xa5Tt\xb1\x06\x83\xe4W\xd6\x96u\xe2\xda\xaeU\x86\xc9>\x08\xaf\x88s\xc64[\xaf\xa3\xf4\x80\x1f\x9a\xfe\x8f\xf6K\xcav9\xd4\xa9Wy\xa72\x8a4\xee/;\xad\xfd\xa6m\x8e\xa2\xa3E\xcd\xd9\x05\xfc\xed\xc0ZVt\xf0]\xb3\x9f\x15\xc2\x95mt\x8de\x9f\xab\xc4X\xf8\x1f\x19/v\x05/\x9e\x0f\xd7\x17\x1fz\xd3.\x86\xbb\x17YU\xf7\x8f\x17_~\xf9\xbc\xff\x8f?]|-\xfe\xff\xeb\xc5\xd9\xe11\xf2\xfe~\xe0\xc6\x03pV\xcb*v[\xd4\x1c\xf8\xbd@\xc9\x1d\x1f\xc4\xda\x16\xc2\x19h\xeb\x0f/\xf6\x9d\x81\xd9\xc9o_\x95*\x06\xaaf\xdfO9bq\xb8c\xdbf\xc7v\xd3\xd1\xef\x0b\xbf\x023\xb8cM\xfd`3\xb2\x84\xea\x07S\xb2\xed\xe0\xbb;\xfc\x9cIIB\xaa(\xd96\x06\xa4\xca\x82Q\xa5@T\x94l;#:\x15\x03NEaS\x94l{-,\x95\x80Je\x01\xa5\xe21)J\xb6\xbd\x06\x8f\x8a\x81\xa32\xa3Q80*#\x16\x85\x85\xa2,;|\x94l{*\x08\x0c\n\xbbJ\x8aF\xa0(\xd96\n|J\xc1\x9e(\xd9\xb6\xeb\xb0 \xea\x14\x01:a\xd24\xc7@N\x94l;%_u\x08j\xa2d\xdbx\x90 \x891a &\x1c\xc2D\xc9\xb6!\x11Z\x8a@\x96(\xd9v\x06D)\x08(\xa5\xe2I\xce\xf7&%\xdb^\x08%\xdb\xa6d\xdb3\xc9\x91\xf8\x18\x0b\x1eEcGQ\xd0\x11%\xdbN\x04\x8d(\xd9\xb6\x16L\xb2\xed\xcc\xf5\x83\x9dn\x1co\x864\x91w#\xca\xf9\x14\xd8\xab\x98\xec\x05\xe8\x0b\x0c^\xc4\xe2\xce\x97\x02\xe0\xe8\xf1\xad9\xda\xb2L{)\xe5\x05|\xfb\xd3\x8f/_\xbfz\xf9\xee\xfd\xe6\xfb\x1f_\xbfq\xa6\xc0t\x1c\xfe\xedw?\xbe\xfaO\xcc\x81\xef\xfe\xeb\x87W\x98\xe3^Z\x0f\x1criF\xb46\xbc\xdb28`\xbfov\xcc\xc8\xa2*|\x17C\xaa\xbf\xde\xda\x0eO.\xa8l\x873\x7f.\xfc\xf4\xf6\x95\xeda\xd4N^\xdb\xe3\xe0\xbb\x11\xdf\xc0\xffem\xa3\xa0\x181\x1f\xf4M\x12\xe9Q\x1dS\x99\xfd>}\x03\xaf\xdf\xbc\xfd\xe9\xcd\xab\x97\xef{\x9d\xfd*\xccr\x93\x86\x8c\xf26\x83Y\x94\xea\xfdP\xb5\xb9\xa3\xf2W\x1c\x18\xbc{\xfd\x9f\x12\x90PY\xeb-\xfa\x9a\xfa\xaehw\xf6\xadB\xeb\x08Z\x0c\x00\xd1\xe2\x11)\xe0F\x8eF\xe1k\xec\x0d%\xf2\xfb\xc8\xb9\xba\x12)\xc6\xef\x8a\xd2\x1a\xe5\xdc\x9b\xb6\x00\x85\xd7\x8c\xd9iF\xa7~\xbfz\xc55\xf6\xa5\xb5\xb5/S\x9ak\xb9\x9eLj\xdaAy\x148#g\xf3f\xf9\xc7\xfe\x84_\x10\xd9QF|A\xfe\x93G\xd1\x0bJ\xc9|\\\x1b\xe9?\xd5/\xb1\xd5\xd7/\x05cy\xf9\xab\xc4'\xff!Ou\x14c\x17\x9c\xd4\xdfJ~x\x7f\xdf\x0d\x05\xd9\x0b\x95\x1bRl~*\xd2\x03\xf8\xfd0\xe2&vzf\xe5_\xbe\xbe\xf8\xa3\xae\x81>/\xe5n^R\x1d\xf2q\xb2|\xe2\xcb\xb9\x9bM\xa4\x92\xeeB\x882!\xcad\x14\xa2L\x882\x19\x85(\x13N\x94\x89]\x882\xd1B\x94 Q&D\x99 WID\x99\x0cB\x94\x89)D\x99\x10eb\x11\xa2L\x882 \x19\x9f(\x13\xe79D\x99L\x84(\x13\xa2L\x882!\xcad\"X\x8f?Q&B\x882\xf9=P&\x8b\xeaq\x93\xcfh\x95\xbfEyI\xd5\xbf\xd4\xe4'=\x8c\xba\xf8\xa69\x0b\x95\xf57s\x7f\x80\x13Uq\xecJ\xd8+JP=t|\xc1Gp\xed\xe7P=\xf4\xbc\xc6\x0dW\xf2\xa6\x12\xaf9\xacH\xf5\xd0\xa9\x1e\xfao\xb3\x1ez4\xfe\xf3\xeb\xa1\xe8\x0e~\xec\xe7\xfd\xbd\x01\xfb\xf0\xfb\xfe\x195\xab\xb2\xce\x91\x9d\x8f\\\x8e\x17\x0f\xea\x8c\xa9d\x08\xcf!<\x87\xf0\x1c%\x84\xe7\x10\x9e3\n\xe19\x9c\xf0\x1c\xbb\x10\x9e\xa3\x85\xf0\x1c\xc2s\x08\xcfA\xae\x92\x08\xcf\x19\x84\xf0\x1cS\x08\xcf!<\xc7\"\x84\xe7\x10\x9e\x132>\xe19\xces\x08\xcf\x99\x08\xe19\x84\xe7\x10\x9eCx\xceD\xb0\xa8\x04\xe19B\x08\xcf\xf9]\xe09EgNQS8\xa7\xe8\x0e\x03)p/\xff\xa9q\x9c\xe7\xc0j\x19\xf5/F\xd8\x81\xdd\xab\x878#\xa7\xe3rk\x1a\xdb\xb2\xfd\xcf\x8c\x1fX{,k~q\xc3\xd8\xb1h?0~q\xfb\xe5\xc5\xdb\xbe\xd7\xea\xfc\x85wi\xe9O\xaa\x9b\xcdu\xd1\xb1\xcd\x0d3vP\xb8\xd5\xf5\xccK^\xb1\xd9\x1e\x83qz\xffJ\xdc\xaa\x97\xca\x9b\xab\xb7/\xbe\xfc\xfa\xeb\x7f\x13\xdb\x99\xd0\xff\xc8\x1b\xf8\x02>\xaf\x19\xdb\xa9\x1d\xae/\xe0\xd4Jg\xad\x96mQU\x9d^\xeci\xad\x1b\xb9\x95\xb7\xd9\xb1\xba9\x96u\xc1M\x97!\xb7z\xfe\xec\x8c\x93\x1ba\xf2\\\n\xae\x9bs\xad\x9e\xc9\xe2(\x80\x04\xe1\x83\xd0\xbd\xda\x16z\x13\xd3\xd4\xc7\xf8\x1dc\xb5\x04\xb9\x86-+\xd6\xcf\x82\xe5\xb6\xe4\x0f\x9b\xe3\xb9\xe2\xe5\xa9*Y\x8e\xaeLn\x87\xf5\"f'\x8e\xc5}y<\x1fa_t\n\x89)j\xe3n\xf5-6\xd4\x1d\x8b\x89\xf3\xe4P\xdc\x0e[P\xac.\xae+\xb6\x91\xe8\xda\xbc\x1b\xb3\xdd\xb6\xe8^\x98\xba\xc7\xf4&\\M\x93\x12\x90S\xbf\xcenG\xb5=Wb.1\x1f\xc7Ni\x1c\xf2\x86\xb8F\xfc\xac\xdd\x93\x16\x9a\xc3|f\xb1\xe1\x1e\x1f\xcbz\xb3/\xba\x8d\x18\xd9\x01\xe5\xb6\xa7ir\xfe\xd0qq\xdf\xcaz\xb8o\xf2\xd71{\x8f\xf4\xff\x8b\xf7\x1e\x9bL:f\xbd\xa6Y\x0b\xddC\xd0\xde\xcc\xff\xb15\xd31\xc4\x8c\xa6\x8a\xad]\xe9\x12\xd8\x1e\x8av?q\x08\xf0\x06:V\xefX\xab\xbc\x1e\xd0\xd4\xe3\xb8\xfc\xcc\xb8\xb8\x9c\xd2&\xf6x\xf3\xcb\xf7plv\xe7\x8a\x19\xd3\xbc{R\xfc\x7f\xfb\xb9\xfb\xdb\xa2c\x7fa\x03\x90\x88\x9e\"\x91\xa3E5v\x18'\xe50\x15NfBq\xfcdd\xd9\x1a7\xa4\xe4\xb1\xa9\xb8\x08u\xb4\x1f\x94\x7f-\xba\xe8\x9e\xee\x8b.\xe9QV]\xefo\xde\x90\xf8G\x91C\xf2a\xdd+7\xa2\xa5\xdf\xb3\xb6\x0e\x1d\x1fN\x1c\x9d\"\x05\xec\xcb[V\xabG?d\x059j\xa2mp2\xde\x9f\x8b&\x9f\xcc\x91(W\xa4\xb7\xc7\xe5@\xbc\x98\x19q\xc6w\xd8\xa9\x0e\xeb\x9b\x18\x9cocp\xcc!\x90\xf9\xad\x0c\xf373`\xdf\xce\xe0|\xad\x81s$A\xd0\xa3\xb1\xeem=\xef\x98|w\xcf/a}\x81C\xf8%\x0e\x8f\xd2\xe3u/\xf5y\xdf\xc4c5{\xb1\xc3\xec\xe5\x0e\xee\x17<\xf8\\j\xc9=L|\xe1/\x87\xa9~\xfd[^\xfa`\x9d\xca\xc1\xd7\x9f\xe8\x05\x00\xb8\x17\x01\xde\x0b\xb9\x1e\xe4\xb5\x0b\x82\xb9\x9d\xf9\xc1\xb6(\x80\xc0\xc2\x00\x10M_\x14\xb5\xcb\xb4H\x00\xd4B\x01\x92\x16\x0b\xaeaiy}L\xf4-\x8b\xf2\x0d\xd1\x0b\xf7\x97\xecV\xef8L\xdf\x07\xf3\x8f\xde\x97\xf5\x03\xfa\x9d\xc4\x17\x98_x\xbd:\x19K\xa9\xf0\xdel\xb7\xc1\x8e\xeb\xa5\x00zK\x10/ \xbd\xf3 v\xb6\xbd`\x04T\x97\x88\xd1\x99\xb8\x9c\xa1m\xee_\x8eF\xe5\x92\xe0\xb8\x19\x0475\xcad\xe2O\x01\xe0f\xa0\xdbT\xbb\xa9<\x15rs\xc3l)\xf8\x9a\x1dS[\x01\xa6\xa1P4\x1cr\x96\x08\x99\xa5be6|,\x0b0\x96\x0f\x11\xcb\x02\x85\xf91\xb04\xf0K\xdce\x1b\xe0\x15\x8fty\xd0-\x1e\x82\xb5R\xf1,+\x86\x95\x00^\xcdP+\xef7\xe2\x04\xa7r\xbf\x9b\x12\x91\xa9\x11\x8d\x9a\xdb\xef3\xf7\xf5\xd2@(\x0b\xf4\xa4\xf4\x0d\xe8\xd3J\xd8i\x05\xdedC\x99V\xc0K\x16P)\x15Mr\xf24\x16\xfc\xc8\x0b\x1cM}\xde8\xa8hz\xce?\xe6}\x89F\x85B\x9d\xf1\xe1@\xf6\xf6{\x91\x1f$\xe4c\x02\x076\x90g\x1d\xba\x93\x06\xeb,l\x9d\x00\xe48\x11\x1c;t\xe3\xc2l\x16\xc6\xc0\xa04>x\xc6\xc0e\x12\x01\x99\x00\x12\x83\x83`\xbc\xd8\xcb\x8c\x10\x99\xa8\x9f\xfd\xe6\xc3W\xd2\x81\x95E\x03\xd4\xbf\x920\x14\x1br\xb2\x062\x99\x01%\xa9\x08\xc9\x02\x17Y\x01\x88L\x96\xb96\xfcc\x02|\xacG<\xd2\xa1\x0e\x03\xe0HB6\xacxF\x18\xc8\xf0\"\x18\x08\xe8\"\x84YL\x98\x83\xa9v\xac#\xdb\x0dO p\x89\x00 14o\x05\x041\x01\x1eV \x0es\x9c!\x0d`\x98\xc3\ny\xf0\x84\xb4;\xe7E\x10|\xd0A?[\xee\xdb\xd3\xf6b_pvW<\\\xb4\xe7\x9a\x97Gv\xf1f\x8ckE\xec\xed\xcc\xa2`-+\xeai\xd4+\x0f9\x8a\x87(\xd7Et\xabE\xf7\"\x9aU\x1e3\x8db]D\xaf.\xba%\xc5\x15\xad\xca\x1dQ\xaa\xd6\xaf\x07)\xa1\xa8\x86L\x1bZR|Q\xa8y6\xb7\xa4\xa4oq-Ty\xa2J\x137\xbe\xa4$o\x7f-4\x85\xa2G\xa3\xb7\xc2\xa4\xac\xdc\x10\xb3X\xcb\x19%\xbarsl\xa1\xcf\x19\x15\xbar\xa3l\xa1\xcf\x15\x05\x9ao\xfbL\xca\x8aM4\xad \xdbV\x9a\x94\xc4\x0d\xb5\xa15\xd9\xb6\xd5\xa4d\xd9\\\x93\x92o\x8bMJ\x96\x8d6)\x98\xa8\xcb\xf4M\xb7\xe5,\xea\x8c\xb2\\\xb3\x15\xb7Pf\x8f\xaa\xb4\xac%l\xb3\xd4\xbam\xba\x85:[\xf4d\xc2\xe6\x9d\x14k\xb4\xa4\xe7U\xec\x89\x8e\x0c\xbd\xa5\x13\xb7\xf6\x96\x13\x973\n\xd2\xd7\x82\x1c\x9b}\x13\x85\xb6h\xc7\x95\x1b\x7fR\xd6o\xffM\xd4-_\xb8+7\x04'\xba\xb8%\x8a1u\x8bPJ \xf0\xce\x19\xad\x88\x88R\xb4\x85\xcb\xe06\x10\xdd\xe7\xff\xc3\xde\xf7\xe8-E)\xb8\xce\x87\xa3\x0d}=ED\x17\"7\x1c\xa5,\xe3\x9c\xdcQ\x84\xeb\xb6 \xa5\xa4mDJq\xdc\xad\x84MI)\x81\xe8@_T\xa0?\x1a\xd0a<\xcc\x96\xa5\x94p\xd4\xdf\"\xda/q\x13S\n*\xba\x0f\xb7\xa1)\x05\x11\xcdg\x0d\x7f\xb3\\\xd6z\\8Z/}\xd3S\x8a\xa3y\x93\xbfe\xdb\x06\x95\x92q3TJ\xb6-Q)\xb96F\xa5\xb8\xa3\xe3,Qq\xeb\xb7J\xa5d\xd90\x95\x92o\xdbTJx\xf3T\n\"\x8a\x0d\xb1\x91:90\x10\xb5f \xe4\xb2]\x15\xbbM\x17\x8aNCl\xb3\xaa\x031\xd1h\xb3\xc6\xe7\xdax\x95\x92q\xfbUJ\x9eMX)y\xb6b\xa5\xac\xb9\xdf\x88\xc8\xb0pD\xd8?&\x888\xbb=^\xdc~y\xf1\xeaP\x94\xf5\xab\xa6\xbe)\xf7\xe8M\xdaCsd\xa2\x8a\xf1F\xf0\x9e\x01\x00B\x91\x88\xb3\x93\xa0\xbb+\xf9\xf6\x00\x9f\xf7o\x8f\xba_\xf4\xb5\x1f\x9e\xc3\x17\xfd\xc2\xa6jY\xb1{\x18O\xd0\xef\xc6]\xd1l\xfa\xc3b\xae:\xf9\x08\x9a*\x80m\xd3JvQn\x11\xbc?\xb0\xd7/\x7f\x84C\xd1\xee^\xf4G\xe9\x16\xca\x83U;\x0dm\xfd1\x8b\xa6\xa9/\x94y\xe30\xc1cs\x1d\x03dyw`\xea\xc3\x99A\xdd\x18\xdfA\xe2\xa3\xa59\x9d\x1a=_\xbf~\xf9\xa3\xa1p\xe8\x89\xfa\x1b+O_~\xfdE\xb2\xf5&\xa7\xcb(\x8c/\xc6\xafm\xd9\x80\xbf\x0e\xfc\xad\xda\xfd0\x1f\x83\xcf\xc5\xb7\xfe7\x97\x97\xfb\x92\x1f\xce\xd7b\x88\x8b\x9e\xb1\xf3\xf1\xf2\xcd\xd5\xdb\xee\xb2\xec\xba3\xeb.\xbf\xfc\xfa\x8b?\xe8\x0b\xfc\xc7_P7@5\xeePt\x87\xf4\xae\x89\xb3\x8d\x0b\x8bXG3\x1e\xe0\xc0\x8a]\xffu\xde\xaf\x05d\xf9h\xb1)\xd8\xff\xdb\xd0\xa6!\xe4q\x13h7i\xe6\xd71\xb7\xe0\xd9\xe4\x14\x15\xfc\"\xc2D\x06\xd3<3\x95\xffk\xbc\xf2\x7f\x9d(\xff\xd7\x85\xde\xeb\x87\xff[\xd4\xbc<\x1fcTO\xec;\xd7\x00\xdf\xea?X\x1f2\xcbd0 a\x1b\xd4i\xb3n\x1b\xf1\xcd\xc3\xcb\xba9U,\xb9\x99V5\xf0j\xf2\xd7@\x83\x0dm\xba\xe9\xc5\x96\x97\xb7\x05\x1f\x07\xc1IP\xd0\xd7\xe7v\x1f\xd3\xd2g\x8b\xd3\xe0\xed\xf0\x17K\xab:\xb1\x1c\xedf\xcd\xff\x83\xbe\xa9e\xff\xc7\xebs\x15\xd3\x84\x89\xb1f\n\xe0J\xfd;\xe9\x8eje\xdaD\xc7s\xd9n\xf6U\xb1-Y\x9b\xdcB\x8b\x12xS\x9e^\xfc\xf1\xab\x7f\xfd\x13|~\xdd\x1c\xafa\xc7\xaa\xe2\xe1\x0f\xde&\x1b\n\xff\xdd}O\xafY[\x95urS'\xa7\xc3\xb7\xe2_\x96V\xfd;\xc2\x94R\x95nW\xd5\xd4\xbb&\xbd]\x93\xd3\xe1;\xf1\xaf\xc4vIU\xba]E\xdb6w\xab\xef\xb0M\x8b\xb8\xc5\x7f\xfa\xeaO_\x87n\xf1\xbf/\xdf&\xd3\xe6/n\xf2\xbe-\x1eV\xb7\xd9\xa2D\xc4\xcf|\xfd\xe5W_a\x9a,\x1bj(\xf46\xf9\xc8\xda=\xdb\xd4\x8cw\xa7\xaa\xe4\xc9\x8d\xb6\xaa\x81_\xca\x96\x9f\xa5K\xf3\x83\xfa\xf2\xed?2\xbf\xef\x0f\xd6^B\xb1\xf8\xaf\x19\xbf\x1b\xd7! \xf6\xb0\xab\x92\xf3\xc1e\xdf\xf5\xaf\xc9CQnxy\x0c\x01\xb5\xaa}\xfa\x14m\xa6\xfe\xcc\xc0h\x1c\xce\x19\xde\x1bE\xbd=\xd7\x11\x17\x95'\xc4\\R\x9e1L\xfdm\xb1?\xb3\x88\x0b\xca\x13b.(\xcf\x90\x17\xb4\xfb\x03\x8c%\xff40H\xad\xc5&\x07\x8ca;\xaaL\xc6\xff\xeev\x1f\x8e\x05?\\\\\xd5\xda5\xa32\x0b\xaa\x7f\x95\xb5X\xb5Cs\x03\xff\xfb\xba\xdc\xf7\xc7]\xd8\xbe<\xdet\xbc<\x16\x9c=nh\xee\xd9\x19\x9bk\xc6\x143\xd5\x96\xdd\x10\x9b\xdb\x7f\x98b#\xf9'\xbe \xdb\xe3\xd32\xbe\x08\x05\xde\x15\xbc\x80\x9b\xb69\x8a\xa0Y\xed\x87\x80\xcfUu\x88\xa6\x95G\xf4K\xfdj\x8au\x8b\xad\x14Q\xb8`\x1a2t\xda6\xbb!\xf5\xe8\xedq\x13fi\x86\xd6\xea\xa3u+u\xb6{\x1d\xb6\xfc\x00\xb7G`\xf7l{\xe6:\x9b\x80:\xd3r\x17\x87Ae\xfc6D\x89\xd9F\xc2w\x0d\xfe\xdb\xb3\xd8\xedZ\xd6\x85\xee\xbej\x9c:X\xefQm\x9b\x9a\xb7\xc5VU\x90\x19]<\xa2\xc7\xb7l\x18\xcf\xbc9\x95\xdb4\nh\xd6\x8e\xc9\x03(\xd5\n\x06\x00\xaa\xb2\x93t\x8b\xfc\x9b\xb9\xe9i\xb6T\xef\x9f\xf6Ca\xc5`\x14#I\xee\x87\x94\xdd0\xa4\xe6\x17{>\xb0#/\xbf\xbdz\xa12\xbb(Ub\xc6\xdf\xc8\x8a#\xc8\x86\xd8\x9f\x88\xdba\xad\x14\x88\x9b\xa6*\xb2\x08^\xa2\xbf\xde\x9d\x98O\xfa\xf9\xaf\x9fGe\x11\xa1\xa2\xff\xd4\x9e2\\-k\xda}Q\x97\x9d,\x0c\x03\xff\xd5\x9c%Js*\x1e\xa0\xe0\x9c\xd5\xe3\xfe_\xd9\xa9\x1d\xe8\xf2\x06\x1e\x9a3\xb4l\xcb\xca\x89\xef\xbdj\xf6\x93\xdd\x0c~h\x9b\xf3\xfe \xf6 \xab~\xe9c\x14(\xb3w\xeb\xbbf?nl\n\x0f\xfc\xe0\xdf\xd0\xd4Je\xbc\x85\xfb\xc3\x95/]E\x80\x0fO\xaanGo\x0c1q \x12\xa6S\xb3\x98\x84u\xc6\xe9M=\xe6\xdf\xfd\xf8W\xf5\x8e\x10\xdb\xb2\x1doZ\xb6\xbb\x147s|\xcc\x07\xf0Ko6\x8d\x8e\x85\x1f~|\xfff\x98R\x9f\xeb\x99\xabW%\xa6\x97\xfe\x9a\xfd\x074\xab\xbb\xb32f'\xf9\xb8\x96u|\n\x1b\xca_\xb5\xe2\xfe\xcc\x1dk\xcb[\xb6{\x0e\xe5\x05\xbb\xe8-*\x91 \xddv\xb1\xed\xf5\x1c\xae\xcf\\\xa0+\x1d\xdb\x9e[\xd9\xb3\xe1\x92\xd65\xc6\xf7\xdd^\xdb\xf3\xfd=\xfa\x1dc\x9bmQI+\xb8\x15\xed\xb4>b\x10\x04F2B\x9dn\xa43\x1f\xd0\x99\x0d\xe7t\xc2\x9c<\x1d\xe5\xcc\x05r\xfa1\xce$\x883/\xc2\xe9\x048\xf3\xe2\x9b\x0exs%\xba\xb907\xb7\x80\x9by\xb1\xcd\x95\xd0ffds\x05\xb0\x99\x1b\xd7\xcc\x06k\xe6E5\xb3\x81\x9aaL3\x1b\xa4\xe9B4\xd7\x00\x9aV \x93cp\xccu0\xa6\x05\xbeLD/-\xe0\xa5\xf3E\xe9\x84.\xfdo\xd0D\xe0\xd2\x1aK\x0d\xda\xbe\x9f\x85\xaf\x9d\x19\xb5\\\x82\x96\x190\xcb\xac\x90\xe5\xfce\xb8\x12\xb0T\x8665\xaeA*\xbdL\xa1\x03\xa7\x0c\xc2\x94K\xb6 \x0fR.\xcf\xfd\x87\xad\xafI\x08%\xa6\xb3!|\xd2\xdd\xb7 :\x19\x01N\xce\x813\x174\xb9\x1e\x99L\x07&\xad\xf7%\x11\x96\xf4\xa2\x92nP\xd2\x87IZ\x8d\x85E$C\x80\xe4\x0c\x8f\\\x01G\"\xd0H<\x18\x19\xc4\"-\xd4\xe1\xe2r\x96cB8\xe4:\x18\xd2\xda(\xe3/Y1\xc8\xcc\x10dV\x042'\x00\xe9\xc2\x1f\x17\xf0c\x1e\xf41\x1b\xf8\x98\x17{\xc4A\x8fA\xe4Q}\xeb\x87\x80Gu\x98\x17w\\\xc0\x8e\xcb\xaba\xc17?\xe8\x88\xc4\x1c\x11\x90\xe3\xa4\xc99\x01\xc7\xccxc>\xb81\x1f\xda\x98~w\x83Xc\x08j\x1cgi\xd3\xd3Q\xf6K\xd4\xba\x9f\x84\x8c\xadp\xf1\x8bzf\x87=V\xe3\x00\xa5\xa9+\xff\xef\xc25+\xbd\x15\xc3\x1f\xf5\xd7\xc8\xae9_W\x0b_K\xaf`p\xa3\xa9\xec\xf8\x1do\xda\xde\xae\xe27\x8bk\xe0\xf3\xd7o\xde\xfe\xf4\xe6\xd5\xcb\xf7o^\x0fDa?D\xb6\xfd\x029\xc2?`z\x06f\xae\x87\x03\xbbW\x0d_^\xe0\xa6m\x8e\xde\x0b\x04\x0f\x88\xf0\x85\n\x97\xa7\xb2O\x7f\xb0X\xf8k\x0c\x10\xbar\xdf\xdf8\xb5\xcb\xac\xb6!\xb5\x1bOm\x8f\x98{^\xdb\x03\xdb~\x98nk\x16\xfb~\xf2\x94\xa9Q\xf5\x99j{Y^\\|\x1e\x95\xfb\xba\xe0\xe7\x96\xc1\xe7\xbf<\x87\x9f\x9e\xc3\xbb?(\xff\xf61\xe2V\\\xc0;69\xdf\x02\xb0\xf2A\xa5\xf9\x9f\nd\xfd\xf3\xd7_\xfd\x9bX\xe0\xb4\xec\x86\xb5\xac\x1eRIW\xcd>\xcd\xbf\x8c\xce2\xb1\xf0\x93\x9bZ,[,k}\xe6J\xc7\xccsn^\xd4V\x0b\xdeQ \xde\xd3\xca\\\x1eu\xa5m\xe2\xe9 ^\xdc\x13\xfc\x9b\xcd\xd3.\xc5\xeeoW\x97\n7\xf0\xbc\xcc9\x9d\xd9\x03\xafT\xce\xfd\xf0\xea\xcf\xc1Q\x86\xf3\xc9\x0f\x17\x999\xad\x83W\xc1\xd8!\xd2W/\xc5\xe6\xb1WZ\x83}\xce\xe1\xbd\x97\xf2\x18\xe6\xc0x\xf5\xa5,|\xfbJ\x8f\xd5\xc3/%\x14\x1a\x9f\xc1\xdb\xaf\x15%\xfb\xfc-\xba\x04\x03\xb0\xf0\xfcK\xf1\xf9\xff\xa5\xf8:\xbd\x9a\x05\x98h\x9bs\x01RV\xd0\x01\x13=SR\xc0`\x04\xa4\xf0\x05) %#/ eJ\x0dHY\xc3\x0e\xccM8r\x04R\xdc5\x92\xfa\x111\xfbL\x9fM`\xc3v\x8a\xb8\xad/\x8c{\xaa\xd753u\xfa\xb2D\x1dz\xa9C\x81~n\xce\xdd\x12-\x8aB\x98\xb4\x92\xc1\xd5\xd3\xc1\xa1\xb9\x83\xe3y{\x10lh?\xe7\xf4#\xe2|\x1c\x9f\x90\xe5\xb7\"\x1a\xdf\xf2\xdd25\xc1\x1b\xef\x031~\xfaU\xe3\x7fwM\xfd\xa2=m\x95\xcb^\x9c\xe9^\xfd[\x93\xf3\x7f\xdf\xed/\x8d\x0f\x84I\xae~\xeb\xba?\xb2`\x1a\xbb=\xca\x9a#\x01\x0b\xb8\x9f\xa5A\x839\x1f\n{7\x1fX\x0dCA\x93~\x98\xea\xda\x08\xedY\xbe\x9b\xde\xfc\xf2=t\xbc\x98,\xc6\xc4m\x92\x9e\x7f\xfdL\xa9\x82\x1a\xdb\x96\x15<\xa9\xae\xdbD\x01\xf0f\xbf\xafX'\xafl^O\xe19j\x87\xf4\xf6x\xf1J\x9c`(\xd2\x0f\xdc\xacaE\xb5(f\xe0h\x96qFL;\xfa\xc3\xe7\xd7\xbe\xe7m\xb1a\xe5)\xedCd\xb1\xce\xb0W;\xd1\xcd\x1e.6\x19\x9d\xc6F\xe8\x9b\xab\xb7\x9dtv\xab&\x0b\xfc\\\xe9\x11/\xfb\xcd\xd6\x88R5t\x9b?.\n]\x88\x1fA\xfe\xa8\xb6\x99\xe6U/\xc06\xd2\xc1\xf9i\xe5\x0c~\x05\xdf\x1aLo\xd0\xac\x0e\x82\x05O ,\xa6\x05\x8b\xc5\xd7\xda\xa0\xd8\x99:\xd5\x0bks\x17\xc1\xb1\xe0]6\x06[\x9c\x1c(;S8\xe9\xa1\xf9\xd8[\x03f!\xc5\xca\xab\x83g!K\x00m\xf8fY\x03iaE\x97\x13\x83jg\xca\xc4\xaf\x9e\xc0Zp\x06\xd7\x02\xa2\xed\x11A\xb6\xe0\x0c\xb4\xc5_(\x14p\x0b\xbe\xa0[\xcce\x16\xf7bu\x00\xee\xe2v,\x83p!\x18\x88\x0b)M_\x1d\x94;\xd3\xe7 \x96\x03op.\xa4\xb4>-hw\xa6d\x16\xc2k\xfc\xea\x8a\xe2\x85\x94\xb6f\x8d\xe8\x05KT/\x04\"{!\xa5\xd5\xeb\xa2|g\xca\x10A\xa0\xe0\x8c\xf6\x85\x94\xe6g\x8c\xfc\x85E\xf4/8#\x80!\xa5\xad\x19\xa3\x81a\x11\x11\x0c\xa1\xa8`Hir\xce\x08a\xc0\x0f\x10_\xa40\xa4\xf4cm\xd4pZ7\xfc\xd1\xc3\x90\xd2\x91u\x91\xc43e*\xaex\x1eM\x0c\xee\x88b@\xb49Gd1\xb8\xa2\x8b1\x0dX\x1be\x0c\xaeHc\xcc\xc5\xd7E\x1c\x83w\xdfsU\xe4\xb1\xa1\xc7\x8cA\x9eE\x1f\x83;\x02\x19DR\x8e\xaa\xb9\xdb\x9c\xebS\xdbp\xb6\xe5l\xb7\xe1\xf7\x8b\x0f`o\x94\xdad\xf3\xc2\xaan\xe8Zy\x03-;U\xc5\xc3\x8b\xe1w\xf8\xbc\xbc\xe8?Nj\xb5\xc84Gl\xb9\xaf\xd9\xee\x0f\x93\x92\x94\"N\xe2\x9a\xa9M\xb0\x81\xd6W\x9f\xfc\xc7b{(\xeb\x01I\x96\x0bi\xb1\xe0\xde\xd4\xe7\xd0\x8e\x8cc\x83l\xd2\xd7\x99F\xbdO7\xfa\x8e\xd4\xda]\xac\xe9y\x03'\xd6ve\xa7\x8c\xad\xc6SD\x05\xca\xc5f\x94(=\xf9r\xbbm\xce5\x8f\xf6A_\x17UQ\x07\x0b\x8f\xcf\x8a\x9a\x8aS\x06\x7f\xa5\xd7D\xae\xb32\xc4\xebx\x80&f\xe1\xcd\xbb\x17\xa6\xcb,\xf7\xcf\x8c\xb2\xc0\n\x8f\x19A\xa2 \xfd\xb0\x84R\xfc|\x10\xf2\x17\xbd\xd2\xaeG\x8d\xd8\x12\xb5V\xe7aeP\xf9W\xd5\xe2I\xdd\x04\xde\x9f\xbd\xaa1\xe90C\xd4(Y\xd7\x04W\xab\xf1\xa5\xf2\x81\x83<\x83\x91S\xc8S7a\x91\xe7\x1f\xb2\x9e{w\x8a\xaf\xf25\x7f~X\xbd\x10\x8ay~\xb4[\x87\xf6\xe9\xe1\x16M\xb26f\xc5\xc4/\x8d\xc9\xf1_=\xce\xe8\xce\x88\xc2\x16\xf2{\x06O\xbcR\xa5\x8fC\x05\xa8.\x9c|I\xcb\xb80 W\xb7\xa5\x99\x98)\xc4\xdc\x0f0\xa9\xa5\x8e\x91lF\xf4\x10\x97\xcc%\xdc\x1a)F\x93o`>\x98#\xcdA\x1f\xd5`\x04\xdd\x80B\x87\xd8@W\xcf\xc9%\xdd\xd6Oz\xcd\x8dz\xf4\xfe\xec\x95\x97k\xfa\xb5\x9e\xc9\xec\xb2\xefx\x8eF3\xdbw\xb5\x005\x01q\xb3\x1b+\x01\x8b\x01\xcdI\x16y\xc4\x07\x05.E\xd7\x1d\x8c0\xd1\x1f5\xc0\xa6\xbdS\x83?\".*\xb0\xbb\xa9\xc0\xaa\x97\x82\xe3\x9e5\x9b\xcb\n\xc6n+\xb0\xb9\xae`\xd2P\xf9>-\xc20\x11/\x174\xa3\x1c\x87\xa4\xa1\x01iVN\xb2y\xbd\x00\xe6\xf2|\x81\xd5\xfb\xd5\xe9c\x0e\x0f\x18\xd8\xf6\x1c8\x82\x0c=\xde0p\xd3nf\xaf\x18x\x982\xa5I^?\x04\x9f\xdc\xf9#\xcf\x1f8\xbd\x7f0e\xfc\x93<\x81\xf8\xf8\xc7\xde@\xa0x\x04a\xca4\xa6y\x07\x11\x84\xa8\xb6je.\x9f\x97\x10\xa6\xccm\x92\xc7p\xf2\xd4\xfc\x9eC\x982\xb9Y\xbd\x88\xe0\xf6$\x82\xdb\x9b\x08\xc4y\xcc\xe5U\x04\x97g\x11\x88\x83\x99\xc3\xc3\x08./#\x10\x072\xdd\xdb\x08^\x8b\xce\\^G\xf0{\x1e\xc1\xed}\x04\xbf\x07\x12\xc0u\xc1\xb3{\"\xad\xa8\x03\xbd\x910\x87G\x12\\^Ip\xb1\x88\xe3\xc5\xd2|\x1eJ\x80\x10/\xa5\xd3f\xdb\xb7\x9d\xf6\xf0\x8d-\xb6\xea\xc5\x90\xbcb}~\"n\xcc\x83\x90\xbe1\x14\xb7\xd0\x9e\xeb\xf7\xe4l\x13\xed \xe7\x16J}\xfb^\xd2\xcf\xaf\xbbSj\xde\xb5\xab\xc5\xd7\xbf\xeb\xd7/e\x99\xafR\xf5\xbeH\xbd\x1b\x91\x1f_\xa57\xa2\xcb\xcd\x9f\x04\x96-\xb5\xef\x1f\x19L\x94\xe2\"\xa9\x9b0\xbc$\x17E\xb2\x12\xea\xde\xc9&\xe8\x1cy\x99\x87s\xead\xeeJ\xeb\x87\xc8\xbf\xe9\xb4\xb1\x0c\xb9Y\x97\xf6'g\xce\xed\x16\xcd\xabd\xbb\xfduM\xbc;\xe2\xfe\xbc\xbb\xbf\xb8g\x1d\xf0\xa8\xfd\x17\x9d3\xf2\xbe\xa7\xfe\xbb\x7f\x99\xff\x9cl\xd3uR\xe5E\xa8'\xd0x\xb3\x02\\\x81\x83\xa6$_\xa0\"\x85X]\x7f\xf3\xac&ht\x0e\x8e$\xa3mM\xe9\xfe\xc1!\x06\x9foPo0^\xa5\xb8J\xb6\xf1\x11\xab\xa6\x8a\xfeV?\xe6\xaf\xd3\xd9\xfcgr\x93h\n\xd4\xbf\x1a\xb4\xe9N\xe4\x07\xdfCI\xec\x02Q\xb7\x84\xfcF\x14\x85JwX\xa9\x1cN:\x8fV\xf3\xeb\x06~\x0f\xa5X)\xfb\xfe&\xef\xde\x06\xfe-\xb9I\xce\xd5\x90\xbe\xd2\xf9S\xe5\xc0d\xaf\x9doV\xc9v\xdbV\x91\x90\x9a\xd2$v\xd1(z\x07o\xab\xdf\xa8\xabO\xed\xa0l\x08x\x9bn\xb7*\x97I\x0eW9,\x93\xc6V\xbdNK\xe5k+\xabd\\\x07\xc6\xf2\xe4\xac\xd7\xa6\xd6\xd4\xb5\x87n\xf5 V\xc9\xbe:\x14b\x84^\x9d\xc1\xec\x0ejm\xa2\xedB\xffa\xd0\x89X\x1e\xae\xa8\xa8\xe5\xb7Fe5\xde\xda}\x91f\x15\xe4\x87j\x7f\xa8`}(\x94\x91[w\x01\xa2y\xfb\xbcMw\xe9\x88\xc3\xd2\xac\x12WH*\xa04\xab\xbey6\xec\\a\xe8-\xdb.\xf9\x9c\xee\x0e;\xd8\x8a\xec\xaaRY\x00\xf4(\xf4\xeb\xe4\xbf\x89\"\x87\x9dH\xb2\x12\x0e\x99j\xdc<\xc0m\xd8\xf5\xf9\xb0\x93\x96\x91\x07\xb3\xac\x15tH4_\xd4\xd9m6\x075MuC.\x0e[\x11\x9f\xc0Ms\xee\x11_U\xc5'p39\xed&9\xec\x88\x8b\x15\x9f\xc0\xf9\x9dq\xf1 \\|\x02G\x1c\xfd,\x8e\xb4\xf8\x04\xce1\xeaY\x1ddD#\x7f|\x02\xc7w|\xc5'p\x1d`\xcfc\x92C+x\x1a~G\x16{\"\xb3:\xaf\xe2\x13\xb8\xf8\x04\x8e\xf7\x04\xae\x0e\xb7\xdd\x89]^\xdc\x11\xef\xd1\xbd6\xed\x05\xbd\xfew\xff~^\x7f\xab\x9fx\\bFSw'\x9d\x86mO\xcafX\xdf\xd1\xf3M\xfd~D\x99Tk,\xda\xf8q\xf9\x9fe\x8e$\x8a\xf1Z\x9d\xba\xed\x9aXY\xd13\xab\xe8\xfbs\xa2S,\xf7p)\xef\xc7%vEw\xd9z\xbc\xe9\xbb*\xb1\xdb\xe7\xbaf\x88\xf6\xad\xe5\xebt\xd3\x14\xf8\xa9r\xf8^T\xd7\x90f\x90\x17\xf2\xf2P\xe5P\xa6;\x95\xfbU\x0d[l6bUu\xf5(\x9dgW\xc5Y\xd7\x7fU\xa2g\x96\x91kY\xdb\x1a#\xf4\xbfMq)\x9d\xb9\xadI\x87\x9c\x94*\xb5\x95\xc2\xd1\xdb)\x1d\x13c\x9d\xdbZ\x85Ow\xf7A\x95\xd7\xf6\x8c\xa6\xb0\x88\xe4kmN^,\x93R,t\x1e\xbe\x9b\xa7KQ%O\x17g\xca}\xf4\xf3A\x94\xf5\xa5{d\xe7\x18\xdb8>\x89\xd1\xbe\xa0\x90\xc2\xee\x9c\xfd$\xee\xb4]S\xbb\xc8\x9a\x0cgi\x06g\x1d\xf7\xd6\"\x13\x9f\xabK\xf9\xb1*\x83t\x95v\xd5\x85\xc6Y\xa8\xae\xf6\x92\xaa\xfb\xe4JrEY\xc9\xb5NW\xa9*F\xb4\x80w\xf2\x9e\x98gj\x9f\xe4\x9bM)TZ\xb7O\xa2{\x81i\x8b\x9c\x95\xa2\x11\x0c\xfac\xe2\xcc]\xb6\xf5\xde\xdc\xeb!\xa8\xe9g\x87\x9d(\xd2\x95\xf9\x9b\n\xe9\xef\x9a\xadn\xafEf\x88u\xc8\x9a\xb2J]w\xf2\xa9B\xb5\x15e\xd9\xceZW1\xd2\x1b\xf4\x93p\x91\xa0\x9ex\x07_\x9f\x04\xa8\xd1/\x80\x02\xbd\x8d\xac\xed\x80&\xd3i^%\xdb\x8e\xfd\xd6\x14\xe3\xd2\x85\xaf\xba\x9cQ[\xf1\x0f\xdb^\xba_]\xc8\xa7\xfd\xc3\xe9\x06\xb6bS\xd5\xb5\x9a\xd2J'\x93o\x0c\xday\xc3t\xba\x03I\x8a\xe5\x1d\x88du\x0d\xc9~\xdf>a=d\xd5\xa5\x1a\x9bOX\xdb\xe7\xd9A\"g\xabV8\xd7\xf9<\xe5\x7f\xa4\xd9ZJ/\xd1\xd4\xa8\xabg\xa7>\x1c\xadK\x9d\x16\xaf\x97\xd8[\xf7\xd0\xe4k\x1dPR=\xdd\xe8\xd4\xe2\xda\xe4\x85$\x97y\xab\x93f\xf0\xe1\xb4\xec\xd1n0`e`)D\xb9\xd7\xb1\x11\x8a\x19[\xee\x95\x0c\xba\xa8\xd9/\xbd\xca\xf2\xa2\xfe\xa4\xbf\xcd{gp\xd9e-\x95:\xb1\xf4\xda\xc4\xed\xe4\xad\x11\x0cI\x9b\xb6<\x94\x14\xc2\xc2G\x12\xab\xc8\xd6}\x15B\x9d\x1b\xfd\xac\x9d\xe7i\xb6\x12\xe6\xfd\xdeW\xe5\xfa\x13|\xbd\xf8\xdd7\xbf\x19\x0d\xac\xd9\xe1\xa6b\xc0y\xbe3bv\\\x0f\xe0\xbb<\x872\xdf\x89\xcbF\x8e\xa3\xb5%:\xa2\xba\xbbp\xdd\x02\x13:\xdf\x7f}\xe64\x83\xe86L\xcdVj\x8a)\xa4\x19\\\xbd?{\x05E\xfdE=d\xfd\xe6\xa6\x91!5\xaa\xb6\xdf\x05\xbcQ)v}G\x0b\xd3\x95jD)k\x87@\x87J\x0b\xfd{\x07\x81\x9a\x99\xf7h9\xad:\xb5*\x94\xbc\xd9tp(\x0dV1a\x96\xc3./\xcc\x06o\x1e\xb9\xa1\xf2\x85&]\x87K\xde\xa0\xd3\x0b\x8e\xcb\xd4N]\xbeMo\xfa\x9d\x8d\xdf\xc1w\x9b\xa8\x9du\x02i\xd5\xd6\x1a\x80C\xa6\xd5\xf4\xb5\xae\x98w\x9bb\x898\x07\xac\xd8q\xc5\xdax\xb1\xfe\xa4a\xc6[E\xbc\xd60\xdf:!\xe4\xa96\xe0]UrD\x9d\x98\xddY5\x1b\xb9\xbf)\xeb\x9eF\xbb\xb2\x10{\xa1\"t^&EC2\xfb\xbe\xac\xd1(\xce\x18n\xc9\xcd\xe7\x85(V\xcf\xbeVe\xfd\xdf\xbfz\xf6\xf5E\xfeId\xe4=\xa1\xda\x12\x83\x0bjF\xe8\x04\x0e\xa8\x0e;y\xeae\xd7\xf5\xe7\x94\xcc\xa4\xe6\xc2\xa9\x03\x12\xd4#\xf4\xde\x1bO\xbd\x82\xbbd\xbfW\xdb\xc8\x0cY\xddU\xbc\xf5\xad\x9b\xebt~[\xd6\x0fH%&\xb9\xa4\x1a\x83\xd2\xed\x0fe\xb3\xe8z\x12\x97\xf9m\xd6s\x9b#\xd7\x03=m\xf5aC\x8d7o?\xfc\x04\x8f\xbe\x864S\x05\x0fO\xe0\xa9\x89`\xab\x83\x0bN\xe0\x99T\xa9E\x91\xf58\xbfn\xff\xd8M)1\x08\xdf\xfb\n\xde\xfd\xfb\xdb7\xef/?\xbc=?{\xf3\xea\xf4\xbb\xd37\xaf\x91_\x7fz\xf7\xfa\xc3\x8fo\x90\x1f\xde\xfc\xc7\xc5\x9b\xf7o_\xfc\xd8\xfcT+-\xcf\x1dh\xed\x12P\x91\xe3\x9d\xa2\x86Pj\xa6\xaa\x81!\x05\x9a\"Qy\x9d\xee%\xb3$\x03v\xe9WiCf\x84\x8c\xa6M\xc2\x9d\x19J?\xe9H \xd9\xdd\x02\xc3\xaa)\xf1\xbc\xf7/\xcd\xfbJ\xfb\xb8\xcd\xda\\\xc3\xfa\xaf\xfd\xb5Cq\x1a\">\x07\xf3_\x08\xc6$k\x16\x9d\x92\x99\xa0\xdd\xc1\xfd\x99\xea*y\xa6\x82\xd1*/\xd6%\xec\x93T\xfb\xcf\xf3\xacL\xcbJ\xfe\xa7\xa4r\x8dI?A\x07\xb9\x93n\x04\xbc\xcaS]0)\xc9\xeaU\xd0;\xa23\xa4\xae y\xd7\xee\x81\x11;vY\xd1\xce\x86(\x0b\xa2\xec\xe7a=\x07\x9d\xa6\xb0\xdc\xfc\xec67\xab\xcd\xc1f\xdd5\xe5f\x97\xd6\x16!\xd5\xdc%jk\xf9\x88\x04\xf1\xf6f\xa7\x93\x10\x0c\x864g\xca\x83Q\x13\xbc\x99}j\xf8\xf4 `\x8a\xce\xe0\xb1A\x942!\xaa\xb6\xee\x17\x0b\xaa\x1d\x11S\x89\x8e\xb3$-\xd8\xf4\xd4\x8a@\xd5*\x0fh;\xbc-\xd8\x15 \xb0\x9dh\xc0U(`\xacTP\x903\x95\x0b\xc0\x14\x0c\xb0\xb2\x06\xf0\x15\x0dp(\x1b`Q8`f\xa5\x030\xc5\x03\\\xd4\x1c* \xe0UB\xc0\xa5\x88\x80K\x19\x01\xff\xa9\xd0~\xe6z\x941\xf9\x9400\xffi1\xc4<\xd7\xa91\xc4;\xe5\xf4\xd0\xe0\xd1\xfbfQV Daq\x8a\xd9\x91 \xa4H\xda\xa6\x11S\xd8\xf2O\xaf\x8e\xb4\x1d\x9da\xa4\x1a\x00\xe4bd\x0e\xb9\xec\xd8\xee\x01\xb2\x19\x95\xce\x94.\x02$\xb4EF\xbb\xa4t\x90\x9cvKj\xbb\xac\x0e\x97\xd6#D\xc3\x8d9|\x06\xe8\xa0/&\xb3)R\xdb#\xb7=\x92\x9b,\xbb}\xd2{F\xf9}L ~<\x19>\xa7\x14w\x13{^I\x1e$\xcb\xbb\xf6\xdf\x96i\x07\x89\xcc\x1a\xc3tW \xef;\x1a\xba2\xbe\xf3\xd4\x90\xae\xc8\x8e\xad\xc4\xe0\xdaf\xd6\xba\x84n\xe6\x9el5\x86\x99,\xc7\x12\xbc\xd6c\xf5Q\xdf\x82\x0c\x14\xa2 OHm\"\x93eQ\x1e\xb4\xb5\xd9\x97\x07\x9f\xcdad\xb6\x1c\xfc,\xed\xc2z\x97\xdb\xa5WR\xc4\xa9\x1a\xb0\xfa?\xdf\xabMGV+\xbc\xc5\x82\xab\xdc\xf9\xf3\xb5H\xaf\xae\xa9NX\xb3\xb6\xfd\x81\xab\xb9\xd6\xa3\x7fu-V\x9f(\x0f\xdf\xec(4\x01\xd8\xfa\xd5&?d^\x0bq\xff5sRB=\x06\xe5\xdc\xfb\xea_\xcc?\xd7'\xb0I\xb6\xa5\xfcK\x96W\xcd_\xcd\xde\xa8\xff}Yt\x96j\x84}\xd7\x9dMOz\xc9\xff\x99~5\x8a \xa9\xd5_y\xb0o\xce.\x078>\x1br\x82\xe3\xd31Gt\xfdv\xc6c'\x0f\x01\xf2\xf2\xf9\x9d\x07\xc9N2\x95\xe3\x13|\xfb\xaa\xa3\xa89\xe2\xeasH=\x93N\xfa\xbag}\\\xe9n\x1a\x85B\xd7U\xbc\xb8\x16\xf5\x0f\xa6\x88\xa5:.O\xb3\xca\x94\x9f\xed\xbf\xac\xa8_\xd4\xe9\xad^cj\x8a`\x97\xca\xc1\x94\xea\xb2\x88p\x95_\xe5\xaala-\x11\xae\x8a\xe4&\xad\xee\x16\xab\"/K\x95NPn\x90\x97E\xba\xbe\x12I\x95u3Kv\xee\xe7\xc8K\xd5AAXR\xd6\xfaO\xc8\x01\xdfl{kc\x17\xc1j2\xbdL\xaa\xd55\x99V\xc1cUkxI\xe2\xa7\xa3\x11\xdaO/\xa0\xb1\x83\x8b\xac\xef\x8ad\xb5\x15\xe7\xa2\xe2\xb2a0i\x7f\xc5\xf4\xd2\xc4\"\x93(W\x9f\x93\xc6~4\xa2\xac\xc5V\\I\x15\xcd+\xf6T@qQ]\x06\xe9\xc1\xf5\xa7\xb5\x95I\xe2\xa9g_+S\x86\"\xd96\xcd<\xb1h\xcd\x88o\xfa\x07\xa0e,\xe56)\xafU\xb0\xbd\x9b\x10\xa8\xee\xeeZ\xe6sA\x8f\xdc\x0d\xde\x0c;!\xafzG6\x83\x0e\xf4\x82.\x8e\xc1\x1858n\xb0v\xdesb\xc5/\xbe\x93\x95\x88\xf1,\xeb\xbf\xb0x\xb83\xcda\xb8W\xc3 \xe6\x8e\xdb\x8cD=\x97\xa8g\x00?\xc9Kzz\x05\xe7\xf2\x82\xadb\\k\xc6jgQ#L\xb6e\x0e\xbb$\xadKxw\xcdV\xb5\x15DJ\xb1&<\xebDvZj\xf3\x84y`\xbf\x92\x17K\xc3\xfc\xad&\x9dwP-\xc5*9\x94M\xe1\x10\xf9\x95\n\xe1\xcf*\xf5\x90\xb7Ln\xd2\xec\xaatn\x81Cu\x95\xa7YGM!\xef\x85Rdk\x8f\x1aZ\x88\x0drE\xed}r\x1f\xee\x81\xf1\xf1\xdeE\x83l\x8d\xa1\x0cu~>\x9b\x1a\xa9\xfap\xdb.\xbc)\x82vb\xe7\xc6\x10,\xc1h9QpM@=\x03 \xdd\xab\xba${p\xe4\xbc\xb8\x11Yu\x194m\xef\xae\xb9(\x92\xac\xdc\x88\xe2\xe23y\xd7\xa4A\x85\xe5 {m-JZ\x02\xa5\xf0\xf0\x07|\x1fY\xb6\x05\xb6\x87\xd0Og\xdd?H\xa1\xa1\x7f\x8c\xa9\xd5'\xd6\x98\xf3z\xa7i\xa6^A\xdc\xa4\xebC\xb2UL\xa3K\x07\x99S\xaa\xca\xe1\xcd\xc5\x0f$\xce\xfe\xcc\xbb\x80-\xe5\xd7a\xbb\xacm>A\xc4tSH\x1e\xf70I-\xfeX\xae\x865\xdc\xd2\x1e\\\xf8\xf6\xf64\x1al\xf5\xee\xd7\xa3\xf9\x82c\xce\xe08D\xc1M\x01\xdba\xeai6\xe3\xce1\xd0\x13\x0d\xdd\x01\xfcw#\xc5\xbc\xa2\x04\x80gE\xe9?p\xa7\xef\xf0\x8dP\xee\x07\x91\xde\xb8$\xcc\xf0\x022\x90g\xfd\xab\x87\x92:Jy\xee&\xa0U\xdf\x0f'[\xa3\xf3HOf\xf8i\x8d\xe4\xd2\xa3\x13$7\xa2H\xae\xea\xbc,\x83\xe7\xe6t\xfa57\xba\xc9\xb2\xd6\x8c\xa7\xc58i`:\x0b\xf0\xe5m\x9a\xad\xf3\xdb \x04\xca2\xb0)\xf4\x02\x121t\\\xd9\xb5\xf9\xa6\x14\xd5\xe5a\xbfN*q\xa9\xae\x98\x97:\xff\xd1\xe5^\x14+\xe1\xb1\xa8\xa0x\xd3\xe5\xea\xb2\xaa7\x97\xa1\xf7\x04-X\x0f3\xect\x1b\xe0\xb7{.\xf4\xbb\xea\xdf\xff\xf1\xe97_\x7f\xfd\xb5I\x96\xd4Xj\xaa\xebB\x94\xd7\xf9v\xc4\xaf$\x1d\x8b\x1e\xd8\x1a\xa6`\xf5\xe2\x0f&:\xc1`VG\x18\x10\x9da\xd0%\xf6\xee\xb0\xad\xd2\xfd\x96\xba\xa7\xc6\xa6W\xf5\x12\x7f\xcaF\xef\xa2\xd9%\x9f/\xa7\xdd\xc3t@\xba\xa7/&?\\\xb7^\xcd\xb0\x03\x86|}B\xd6\xdd\xb1\xf2\xce\x1b\x94k\xf5\x1d8\x9d\x1c\xe0h\x17h\x12\xb7r\x82\xa3\x85\x8d\x1b\xb8\xfc\xd0\x18u_\xde\xbd\xcd\x83j[\xb7\x824h\x97c\x97\\\xcb\xac\x87\xb6b\xc7\xa7C\x9b1Xx\x15\xdc\x057\xff\xdb\xdd\xfbhQQ}\x1b\xb3\xe3\xc3\xbe\xad\xd9\xf1\xe1<\xb2~\xa8\xc7\x84\xa1\xc1m\xd1a\xb8\x10}(\x0c\x11j\xa3\xe6\xa1\xa2K\x82s\xb5'\xa7\x88\x82#\x1f\x11L\xcb\x18&8\x1c\x9fc\xc2\xc3.>,\x02\xc4)B\xdcB\xc4-F<\x82\xc4%J\x1e\x0b\x16\xc7\xc7s*\x14\x98\x88 Ef\x174\xa1\x18-\xe2&\x14\x9dU\xe8\xf0\x10R\x05\x8f\x89\xeb\n\xd4D\xeeG;%+^-\xdc\xbb:9y\xc5Z\xe0h\xa6\"\xcb\x0fW\xd7\x97h\xeci{\x99\xa6r\xc3\xff>\xe4\x95\x08\xe5\x85\x9fe\xe3\xe1\x18H\xfa\xe8\xd0yC?_\x9b\x16c\x97\x8a\x05\xc9\xc8\xdf`\xf9.\xef\x04\x9by>\x9dO\xe1\xf8\xbcO\x0b\xee\xeb\x1f\xf6\x96/_\xde}'\xc4{m\xb4\x8f\x1a\x07\xf6y\xd48\xa2\xc6\x115\x0e>B\xec\x1d%\xe3\x1c\x88\xef\x1f\xe3\xfbG\xd3\xc2\xbe\x86\xb3%\xdb\x83\x89 \xf7\x80\x9ct\x0f8\x89\xf7\xc0\x9b|\x0f\xda\x04|\xb4\x13?\x1e\xf2\xc8\xe7\xf1\x90\x8f\x87|<\xe4\xf9\x08\xe3!\x1f\x0f\xf9x\xc8\x7fY\x87\xbc\xfc\xdb\x8fi\xc9\xaf\xf1\xdb\x9a\xd6\xc2\xce\xf9\x869I\xc3\xcc\xd3\xec\xe5\xddk\x91\xe5!Q\x0di\x98\xbc\x89\xf1M\xbe\xf8&\xca\xd2)\xf5!X\x8f\xbc\x8f\xe7D\x8e\xa8jLEa%\x0cC\xb3\x0fx\xda\xcc\x90\x89@\xd1\x7f\x18\xa2\xc4^\x836&)h\xffL\xf2\x7f\x1a\x18=\xb4\x04\x0b\x17\xc0\xcc\xc1\x01\xe8\xe3Kp\xaf\x1b\xb8OX \xb8 \x80\xc4\x19H\xf2\xb6I\x8f2G\xd8\xba\x99\x1e\x0c\xcc\xe1d\xc7\xc6?\xf5\xb1f\x07U\xfbl\xb3\xf3\xc7\xe9o7;\xc8\xf4+\xce\xce\x1f\x8e\xf6\x94S\xedau\xe4]\xe4J\x88\xb2\xf7\xaf;}\x8a\xbb\xe3\x1f\x93\xb2z#U\x7fU\xd3\xf5\x07\xb5\xf4/\xef^\xac\xd7\x01v\xff \xcf\x05\x89\x83T~\xa7\xc0\xe1\x1d\xe3Aa3\xbaw\xcbR\x147b\xdd\xa1\"\x7f\x80\xfd\xb8\xfc0B\xc2\xd1\x17\xa2s\xce(M\x98\x7f\xe6\xb7\xe7\xcd\x91O\xfcYn\xb3\x1a\xd0\xf3\xc9~B\x1d\xc3Pd=\xa9\xbcg\x95\xf7\xb4\xa2\x9dW\x9e~\xecg\xd6\xdc\xa7\x16~n\xe1'W\xd8\x82\xe3s\x99\xf1\x04\xb3\x9ca3\x9fb\xc89v\xec\x93L\x8a\x883\x1d\xbb\xaf\xe2\x9ak)\x11(\xb4\x97\xedkV\xb4\x05\xde\nl/[!@\x95\xb1\xber\x0dC\x86\xbfx\x05\x87,\x99S\xdb\x1d\xbf\x82\x05\xdf\xb6\xf6\n\x0f\xdc@\x0f>\xbc\xae\x97\xb1\xde\xc6\xe8]\x0e|\xf2\xd5'a}\xc6x/\xa5\xdc\x06yo\xf3#\x18\xe5\x01\x8bh\xd1\x10I5$\x95\xfd\x04\x9b\xfa\xe8v\x84\xb0}\x84\x0b\x10\xf6 \x86Qq\xda\xba\x81\xd1\xc7\xb9VT\xe8\xa5n\x8e\x87\xba=J\xf8\x1e\xeb\x8eN\x99N\x8ct\xd8\x19\x13]\x99\xe3\x06A\x1ajtez>\x8e\xae\xcc_\x91+\x93,\x81\x867\xe2@9\x14\xaf\xc5AB'^\x8b[\x88\xd7\xe2/\xf5Z\xaci\x14(\x13\x86\xe2\x80t\x01\xb6e7\x05\xfb\xda\xdf\xdb#kk\xd6SG\x1b<\xfb\xa9\xa3A\xcb\xc7\xd6 \x08{&T@\xb2\xa1B\xd3\xd7\xb8\x88\x8f++*8&\x85eGu|?\x9e\x13\x85\xed\xda\xf4\xc1l\x06\xfc\xc5s\x05\xdc\x1bO\xfe\x02\x0f\xff\x87\xabS\x86\xbe\xac\xb9\x9fWV3\xea\x0d\xf7\xfe\xfa\x8a\xf3dJ\x03\xf9M\x19q\x8dk\xe5\x90\xbd\xb6\xd1;?\xfe\xb3G\xe5\xf2*v>6\x02w\x0f\xd1;\xff\xdf\xcb;\xafi\x13\xea\xe8<\xb2Tv\xe9y\x0e\xd6\xb8w \xec\xd4\xf9\\\x92\xdb\xaa\xf7\x91\x0e\x1fL\x00\x90\xb4?\\\xff3}be\x1c}:\xa0k\x926=0`\x8e={X\xcd\x82\xca4\xa77\xdev\xab\xf6\xc2\xcf\x07Q\xa4bm>\xf0\x87\xf9\x0d,\xbd\xec\xcd\x10]y\xf3\x1e\x8d\xd1\x95\xf7\xdf\xce?\x15]ydREW\x9e\x13\xd5\x17\xe4\xca\x1bt\x1b\xa0f-u\xbb\xe1\xd92\xaf\x9ae=\x84H'4v\x05\xb6\x1fE\xa1(\xed\x07\x92\xfdH:\x86I\x1e?\x9a\xbc\x82\xc0{<\xb9\x0e(/v\xdf!\xe5E`=\xa8\xbc\xf2\xd7G/ \xc8`\xef\xf0\xc0+\x87 (\x8e\"\x8b\xc1~pE\xd2\xf9H\xe7r\x1fM:\xcaP\x0e\x1f\x1cf\xe1\xc9:\xc7GZ\xa8P\xb3\x1elV\x84\x16/\xd5\x94\xe3\xad\x87\xa9\xd5\x05H\x07\x9c\xce.\xcf>\xd5\xf6\x9d\xa4\xf4h\x13\xbc\x19X\x12\xd4\x83\x9d^\xaeD\xf5\x8ef\x8eU\xf3%\xad\x0f\xc3JJ`\x1f\x86\xda\x92\xcc>\x10\x99%\xb1= \xdb\xe0\x193-_\xf4\xb4>H \xefI\x88G\xa4\x18Y\xc0\xc0\xa1\x8a8n\xc7H\x9f\xccd\xf8\x00\xee\x84\xf8\xe0:\x8b\xecg\x10\xfaL\xd0)\xeal\x07\x8d\xb5 \x9e\xbe\xdc@\xf0\x83\xd2\x01\x9e)\xafJ\x07\xa8\xea7\xa6\x83\xbfR\x1e\x9a\x1ap$\xd3\x07\n\x1f\xe2NDKb}\x12F\x8b_\xd2\x99d?\x0c19\xe1~\x8b\x1e3FR\x12\xe3\xf7:t&\xdf\x9f\xa7/;'ON\xc6\xdf\xc1U\x1bt; \xf9\xc1\x96\x94\xbf3x\x9a\xa0\xf5\x1f\xf6\x9aro>\x8b\xd5\xa1\x12\xaf\xb6I\x1a\xe0s\x97\xad\x8e|\x9d\x95\x9f_\x1e\x8a-Y\xdc\xfa\xe4\x10\xc0\x0b\xf8\xf0\xfe\xc7'\x85(\xf3C\xb1\x12\x90%;\x01\xd5uR\xd5\x1a\xf0\xf6\xae\xd5\x81\xb5\xf0\x90}\xd5\xae\x99\x11\xb2R\x14i\xb2M\xff&FrD\xcd\xa9\xcaW\xf9\x16\x96\x87\xcdF\x14\xc6g\xb4\x80\x8b\xeb\xb4\xac\xc7\x0e\xbbCY\x19\xab7$\x15lERVc\\y&\xe0\xc1\x93\x07\x92\xef\xe4y-\x8a\x85\x92\x81\xdb\xa4\xac\xa0\x14WR\xd2\x19\xef\xd1\x87\xf7?>,a\x9fT\xd7\n\xf9\x08U\xa3P\x8e{\x91\xcd7\x87\xed\xf6\x0e~>$[I\x81\xb5\xa6O\x8dZQ\xe2QRB\x9a\x8d\x1b\x7f\x94]>\xb9\xca\xf3\xab\xadX\xa8\xb9/\x0f\x9b\xc5\xebC\xa1\xe4\xfa\xc7\xc7z\xc4\n]y\x9d\x1f\xb6kX\n\x90\x93\x1eaZ%Y\x9e\xa5\xabd\xab\xa4\xcf\xb8\xa7Gbq\xb58\x91\xa4Ry0\x1e,\x1e\xc8\xed\"\xb7q\xb2Z\x89}%\xd6\x8f\xc7\x07\x07\xc0i\x06{\xa5\xec\xac\xc4 T\"\xd9\x95p(\x0f\x89\x9c\xae\x94\x07\xf9n\x9fn\xe5\x88\xaa\\Mv\x99fIq\xa7\x1d\x11w{Q\"\xd4J*\xf9\xe5\xdd\xb8+\xf1y/V\x15\xa4\x95T\xbe\x0f\xa5\x9a\xa7:\x87\xf2\xac\x12\x9f\xd5R\xbd\xc8\xee\x16\xf0C~+nDq\xa2\xeeZ\x1f\xde\xffX\xea\xe3k\x84O\xa2\x90\xec7\xe6\xbf\xd5\xb5\xd8 \xf8x]U\xfb\x8f'\xfa\xff\xcb\x8f'\x90\x17\x90\xe5\xf5\xaf'\x8a{VI\x06\xb9\xda\x15j\xc6\xa5\xa8\xe0\xb0\x1f\xe1K\xd4\\\x91~Dq#\n=\xe5]\xb2/5+\xa8\x11Wy\x93WD\x9d\xef\xa9\xbe\x94$%l\xf2\xed6\xbf-\x9f#k\xf1\xcfR\x946#\x94\xcb\xb7/\xf2\x9bt-\xd6\xcd$\xd4\x99^\x96\x87\x9dX/0\x04/2\xf8\xe1\xe2\xe2\x0c\xbe\x7fs\x01yfX_o\xa8;\xa5\x14$\xf0\x97!;^\xdc\xed\xc5_\xff\xf2\xd7\x11:0y^2\xb3\xee\xfa\xe0S\x94\xdc\x17\xf9\xfa\xb0\x12\xca\x19\\\x14y1\xbe\xfd\xfe3\xbc\xd8\xef\xb7\xe9*\xa9\xe7^\x08\xc97\xf9m]j7Y\xc9\xbd\x9a\xe7\x9f\x0e\xfb&\x99\xca2)\xc5\xba\x1e82\x9c\x0f\xef\x7fT}_'7j\xe9w\x1d\x1e]k&M\xccP\xe5\x7f\xdf\xe4\xa9\xd4\x9b\xb0\xeb\xb2\xeeXm\xbfBl\xf2B\x9c\x98\x86\x12_R\xa5\xcbt+\xef\x89\x99\x10k\x93\xa0F\x89\x88\xe2F`\xd1\x9byV\x1f\x7f\xeac\xb57\x16\xf0\xe8C)\xe0F\x14e\x9agr\xd6\x92=T6\x16\xc5\x1fI\x96\\a\xb3\\\x16\"\xf9$\xf7p\x8dp\xf1x\xbc\xd2o\xf3J<\x87J\xca\xcc\xcd![i\x0e\x96\xe3\xad\xf7\xfcJ\x9f\xb6\xdb\xbbn\xe6\x1f\x9c\xac\xb9Jw4N\xf8S\xcb\xea\xe5a\x03\x85\x90\x12X\x9c\xd4\xb5\xa1M'\xca\xb7/7i\xcb\xf7Kq\x95f\x19ff\x91j-\"\\\xef\xf6b\xa1\xf91\xd9\xa7\xe5b\x95\xef0)u\xaevD\xa9\x93\x0c\xc9\x0d\x97\x0dw7<\x92\xe3\xb86Y\x9a\xf4\x16z\x0c\xbb\x91cX\xc2\x12\xd9\xccj2J\xf7n\xd4d\xad{\x97{\xb1J7\xe9\nJ\xb1K\xb2*]\x95}VW{\x84q\x14[.r@8\xa5\x7f\x92\xdbx)L8J\xe7\xa0\x1d\x9d\xab\xf5\xe1\x94,\xf3\x1b\xe4\x80\xd6S\xaaY\xb2\xaf\xbc\xdbG\xf0\xf1Ev\xf7\xb1\xe3\x8c\xce )\x96iU\xc8M\xe3\x18\x89\x91\x83\xc96\x1f\xd0B\xdft\xfaK!\xa5\x95\x12\xa8z$\xcb\xb1\xba\xd1\xed\xcbh\x0f\x03\x9693\x8c\xbbM\x97jx\xb5\x1c-\xa1<\xec\xf7y\xa1N\xa0}\xb2\xfa\xf4\xe4\x90\xc9\xff\x93\xe7\x8e^\xc7\x12\xdb%\xe3\x037\xdf\xc0\xa1\xd2\x02\xc2l\xbfR\n\xa6d\xbdN\xf5^\x84+\x91\x89Be\x8b\xd2W\xaa\xd2\x0c\xff\xc5@\x1e\xe9%\xe8\xe3\x7f\xf39\x91L\x08O\x9f\xc3\x99\x1c\x9f\xdcw\xf5P\x93\x86\xa0i\x06\xaf~\xfb[\xe4\x18\xf8.\xcfa\x93\xe7\xf0-,\x16\x8bqr*9\xd9$\xbb\x1b\xff\x90dw\x0b\xd9\xddwE\xbe{\xb4\xc9\xf3\xc7\xe3O\x16\x8b\xb1\x9cO7\xf0H6\xfd\xa0\x06x\x91?\xfa'\xd9\xf61\x9aC\x0bk\xffw|\xee\xcf&\x84\xa2\xc4\xf3o\xe1\x9f\xf6\xcb\xc5wy\xfe\x7f\x17\x8b\xc5\x98/\xe4\xa0N\xa4\xc2%\xbfL\xb2\xbb\xfdr\xf1V\xdcZ\xc6\x97n\xd4\x97\xff\xe3[\xc8\xd2-\x9e\xd2\x0e#\x12\xc2\x8e\xf8w\x83\x01#\xcd\xea\x11\xe8\xb1.>d\xbb\xa4(\xaf\x93\xedE\xae7]\xe8\xf0z\x7f\x93\x17(Ea#g\x8d\xd2\x0c\xcb\xbbV\x851'\x81N\xe6x'\xb5r\xc9\xea\xf2\xd8\xef\xa3{\x88\xa8$O\xe4\xfdo\xa1~\x90\xea\xdbC\xa9\xc77\xa7\x92<\xb1\xe4:\xcb?\xe8\xb5\xee#l\xc4\x7f\xb6\xbd3w\x96\xd1\x85\xb2Q\x0dk3he\xee\xb1\x0f\x9f<\xec\xa3\xab/M\xa6k}K\x125\xdf=\xd8\xe4\xf9b\x99\x14j\xd0\x9f\x9f\xdc-\xfe\xf6@\xcfX\xeb\xfe\xe3k\x8c\xea\xf2\x81\xfcnx\x04\xfd\xdb\xf9\xbb\xb7\xbf\x19SZ\xfe\xb9\xbd-k\x0d)\x97\xbb\xaaV\x0f\xf4\x8d\xe1P\xd6\xe7v!\xae\x0e\xdbd\xf0\x1eh\xdc\\~\xba\x16\xed\xc1~\xd2&\x83\xacw\xcdI\xad-\x0c\xee\xd8\x9d\x03W\xdbP\xf3\x7f\xf0\x1c\x1e`|\xdc\x9f\xd6B\x8f\xfe\xc1 \x86G\x8d\xfbm\xb2\x93\xb8\xfe\x97\x1e\xe2\xbf\xa0\x1f\xcaq\x0f\xbe\xf3\x0d\xfetS\xab\xea\xfd5\xd6+\x94\x96p+\xb6\xdb\xaf>e\xf9\xad\xb6|_'%$& \xa2\xe6\xcb.\xb6>;\x9dh\xf5q\xc0cm\x0e\xd7\xbaK\xc98\xd9\x15$\x9am\xfa\x08?*&6/\x92Cu-I\xf9*\xcfnDQ\xbd\xd0Ax\xec\x05\x1c\x05\xef!K\x98\xdf\xa8\x8e\xd4){\xd6\x89\xa0!\xa0_\x8b}^\xa6\xd5\xa5:\xde<\xb3\xc4\xe4\xe3wy\x01o\xbe\xffN\x07\xee\x88J\x14\xe5 \xdcJ=\xa2\xf6\x1d\xca\xad\x99oL7R\x1c5~\xf0*\x07\x91U\xbdw^\xad\xec\xb9\xc9\xab4\xbb\xba\xdc\x8b\"\xcd}\x9c\xd5\x13\x85\xe6\xa46\xda\xb1F\x04\x1a\x9194~>\xe4\xc5\xc1\xbe-\x10\xb4= \xfbS\x9a\xa5\xbb\xc3n0G}:\x94U\xf2I(\xeb\xb7\x9e\xe2M^ \x1d\xfcV\x0b5-\x8f;\xd8VyV\xa6k!I\xa2\xac\x93\x8b\xde\xaa\xd6\xd9\x8e\xdb\xa5es\xd0\x84\x98*\x0bw\x80\xeb\x80\xb5\x9d\xa2\x938e\x80K\xf1\xcd\xe0\xa4\xb2p\x0c\xb8\xc6\xca\xe7\x1c@\xb8\x87\xde\xc5\x88(S9i\x80nl\x9f\xc7\x98\xcb6(+\xab\x19M\xb0Q\x19\xd4}cS;\x0eT\xb3'\xddv5\xbe\xf7g\xaf\xccp\xf4]\x1e\xe1\xec\xf3\xdb\xb4Z]\xff\x02\x9c\x9d\x96*\x00\xa4\xf5\x83\x1d!^\xcbt\xb2+\xaf.\xe5'\xb3v\x81\x8b'E\xd47\xdf\x7f\xc7_\xc0\xa6\x91Z7\x8d\x0d[\xb6\xee\x8a\x91W\xcaIn\x8c\x0e\xbe\xc2\n\xe0&o\x08\xcaU^\xee\xf2\xd2\x9c\xdbKQ%O\x17\xf5\xa9\xfd\xf2\xae\x12\xe5E~\xae>e\xb3i}\x84_\xea\x9e\x1c\xa7\x0e\xbe-]c\xb0/l\xddJ\x7f\x0e\xc5~5XR\xb33\xcf\xd3l%\x9e\xd7\x93\xff\xaa\\\x7f\x82\xaf\x17\xbf\xfb\x83\x9b\x1c\x1a\xe9E\xae\x86\x14L\x0ey-\xb5\xeb5\x1aFWX'\x89\xd0qyI\xa4\xbe\x9e\x8bB/\x93R\xbcX\xad\xdahG:A\x9c\xa4\xd8\x1f\x96\xfd\x9b?C\xd6Uh\xd8S\xe0\x895c\xc0\x93=\xdci\xbe`\xa7\xd9B\x9d\xac\x81N\x98U\x9a\x18\xe64W\x90\x93;\xc4)(\xc0i\xde\xf0&kp\xd3\xbc\xa1M\x96\xc0\xa6\x89aM#rWHP\xd3\xbc!M\x13\x03\x9af\x0eg\x9a\x10\xcc4w(\xd3l\x81L\xf3\x861\xcd\x16\xc4\xe4\x0fa\x9a-\x80\xc9\x16\xbe4%x \x0dV\xaa(\xa1J\xd3\x02\x95\x90\x8bO`X\x12\x12\x94d=(i\xf6\xf5\xf1\x9d/,\x18\xa9\x0d>\xc2\xe8\xfb\x1b\x7f\xdf3\x87!\x8d\x83\x90f\x08A\x9a5\x00ix\x18N\x0c>\xaa \xdd\xc58%\xdc\xc8\x19oc 5\xf2\x06\x1a\x8d\xfd\xfe\xf4 \xa3q\xdb\xbfcs\x0d\n/\xa2L\xd6\x17Zd\x9f\x9b7\xac\x88\x11T4\x0c\xc6\xb0\x05\x14M\x0f'\n\x0f&B\xd7%0\x90\xc8\x19Fd\x0f\"r\x85\x10\xa1\xc4\xa2\x86\x0f\xf9\x82\x87\x06\xa1C\x13\x02\x87\x08aC\xf4\xa0!o\xc8\x10\x12\x913\xea\x0e\xf9\xc6\x17*4-P\x08\x1dT\xe7/\xb3\x86\x08\xcd\x1c 4kx\xd0\x9c\xc1A\xb6\xd0\xa0Q`\xd0\xdb=\xa0c\x9e\xec\xbc\x9f\x96Wn3X\xad\xe5\xc2i5\xce\x9e\x97\x89\x95\\\x89\xc2\xdc\xa6\xd5Z\x95\x86\xeer\xa5\x96I\x99\xae\x1aL\xbd\xfb\xe9B\xa9y5Ct\xfb2\xa6-\xf1\xb9\x12M:Py\xbf5\x88+c\xaf\xed\n\xa8\xde\xd5WY\xb8\xe0F\x94U\x9a]=^\xd8L\xb3bu\xfd\xcd\xb3\xb3Bl\xd2\xcfl\xa3\xf5R5\xbe\xdc\xab\xd6T\x13~\xe3\x95\xc1\xba\xb6\xdb\xa5\xbb_C\xb1_\xb5\x16i\x8d\x8de\x90f:jv\xc9\xe7\xcb\x9d\xd8\xe5\x97\x8d\xc1\x94j\xa2\xef\xc7u|\xbe,\xd3\xab\xf0\xa8\x0b\xd5\xfeo\xe2r\x95\x97\xd5\xe5^\x14\xcaY\x10\x82H\x8e\xe2F\x14\xe9\xe6N\xe3\x12\xebg\xbf\xff\xfd\xd3\xff9\x07\xaaR\xac\xf6\xcf~\xff\x87OO\xf9\xc8z\\R{\xdd\xccv\xac\x94\xcee|\xe4\x8d\x93N.*\xec\xf2\xf5a+l\x0c\xae\xfcx\xf5\xeen|\x1b\xa7\xaf\xd9\xbcn\xc4\x96\xdf/\xd1\x9b\xc7C\x9c/\x17\xcf\xf4[\xf8a\\\x80g\xb4\xd6\xedQ7\x1f\xb7\xecl\x15\x02\x81N\xb3M\xce\xa6L\xdaDD\x8df/\x7f2c6\xe2M\xfd\xadN!Q\xb6\xc7\xabV\x9f;\xa2x1\xa00\xc9\xab\xc3I\xf3>\xf2\x1e\x81\xad/p<\x9f\xb7y\x92\xc0e$\x03\xaf=\x0c\xe6\xf5*\x81\xe7!\xfd\x9c\xde%\x98\xd3\xc3\x04\xee\xe7\xf4\x93\xc7'z\xb9`\xb2\xa7\x0bA\x88=\xca\x0f\xf6\x7f\x81\xeda\xbe\xe7\x88w<\xce\xa7\x9c\xff\x81>1L\xecY\x9f\xe8\xfb\xc61\xcd?6@\xa6\xbce\xe8C\xfdY\xfcd0\xb7\xaf\x0c\x10\x7f\x19L\xf7\x99\x0d\xb0U\xc8\x93\xfdi^4\xf09\x97\xc0\xf5p\x9f\xe0Q\x03\xdbkZ\x86g\xcd\x8ecd\x93\x9c\xe4e\x03\x061|\xde6\xf0\xce\xdb\xebu\x03\x9e\xe7\x0d\xf0\x17\xd4\x8e'\xfdsx\xe1`\x92'\x0e\\k\x18\xe8\x91\x03\x9fW\x0e<\xcf\xfb}\x0f\xfc\x1d\x0bK\xf5\xd2\x01\xc1S\x07\xd8C\xffI\x1e;\xa0y\xed\x80\xe5\xb9\x03\x8a\xf7\x0e\xacDCY\xd6\xf6\xad\xcf\x9b\x07\x93=z\xe0\x1a\xe8\xe0\xaf\xb3z\xf7`\xa2\x87o\x80\nK\x080\xb3\xcf\x0ff\xf6\xfb\x813-\x00\x9a\x18`.\x1f \xcc\xe9\x07\x84\xd9}\x81@\xf6\x07\x02\xc5'\x08t\xbf \x10}\x83\x80'\n\xc0\x9f\x8e\xd3=I\xbed\x01d_!\xd0\xfc\x85\x80McN\xbf!L\xf5\x1d\x0ep!I\x04\xe6\xf4&\xc2\xac\x1eE\x98\xcc\x0f^\xcf\"\x10\xbc\x8b08tl^F\xa0\xc4.\x8e\xf3x\x8f<\x8e\\<\x8e\x87I\x88\xed\xdd\xd8\xcc\xf5#\xa4\xce\x07}\xcb\xbf\xdb\xf9\xf5G\x82\xc1\x9fm\xecO\xba\xcf8\xd06x;\xb0\x1a\xca\xadT\x8cO.\xe2\x93\x8bp\xc3\xb76\xd8\x8dh\x14\x9f\\p\x0c\xdc\x13\x8d\xdb3\x1b\xb6'\x18\xb5'\x18\xb4Q\xeb\xeal\xa6\xeby\xcd\xd6\xb3\x99\xac\xfd\xe6\xea\xd9L\xd5\xf1\xc9E|r\xc10)\xc7'\x17\x88\xc1x\x8a\xb1\x98\xf2\n!>\xb9\xe8@|ra >\xb9h`\x82\x01\x97`\xbc\xa5\x1bn\xbdF\xdb\xf8\xe4b\x8aA6>\xb9\x88O.\xe2\x93\x8b\xf9L\xa7\x93\xcc\xa6\xf1\xc9\x05\xe9\xc9\x85#\xaf\xd5\xc0\nH\xc9\x88d\x1eJ`\xf9\x90|\xd6\xc6\x80\xb48u\xc3\xa1\xbd\x91\x94\xc4(\x96\xc0b\x99(g4R\xc6\x12X3\x19,c \xacp\xe3\xe5d\xf3\xe5\xec\x06\xccI&\xcc\xf9\x8d\x983\x9a1\xe76d\xceh\xca\xa4\x183g4g\xc6\x12X5\x04\x1a>c \xacPCh,\x81\xa5\xa1\x8a%\xb0\xd0\xb9\x07\x19L\xa9\x93\xf7\x19Mc \xacX\x02\xcbgR\x8d%\xb0\xbc\x91\xb0\xd3\xcc\xac\xb1\x04V,\x81\xe5\x89r\x9d\xd7\xf8J5\xbf\x12\x0c\xb0d\x13,\xcd\x08\x8bF\xb6N)\x89\xe4\x8bj%\x1acI\xe6\xd8\xd1\xe0\xe74\xc9\xcen\x94\x9d\xd3,;\xa7av\xdaz{\x8d\xb3~\xf3l\xf7`\xa8\x13A\x18{\xa7\xba\xdc\xab%\xfd\x9c\xaa\x04.\xcd/u\x0b\xachV\xef\xae\xd1~0H\xa2\xd1\xfc\xb9\x16|\xc6\xd8\xdb\x1e\x0c\xa8\xf54\x16\xdf\xaa!\x16\xdfB\x8ao\xf9}\x0c\x84\xd4\xf3#'\x03Vu\xc1\x8c\x13\x0dy\xfe\xc6\xe5\x84\xf8I\xe5\x89\xa9Q\xbf\xbc\x93\"6\xd4\x1f\x11\xc3\x9f\x99\xbe\x85\xd9<\x0b1\xfcy\x827!\x86?\xf3<\x08\x13\xfd\x073{\x0f&\xf8\x0e\xe6\xf6\x1c\xcc\xe67\x98\xd7k0\x9b\xcf\xc0\xef1\x98\xcd_\x10\xc3\x9fc\xf8\xf3\x14\xab\x7f\x0c\x7f\x9ef\xdd\xa7D\x04\xc7\xf0\xe7\x0e\xc4\xf0g\x031\xfc\xb9\x81 vz\x82\x95\x9en\xa3\xf7Z\xe8c\xf8\xf3\xcc\xf6\xf8Y\xad\xf1s\xda\xe2c\xf83\x90\xed\xef^\xeb;\xd1\xf6N\xb1\xbc\xc7\xf0\xe7\x16\xd7\xcc\x96\xf6\xf9\xec\xec\xf3Y\xd9\xc3W\xd7ka\xf7\xd9\xd7\xbd\xe1\xcf\x0e\x8b\xa0\xd3J\xd9\xc5\xf1\x04A\x02\xef\xcf^Q\xc2\xa2{Mcpt\x88\xf12\x06Gw`.C\xa6\xcf\x94\x19h\xcc\x9c\xdb\x9c\x19\x83\xa3\xc3M\x9b\x93\x8d\x9b\xb3\x9b7'\x198\xe77q\xceh\xe4\x9c\xdb\xcc9\xa3\xa1\x93b\xea\x9c\xd1\xd8\x19\x83\xa3k\x084\x8b\xc6\xe0\xe8P3i\x0c\x8e\xd6P\xc5\xe0ht\xeeA\xe6T\xea\xe4}&\xd5\x18\x1c\x1d\x83\xa3}\x06\xd7\x18\x1c\x1d\x83\xa3\xbd\xc6\xd8\x99\xcd\xb1\xf3\x1adcp4\x0c\x80f\x9c%\x98g\xc9\x06Z\x9a\x896\x06G\xc7\xe0\xe8I\xeb\xed5\xdd\xfa\x8d\xb7\\\xf3--\xbe\xb4\xdb\xbco\xb9-{F[C\x0eVUI\x85U\x17.d\xdbr\xf7\x9d\x8a\x94\xa3i\xef\x9d\xc5\x10k\x89\xd6\x96A\xd4\x80\x9ayq#\xaf\xb3\xbe%PboF\xb1\xcbx\xad\xcb \xb8\xecu/\xc3\x90zk`\xce\x83\x16\xa9\x87\xc9E\xdcc\x05\x84\xc7(\x01\xd5u9M\xab_\xe2o\x0d\x13\x7f_$&\xbe\x99\xc0\xb6\xb2m^\xa4\x7f\x1b\xbcD`\xf0^\x15\xa3\xa2\xa7\xbb\x14bT\xf4\x047B\x8c\x8a\xe6\xb9\x0e&:\x0efv\x1bLp\x1a\xcc\xed2\x98\xcda0\xaf\xbb`6g\x81\xdfU0\x9b\xa3 FE\xc7\xa8\xe8)\xe6\xfe\x18\x15=\xcd\xacO \x14\x8eQ\xd1\x1d\x88Q\xd1\x06bTt\x03\x13\x0c\xf4\x04\xf3<\xdd8\xef5\xcd\xc7\xa8\xe8\x99\x0d\xf1\xb3\x9a\xe1\xe74\xc2\xc7\xa8h \x1b\xde\xbdfw\xa2\xd1\x9dbr\x8fQ\xd1-\xae\x99M\xec\xf3\x19\xd8\xe73\xaf\x87\xaf\xae\xd7\xb4\xee3\xac\x1b)->\xef\xd3\x02\xb5\xdb\x0dn\x13\xe6&\xb1N*\xf1U\x95\xeeZ-\x16KO!?\x80\xdbk\xa1e\xd6U\x91duF\x0d\xd5\x9fP\xabo\x16o_\x1c2\xb1^({\xc2a\xbb\x95+-\x86z\xb2\xc2\xd0%\xdf:\x17e\xf6\xb0\xd2\xb7\xecD\xf7\xd7\xce\x05\x1e\xe9K\xda*\xcf\xd6\xb5-C.\xee\xc7\x9e\xa1\xb2\xb7\xa8\xbb\xe4\x0e\x92\xfd~\xab\xee\xe4i\xa6\xae=I%\xda\xe1\xeb\xe3\x14\xcfP\xa2\xac\xa5p\x95\xde\x88\x12\xf6\xa2\xd8\xa5e\xa9\xfa\xacr\x10\x9f\xc5\xea\xd0\xdc\xbd\x94\xcd^\x9fO\xf5\xe1\xa0\xa5\\g\xe4r&n\xb3\xec\x8b\xb1\xb5\x95`\xa3U\x93\xe8\xd6@DVY\x7f#\x9c\xdfD[o\xb4\xf5F[o\xb4\xf5F[o\xb4\xf5F[o\xb4\xf5F[o\xb4\xf5F[\xaf\x82h\xeb\x8d\xb6\xdeh\xeb\x8d\xb6\xdeh\xeb\x8d\xb6\xdeh\xeb\x8d\xb6\xde\x1e\x84\xaf\xee\x97b\xeb\x1d\xday\xc7\xc6H\x10\x9f+\x91\xad\xe5B\x1b\x93ou\x0d\xcb\xbc\xba\xd6\xf7\x86\xf5\xba\x10\xa5\x94\x1d\xb5T\xa8\xed\x8d5>\xc9%\xb5\x95\xb29SO\xd5=O]\x9e\xd2L\xa9\xc3eZj\xa2\xa8\xefU:g\xfdo\x9b\xcdT\x85\xbe~\xaf{R\xff\xc7\x0f\xcbV\xa3:r\x82\x8d\x91}\xb6\x8b\x05\xb9\xed\x8dl\xb5\x9e\xef-v\xdbn\xab\xd1X\xc11^\xb0Zr\xdb\xdf,\xaf\x91\xc1{'\xd50\xa3mW\x83+I\x08\xccj\xe7\xd50\x9b\xb5W\x83#a\x08L\xb3\xfcj\x98\xcb\xfe\xab\xc1\x97<\x04Bm\xc1\x1a\x82-\xc28\xed\xee\xf6\x8a\x87\xac\x89D`\x8au\x18\xc5\xa6\x0f'kB\x11\x98h)F\x11\x1e\xf6\xd6\xc4\"\x10h5F\x119\x12\x8e\xc0t{\xb2AB\xb0*\xa3-\xc9\x96f\x0d\x13\xec\xcd\x1a&X\x9dm\x1b\xdd2\xd4\xd9\xec\xd1\x1a\xe6\xb5Jk\x98\xcd6\xad\xc1o\xa1\xd60\x9b\x9dZ\x83=\x81 L\xb4Y\xe3\xb2\x02Md\x02Tk\xb6\x86P\x9b6\x8a\xccf\xe7\xd6\x10h\xed\xd6\x80&7\x01\xbfJ\xe1Hr\x02D\x8d#\xd0\x16\x8e\x0bSk\xc2\x13 \x8cf\x9au|\x84NY\xcb\xd1\xe4'0\x8f\xa5\\\xc34{\xf9\x08\x9d\xd2hP\xe5a\xa2\xed|\xdc\x13\x92\x10\x05&Z\xd45xr\x83\x80+9\nPl\xec\x1a\xd0\xac\x05,{\xbb\x06\x1b\x1e\xe4)\xf8$\x0b\xbc\x06:q|\xd6x\x0d>*x-\xf3\x1a\x18\xf6y\x0dH\x1a\ngB\x15\x98\xc5b\xaf!\xdcn\xaf\xc1\xb1\xb2\x816|\x0d\x9e$+\xe0I\xb4\x02\xded+\xe0^p\xaa\x85_\x83\xcf\xce\xafa\x94|\x05\xa6\xd9\xfc5\x10,\xff\x1a\xe8\xf6\x7f\x0d^/\x80\x06\x1b\x11-lm\xff\xde\xe7\x1d\xd00\xcdG\xa0\xc11\xe4\xd1\xdf'y\x0dF\xd8F\xc9[`\xa2/a\xdc\x03\x92\xd0\x05\xa6z\x18\xc6C\x1e&y\x81\x99\xfd\x0e\x1a\xec\xc9^\x00O\xf8\x02\xb3y\"4\xcc\xe6\x8f\xd00\xafWB\x03\xcd7\xa1\xc1\xeb\xa1\xd0@\xf4S\xf4>\xf6$\x83\x01|w\x81%I\x080,\xdc\xbe\xc40@\xf7b\xd4\x1f\xfb}\x19\x1a\x90 \xcd\xe9\xd7\xd00\xc9\xbb1\xc2\x86$\x8f\x81Y}\x1e\x9dnf\xf1|h\x98\xca#^/H\x8d\xce\x9bP\x06F\x07\x1b\xe6\x17\xd1\xe0\xb8q\xda\xe3\xe1m\x05\x1b'\xfbKz\xd8j\xfb?\xea5\xd1\xc0\xf3\x9dh\xe8]K\xb5\xdbCY\xe2`\x9b\x96\xca\xc0Y\xffM\xf7\xb86\\T\x0f\xc6\x9c\xc9!eI\x93\xac\xfbW\x93\xb7$\x96%\x8deI\x8fY\x96\x14\xf5\x0b\xd2sG\xf5\x9aS\xf2\xeat:-\xa232:#\xa332:#GPEgdtF\xa2\x1fGgdtF\x8e!:#\xa33\x12\xa23r\x88(:#G@\xf7\xb7Eg$\xf6ItFFgdtFj\x88\xceH\x03\xd1\x19\x19\x9d\x91\xd1\x19\x19\x9d\x91\xb6\x8f\xa332:#\xa33\xf2\xf8\xce\xc8\xa5\xf6\xa05\x03\xd0X\xa232:#\x7fM\xce\xc8b\x9a3\xb2\x08qF~\x99^\xc8\xe8%\x8c^\xc2\xe8%\x8c^\xc2\xe8%\x8c^\xc2\xe8%\x8c^\xc2\xe8%D z \xa3\x97\xb0\x07\xd1KXC\xf4\x12F/a\xf4\x12F/!D/a\xf4\x12F/a\xf4\x12va\xaa\x07(z \xa3\x97\xd0\xc7#\xbf&/!8|(\xd3\xca\xf9\x8c\x91\xf5\xf0\x8cI\x1fR\xdag\xcc[\xf6R?\x1a\x88\x05\x7f4\xb8\x9cn\xe4\xe2?\x1a*z \xa4\xef\xde\xac\xdc\xdeP\xc9\xfd\xc6/\xbb\xbc\x8b^\xd1\xe8\x15\xed\xfc\xfd\xd7\xe6\x15\xa5\xb9CkG\xe8\x8b\xfe&y\x7f\xf6\xaa\xc67\xf2\x87.\x93\xecS\xe3\x0e}-\xb2|\xf7\xee63\xef\x1eGl\xa4\x85\xbeU]\xe5W\xb9:\xb3\x17c\x86l&\xd4\xb2H3\xa5\xb2*\x0e+\x89\xaeU\x8f\x94\x12\x94A\xb2R\xdb\xa3\xb3\xaayQk9FE\xc2\x16Y\x89\xa3O\"S\xb2\xa4\xa7\x9c\x1b\x84\x86]\x14\xc5\xf4\xdf\xfa\\\xd1^\x19\x868\x0dY\xcfS\xc9<\xf56\xf8\xaa\\\x7f\x82\xaf\x17\xbf\xfb\x83kc|\xc8\xd2\x8a\xbc/\x06\x1c\xe6g\x19\xd5\xa0\xa5\xa0\x9eo\xad\xe4w\x1d\xc2\xf2\x98\xcd\xea\xaf\x0fYZ)w,\x1c\x92*\xdf=6[C|\xde\xe7\x99\xe8\xb2\xad\xee?\xcd*q%\x8a\xe6\xafFn\xf6\xc5\xa6\xdd\xcam\xf0v\x87\xb9\xcfo\xb5\xe0|\xfau\xfb\xbb^\xf0Lh\xb7x\x07C\x91\xa4\xf5\x1dx\x99\x94\xe2ROC\xa9\x1f\x90\x17ky\xf5\xcdA\xc8\x8bqg\xae\x0d\xf1\x1f\x96z\xde]\x84OkR|\x0bO\xbf\xfe\xff\x9a\xfe[\xe4\xddo\x95\xe3\xda\xec\xbcN\xff\xf9F\xd3\xaf\xf5\xca\xae\n!5\xa1\xa4\xed[~\xf4P~\xf4\xb0\x83p\xe8\xe1i\xfa\xff\x16\xfe o\x0c\x87\xf29<\x05\xd9J\x8f\xef\x0f\x83uJ\xb6iR\x8a\xb0\x18\x92\x01/\xd5\xe7\\\x8d\xb1\xaf\x16\xd5\\d~3GE\x87\x93|\x1b^Q\xa0\xb3\xe8I\xbd\xe9\x87\x0e\x88D#\xed\xee\x01#\xdc\x0e5\x11\xeb\xb5OWf?\xe2;\xee'Q%\xeb\xa4J\x18\x1b\xae\x1d\xbdk\xdb\xa9A]\xca\xd1\x84\xd1\x9d\x1c\xbb\x83\x9c1\xce\xbb\x89\xcf\xb94I@\x8c\xb0\xf5\x19Q\xc3Xlh\xc0\x85\x87\x06\\\x84h\xf0\xcdh\xba8\xd10Q\xa8\xe0\x94\x1ew\xc3\x115\x1a&\n\x9c\x11>-\x80,\x8ee\xae\xf0\xd10\x12A\x1a\xb0\x0d\xa1a\xb4-\xba\x0dP\xc6\x9eA4ip]q&\x88)\x83\x9c&\xaczs\xea\x08\x93\xe1\xce43\xec\x9e^rzu\xdf\xb0\xca\x9b;\xbb\xe4\x0c\x8e\xaa\xd0\xdbJ\xb2\xf1\xb0o\xf57\xcdj\x8f\xda\xa0/\xf9KK&s\xe5V<\xd3\xc1\xf7-|\xdd\xb0\xc8:-\xf7\xdb\xe4\x8e3\xb6\xde\xb2\xd4\xed!\xcd\xd6\xe9*\xa9j]\xbf<\\]\x89Rjd\xf5N\x95\x8b\xd3\x0cs\xdc\\\x07L\xaf\xb6\xf2\x82\xd9\\\x11\xa5\xc4\xe3\x8c\xeb!\xaa\xef}\xf3p\xb8\xa2\x0f\x95(\xed^Mz\xd1xJw\x7f$\xae\x9e\xc3+\x85\x08^\xc8-e\xb0\x94w\xbbe\xbe\xe5\x0c\xab\xb7\x94\xba\xb9\xb9\xdf\xe9\xbe\xea\xbf\x99(\xb9\xf2:\xbf\xcd@\x85\xaa\x9b\x80\x1c5\x9a\x17\x17\xef~z\xacC\x1e;\x08W}cx\xcd\x03\xa5r4\xe8Nj\x12\xf7\xcd\xfc8\xa9\xea\x0f\x0eE\x1a<\xc1\x0f\xefOU\x04\x13\xac\xf3\xd5A\x05R>\xca\xa5\x8c\x86|\xb3\xf9ju\x9d\xa4\xd9c\xcd\x0dm\x08Ec\xb9\xef\xa0I3}\xea\xc8\xcb \xbc\xab\x03\xe8\x08S\xf8C;\x85\xcb\xeb\xa4\xbc\x9e2\x8f\x1f\x92\xf2Z\x8b\xb2\xf2:y\xf6\xfb?\x80D\xa8|\x1d\xed\xe4\xf6yj\xa2\xf2?\xbc?\x95\xb7\x99\x87\xf5\x03\x80\x9ei\xe5F\x14\xe9\xe6NM\xbc;\x05\xb5<\x06\xd5:]g\x0f\xab:^*`\xd2\xf8\x1e5J\x16Af\xd6-\x12\x8a\xeev\x96\x14\x899#\x08\x9a[)\xb2\xf5\xa5\xc8\x92\xe5V\xac\xbf$\x95l4\xa4\xee\xf7\xcb<\xdf\x8a\xa4{\x84\xb8\xb4\x9ds\x91\xad\xdfht:Fs\xa5m\x02\xb5\xa2\x92\xf4h\x00e\x95T\x87\x12\x1e\xdd^\x0be\xe8M\xc6\x93\x80\xb4\xeck\x00\x12\x81l\xfd\xd8b6\xed\x0d\xe8\xb5\\n)\x90\xd7\xcf\xe1C\xa9\xa4[w\x84i&\xaf\xe5\xc9N\x9d\xd5\xeb\xe6\xdb\x9eE\xe2\xbb\xbc0oXN\x1a\xbff&n\xb7wr\xcf\xcaItgT\x9b+j\xa3\xb7n\xd6A\xa6\x17\xb0\x87\xff\xbc\xca\x0b\xe5\xd4\xd3\xe1\x8c:\x18o\x97d\xe9\xfe\xb0\xed8\x05\xd3\xb2+\x0dt\xa8\xde\xed8\x06\xf0\x93\x10{\xf5 \xa7\xf3\xb7\x17*\xb6\xa8\xbfY\xfex\xa2q*o\xad\xf8\x9c\x96\x95>\xb4\x97\xc9\xea\xd3mR\xac\xcbA\x0ceOG\xab\xe7\x05\x9bt+\x9as\xaa\xf6H_\xba\x98\xbc\xcbK\xbdE\xd3\x1b\xa9w\x1a\xa9\x85\x11\x95(ZeI\xee=\xd8\xe5\xeb\xc3V\xd8v\xa4\xb2\n\xbe\xd8n_j\xeb\x08\xff\xb1CmV\xf9\xa2\xaeL\x98i\xce\xfa\xb9Kw\x9c\xc1@7\xb7\x89\x8ej\xa4\x1bM\xcd,\x94\xd1\"\x9a\x7f\xcb\xa3i\xabo@R\xf8\x94S\xdc \x9a\x11\x9b?\xd7\xfb:\xbaA\xa2\x1b\xe4\x98n\x10D~\x91|!m\xb3\x1a\xdb\xfb\xb3Wf\x90n\x7f\x88BP7\x0e\x15\x99C\x89I\xda\x0d\x88 \xb4\xacz\xf4O \x9c2X2\n\x97\xd4M\xc8\xae2\xd5J\xdd\xa6\x8d\x12\xfd\xf2N\xfd\xed\\\x91\x9d\xcd-\xbb\x9e\xbd\x13m\x847\x1c\x92\xc2\xcf \x16\x1b(X\x0eu\xb0\x19},\x87;x\xde\x1f\xa2\x87<\xb8\xe4\x9ai\xe7\xb6&\x02\x84\xdbHQd\x88c\xa5\x05\x9b\xad\x14\x9a\x89\xe0\xf6R\xf0\xd8L\x818\xd3\xb9l\xa7\x10f?E\xf18\x1d5-\xf0\xed\xa80\xd1\x96\x8a\"l\x1c:\x8e\x87:a6U\xb0\xdbU\xc1\xb1\xc94X\xec\xab\xe0\xdf \xb3\xd9Y\xc1\xabG\xcd`o\x05\xe0\xda\\\x01f\xb6\xbb\xc2\xc8\xf6\n.*\xbb\xb7\xe5\x14;\xec\x00U\x87\xeb\xbe\xee\xb1\xd6\xc8\x1e\x0b\xe4\xf1\x8e\x96p\xa2m\xb6\x83\x02\xb5\xcf\xc2\xc8F\x0b\xe4\xb1zm\xb5\x00\xf3\xd8k\x01\xb1\xd9\x02y\x98#\x16\x98l\xbf\x1d\xe0S\x0f\xd8W\xe3\x80f\xaa\x1d\x17|\xb6\\\x18\xdas!|\xf23\xd9v\x81f\xdf\x05\x9f\x8d\x17P;/L\x9a\xdf$\x9b\xef\x00]\x95\xdb\xec\xbe\x00!\xb6_\xf0\x13\xc4.\x0f\xf8v`\xc0l\xc1N\x9d\xdc\xaf+\xd3\xf3|\xf4p!\xd798U)&V\xc9V+\x0c\xe3\x014}.\x0f\xf2\x04[ \x15\xbc\xaae^\xf3<^_\xf4\xeb\xa33\xcd\xd4eD^v\xc9W\x82x\x0b\x88\xb7\x80x\x0b\x88\xb7\x80x\x0b\x88\xb7\x80x\x0bh\x806\xd6x\x0b\xd0\x10o\x01\xf1\x16\xf0\x8fy\x0b\x98_\xf1\xf7j\xe6\xea\xe5\x02\xdf\xfd\xadO\x9a\\5\x1e\xea\xe6\xf3\xba\xc0G\xefi\xbaX\xd0C\xbfG\xed\x99\xde\xd6h\x18y\xb0\xbac\xb9'\x8d\x1fw\xf2{\x9a\xf9T\xe7`\x8f\xd7\x08\xd3\x14\xc7\xd7\x08Y\xed\x08\x1b\xfd\x9d\xe6\x0f\xd3\xe0\x9a\xfa\xe4\xb7;=l\xe6\x1dO\xef\x8f\x93\x9f\xf3\xf47C\xfd\xb4\x07\xe3Jp\xbc\xf0\xe9}\xef\x94\x871\xfa!F?\xfc:\xa2\x1f\x90\xe3\xab\xc7\x91\xef\xcf^\xb5\x07\xa8\xd2F:-:nm\x9df\xba\xd9#\xacgp\xed@\xca\xc9&\xae#\x9f\xa3Vc\x98S\xf5\xb3\x18\xc4\\\xb7u\xe7{\x08\xf4\x90t\x1f\x93\x8e\x83\xd2{\xf7\xf7\x9f|\xe6\xab\x19\x0dd\x1e\x13\x99\xdbH\xe67\x93\xf9\x0de\xd4Y\xcfi,\x9b\xcf\\F6\x98\x85\x9a\xccB\x8cf\xbe\x91\x92\xccfS\x0cgN\xd3\x99\xcfx\xe64\x9f\x116\xd1\xac&4\xdf\xa1\x0cs\x99\xd1B\x0ciG0\xa5a\xc6\xb4I\xca\xfa\x8c&5\x87Q\xcdbV\xa3\x8f\x1cY\xd8\x19\x8ck~\xf3\x1af`\xa3\x8f\x9add\x9b\xcf\xcc\x86\x1b\xda\xe8\xc3E\xd8#\xdc\xdc6B\xd5yD\x85\x19\xdcx&7\x82\xd1\x0d1\xbbM\"\xc5\x8c\xc67\xb2\xf9\xcdko\x02\xab n\xea\\\xe74\xc4\xf9Lq\xa1\xc68\x02y\\R$\xcc$\x87\x1a\xe5F]\xf5\x88j\xb4rhr\xff*;\x85\x127\xbd\x176J\xf2\xd7\xef\x08\nq\x95\x96\x95(z\xd4T]\xc6\xd7\x05\xf1~\xfdk\xbc_\x8f\xae\xb5L\xd3t\x19h\x9b\xd6\x0f\xbd\xd8w\xe9}\xe7\xa1\xe5hz\xf5\x13\xbe\xde\x86\xee\xbc\x1ekT\xc3\xde\xe31\x0d\x8c\x9d\x85\xbfk\x03\x87\x8e\xfe\xcbG\x91X\x1ev\xb6\xed\xc6\x8f;\x81p$\xcd\xf9\xc8\x13\x9a[\xfa\xf0\xa1'\xe0\x8f=\xc1;\xc0\x19\x1e}\xc2\xdc\x0f?\x01\x7f\xfc \xd3\x1f\x80\x0e\xf9K\x89\xe3\xf1#P\x08}\x08:\xc01|\x16\x8a?\x06\x05\xb5H\xae\x07\xa1\x80\xf2\xa0Cl\xf5%G\xef\x0c\x1d\xcb,u\xb6\xc8\xeb\xeb\xe7'r\xdfw\xa5\x88\x12\nN\x19\xd5a\x16\xb6\xa0\x8aO\xbcY\xbb\x1f\xdf\xf9\xa3]\xefU\xaez\x1a\n_\xd3\xd27\xa1\xc6\xa3%\xf7B\x17_\xaev\xa2\x14\x1d\x1dOL\xd9\xdf\xf2u\xc8\xa4l\xae\xf4\x94\xa03&joQ{\x03\xeb\xfa\xd9\x84\x93\xc7;\xd2\xb6h\\\"\x1a\x1fza\xfb\xa3S2\xee\xeb\x9dY?\"|\xa9\x95I\xb6\x94\x8c/Fi\x8e\xf3#\xbc\x18\xf5,a\x8f\x97\xaez\xcc\xd4x\xd0kt\x9b\xbc\xc9g\xdf\x1c\xb7\xad;\xfda \xa5\xe9\xaa\xf1dkkjSeIQ\xd0\xe3\xa1c\xf1#\xffb\x11\xd3=\xfcJ\xd3=\x8c\x98+&~P\x10\x0f\xf7\xe1\x18\xbe\xe8\xc3\xdd-\x9c\xf1\xeb\x8eE,+\x81\xac\x91\x19yl\x06\xea\x16\xcb\xe5\x94 \x89\xf3\xc3~\xbf\xbd{\xb7aK\xde\xa1\x94c\xec\xa4\xa8\x02\xf8\x05\xa8\x8b\xcb\x06K\xe64\xfd\xd5F?\xd3\x86\x976\xe2B\xee\x16\xdd\x94\xcd\x1f\xa5j\x16\xcf\xe5/\xef\\\xae%\xad^\xa0\xe6<\xd6\xff\xaa\x8d\xad\xea\xfc\xad\x1bx\x8f\xdf\x89\x97\xf7.Y<\x9eH\x86\x8c\x89\xa7u<\xad\x01\x19\xa8M\xaeQ\x84h\xa7Y\x8dm\xe4<\xb1H\xd3\xce\xad\x9f,@\x07\xc2\x0dY%n\x96\xbe\x86}'\x9a\x00[\xb3\x9fF\xd7\xb3\xf75\xd3/\xc5\xa2\x12\xd9Z\x14\xbb4\xab\x1aJ\xbcx\xf9\xeaTQ\x93}\xa0\xac\xf2\xf5\xc8\xe2@\xa9\x13\xb0\xcd\xaf\x9cTL\xb3M\xee\xf9`->;\xbf\xc0;\xeeI\x1fg\xab\x8e\xd4\x19\x94'\xa66\xdb\x17y\xbe\xb9\xcc\xf7\xa3\x8b0IX\xf6\xda\x81\xe5\xb0\x86\x99]b\xaa\xd9\xe8\xaf\x0eq\x04C\x9a\x12\xdbxj7\xf7\x9f\xb1\xb7\x10\x8e\xd3\xe7\x7f;\x93\x8b\xf5n\xdf-\xd6$\xc9T\x87\xc3\x99\xea\xdd\xabd\xbbR\x1e\xa4\xec\n~\x12\xc5\xa7\xad\x80\"\xcf\xabq\x08\xa2\xd4!\x94+w\x95\x1f\xb0\xdamK\xd1\xa9\xee\xac\x87}R{[U\x1c\xadX\x89\xb2\x94\xbf)$\x9d\x9a\x8c#L\x99H\xaf\xae\x97\xf9\xa1P\xed\xf25R\x91\xf1:)\xaf\xd1\xf7'\xaaB\xba\xb2\xd3Wu\xa9\xbb\x04\xd6\x07]\xb8\xbe\x89\xcc2\x94Q\x1a\x8b\xfe\xb0\x16\xeb#\x84i\x06\x17\xadxi~\xb6\xd3\xbe\xc6\xad,\x105=\xd5\xae1=Hm\xa9\xea\x84\x11\x9a\xef\xfb\xb3a\xcd\xa3D&\xd2w\xf9\x8d\xa7p-i<\xbaW\x11\xc4\x8d\x94\x8f\xe5>\x19\x9be;mq\xea\x8cd2\xee\x9d\xeb\xddT\xd5OMCu\xa7\xad\xb1\x0d\xe2\xf6i\x043=kl8\xd5j\x84}\x92y\x8e\x9b\x97\xdb|\xf5\x89|\xc4\\\x8bdmJJ\xa1M\xf0f\xa0sc\x97\xe9(\x9f\x85V>t\x88\xd3R\x0eE\x9d6\xfdol\xd2\xd3.;\x97\xed\xa4\xba\xe0\x14X\x0e]\x0e \xd9\xef\xe7C\xe7\x96~\xaf\xe4*g\xe5\xa1\x84U\xb2\xd7\xd7\x15}\xe10\x7f.\x0e\xdb:\\y_\xe4R2)\xbbtC\xbd\x01:\xd9V\xfd\xa4\xa2\x06O\x86r'\xcdV\xdb\x83\xaet)U\xe7\xe6C-\xea\x1a\x86.M\xb5\xdc\xbaw\xcd\x94c\")\x9eM\xf3\xec\xe1(\xd4A\xeaH\x02\xaa\"\xc9J]\x00s\x97\xac\xae\xd3\xacW\x98_\xf5|\x99\xa2N\xf4\x11\x99\x87b\xc0\xf1\xa9\xfd\xe1A\x95\x92_\xb4\x1b\x14X\xc1IU\xbaU\x11\xcf2z\x16\xf7b\xf1\x95DnC\xce\xda}RT\x97\xa5\xa8.\x87{\xd7\x80C;\xf1\xbdoA\xeeJ\xcdO\xa8\xfa\xd9\x05\xdfc\x10\x9c\x0c\xe0#\x05\xf8\xd4\x99Z\xe6\x9c%EU\x8a\xea\x07E\x95\xdf \x1f(\xc9x\xfaz\xb8\xcc\xab|\xb7K+\xce;t\xebh\xea\x8e$*\xbd\xa7\xf4\x1e\x96[\xaf\xf3\x9d\xfc\xe7\x0c\xdd\xd5EA\xf3\xa2\x9c\x01\xd9p\xec\x9bB\x85\xbf\x0b)\x03 ?T\xfbC\xd5\xfem_\x88\x1b=\xb5\x0e\x06e\x18\x98uL\x8d\x84\x9c\x01W\xb2\xdf\xcf\x80E\xf1K}\xaf\x9f\x01\x9d\xb8I\xd7\"[\x89\x19P5\xeb\xd7\x1e+\x83sWn\xfc\xbc\x14\xc5%\xfa\x8c\xdd\xda\x9f\xfbl\x1b\"56\x85\xbcH\xaf\xd2,\xa9\x0f\xa0\xe63\xf3\x9a\xf8\xa4\x9eF5\xd2rU\xf1\xe7\x97bu\xfd\xcd\xb3z4\xa3\xe8\xb3\xd3\xae\x1a\\\xc7\x82\x19=\xeb\xa3$K\xf9\xf1D\xe5\x0e\xab\xcdn\xe7\xaf\xfft\x02\xb7\xea\xc0\xbd\x11E\x05\xa3\xb7r\xea\xfe\xdf\xebs\xd8\xa5\n/\x13U%\n\xf8\xf0\x1f\x16\xcd[\xcb\x9d\x9e\x1e\xd9\xaa\x8f*\xac\xa1\x1duM\x16-\xc0\x0d\xbe\xe0\xe4b\xd5\xe7\xe9wYT\xf6\xd2L\x84#\xa6\xb8\xf8\\\xea\x00xc\xbdSz\x84\xbenh\xad\xe1_5\x01\x16?\xa8#\xff\xb7OGk\xacM\xc5Y^i\xff\xe8\xe7\x12\x1aK\x9f\x121\x0b\x80\x7f\x17\x0f\x0b\x01\xffy(+H\xae\n!\xa4\xca\x93\x0f\x8bKH\xd0O\xfeT\xb5\xf3Q?JI\xdf\x89$\xabG\xac\x87\xf5b\xbfW\x0f\x18\xd6\xb9(\xd5 \xb4R\xa5\xe2)K!\x8732-\xbf\xd6\xb7\xd1\xce\x03\xfaR\xe87^RAJV\x95\xae\x88\xac\xf14!X]\x19j\x84A\x10\x0b\x8c\x1bC\x18\x1f\xb0m\x1a\xcd\xbd\xe6\xf2&\xaf\xc4%>\x10\x0dN\xbd\xc4\xa7\x99\x00(\xfc\xa8\xdd\x02\xfc\xc8\x81\xd0\x01\x184\xd6_ \x9a\x8a\x06\x91\x1d,\xcf\x84\x0d|\x05\xe7\xa7\xdf\xbf}\xf3\xfa\xf2\xa7\xf3\xef//\xfe\xcf\xd9\x9b\xcb\x0fo\xff\xf4\xf6\xdd\xbf\xbfe\xb6:{\xff\xe6\xcf\xef.\xde\xf0[\xbdz\xf7\xd3O\xa7\x17\xecv\xef\xce\xde\x9d\xbf\xf8\xd1\xd1\xac\x0e\xa2}\x1e0?\x9f\x15\xa9\x0b\xe7\xe9U&\xd6?\x95W\x17\xcd\x15[\x1d\x02\xf9F\xf9\x85\xc4\x1av\xa2,\x93+1\xae83\x86\xe6\xd0\x1c \x88\x01X\xe9\xff\x1c\xfe\x9cWb\\\xaf\xd0\xdbZ\xd3\xf39\x9c\xa9#2\xd9\xdaQ`\xf7\xa3>\x10\x99\xd3\xa7\xa7k(\xf2C\x86\xc6\xe1\x1b\xf0_\x084t\xba\xfb\xe6\x99\xf5;\xfc\xb2\xd5\x07\xc2\x1e\x07\xe2>\x07\xe7}\xa4\x05\"I\xc1wG\xe9\x82\xf7\x02\xd7\x07\xe2\xac\x811s\x00\xe7Uo\xf0!q\x9d\x0d\xd0\xd8\xcb\x00e\x11\x80\xb7\x10\xc0Y\x0c\xc2\xf5\x11\xfd||\x99\x1c~\xb6\x13e\x95\xec\x103S\xe7#\xda\xa4\\\x96\x8a>4\xf7/\\\xcb\xef\x03\xb3w')\xdb\x8e\x07\xbe\xa31P\xf9\x89&7\x9a \x00\x7f\x97\xf3\xcc\x94wL\xc9S\xa1\x1d\xa31\xb87\xd4\xaa\xe3\xf3\xef\xea\xe4L\xe9>\x19_\x89\xfa\x90f\x9d+\x9ey\xec\xe6l\x91\x94e\xbeJ\xd5k\x00\xad\xdeZ\xbf\x16\x9f+\x91\x8dm\xba}\xf8\x85i\xd9\x8c\xb1\xf6\xe7\xb4^\x8c\x8e\xb5r\x01\xef\xfa\x0f\"\xc6\xa0\x96\xa06\xba\nm\x02r\x93\xb1V'J\x02\xf9.\x7f\x0dL\xd9\x12\xd2\xcf\x9eNl]\xd6\xed8-p\x18\xf1.\xc2\x9eN\x04ra\xb1\xc5\xf3\xae\x0f\x95@\x8a8\xbd7\xdd\xfbB\xc8\xbb\x07\xf4\xbaS\x7f\xd9\x14HN\x11\x03\xad-\x0c:\x81\xe7c\xe8(\x9f\xd8\xcf\xea\xda\xb3\x8c\xd7\x9ex\xed\x81x\xedA\x81\xc8\x9c4\xbd4^{\x80NR\xa0\x9fO\xf1\xda\xd3\x03\xca\"\x00o!\x80\xb3\x18\xf1\xdaC\xed=^{j\xe0\x1cS\xf1\xda33-\xe3\xb5\x07\x87 \x84\xf4\xb3\xa7\x13[\xbc\xf6\xe00\xd3\xb5G\x9d\xd3\x977y\x95fW\x97*\x15\xa8\xfb\n\xe4d(\xff\xd9\xdc\n\xf2\xe3\xf7\xe5=#\x19\xbd\xb8\xceF\xca\xd2\xbf6\xee;\xb9\xfeoj\xe7]\xeb\xc84\xee<\xed\xc0n\x88\x84\xa2\xaa\xef\x1f\xd5m.\xdbo\xb6\xe9J\x05\xf2J\x8eA\xd6x+\xb5\xfaK\x9d\xc5\xec2\xa9\xaad\xf5\xe9\x98\xce\xc3\xce\x88.-\xc1\x84\x1a\x08j\xa7\xaf/h\x88APu \xfd\x01\xb1O@\xe29q v\n\x8c\x8e\xc1\x16\x11\x8a\x03%N\xd4\xd2\x92>v`\x8e\x1f\xec\x91\xa68\x106\xea\x10\xcc\xc6E\xa3Rq@cUq\xb8\x8f\x01Q\xc4\xca\x10\xe81\xb0$th\x9c\xac/2\x16\x07N\xbc, \xe10\xa6\xd6\x1dE\x8b\x03%\xb6\x16\x07<\xe2\x16\x07\x16\xb3\xf8\xcd0\x06Xh)\xe7e\x17\xc6\xf1\xbd\x96\xef\xc2\x06\xe1\xbfj\x1apD\x08\xe3pd\xb9E5(\x00\x9f8@W\xc7[`Z{\x0c0\xa9\x04\x01\x94\x02`X\x81\x0cPo\xefC\xe0q\xb7\x01\xcebB\xd8\x82B\xc8\xa2\xb2\xadF\x83f>\xeb\x91\x01w\\6\x0eL\x1a0\xe7N\x8b\xec\xc6\xc1\x12\xef\x8d\xc31\xa7\xe1\x8c\xce\xc6\xe1\x98\xc3\xb1\xbf\xa9\xc6\x81\x1a\x9aNB6\x0c_\xc7\xc1\x1f\xd4\x8e\xc31\xc9\xe6\n\x8b\xc7\xe1\x98\xa3\xc1\x03\xebq8\xe68<\xa1\xf98\x1cs@\x8e\xe0~\x1c\x8e9\x18\xff\xf3\x00\x1c\xdc\x8f\x06p8\xde<\x98\xf1\xf6X\x90=\x0e\xfa\xa8\xf1M\x8e\xa1\x9bpt\x92/D\xb3\xf6:>\x0dpU!\x9aC\xc3@T\xa9\xad\x10Uj\x05<\xb66\xc0YL\x08[P\x08Y\xd4\xfbR\xa9\xdbdI\x14*\xe8\xd9\xdb\x8b8\xf5\xc1Y\xd2\xa9\x0flf\xe4\xb3\xa2\x91 \x97\x9bm\x82T\x92\xb1A\xd0\x82\xfb\x03\x9e\xfa\xf0\x15\xbc\xfc\xf1\xdd\xab?]\x9e\xbe\xbe\xfc\xee\xc7\x17\xdf\x13\x82\x83\x860\xc4\xf0\xe2\xe5\xf9\x9b\xb7\xeex\xa6>\x0c\x11\x10\x02\xa2\xfa0D\xf0\xf6\xd4\x15\x17\xd5\x87&Jj\x1a\x19x\xf7\x06\x0dz\xa3\xac\xbf\xdb&W\x9d\xaaO:\xe5X\xbd\x89\xbc\x01S}h\x1d\x88)\xddt\xc9\x0cV\xe8C\x10\x8f\x06\x89$B\x14G\x1f&\x0d\x8dnv\xd3@r4\xf7a\xd2\xf8\xc8\xa4\x0b\xb1\x8d\x03\xbcR\xea\xe7yz\xa5\x03\xfa\xe49o\x8c\xc7\xca-k\x9e\x0d\x12\xd1\xa5\x19$5N\x9f\xc1\x98;^\x8d\xb5\xff\xd0\xb1\xf1\x11\xaa\x17\x94F\xed\xbeM\x1aXr\x88\xbd\x91\x98\x9bh\x7fX\x8e\xb3\x18\xda\x80E\x14`\x13F\x82X?\xfb\xfd\xef\x9f\xfeO\xea\xe7\x01\x04\x02>\x91@\xe5\xa0[\xed\x9f\xfd\xfe\x0f\x9f\x9e~iC\xe3\x9e\xceg\x87\xe56]\xfdI\xdc\xf5.\xf3\x9f\xc4]7w\"\xfd|=\x94B\xa7&\xfds\xb3Y -)\x91&}`\x13\x93{qi\x8c/\xfb\"\xcd\x8b\xb4b\xed\x89\xa3\x8c\xcb\x8c\xc87\x10\xc6\xb6\xe4lH\x86\x9cb\x12\x81\xc5\xe3\x0c \xc5 \x040\x89\x01|\xd9\xc4$\np \x03!R\xe9\xf8\x83\xe2\xc9#\xaa4\x92r\x86\x84\x90+\x8b\xb8\x92\x88I@\xfan\x87P\x19t\xb4\x11\xd1\x83\x02\x9b\x16\xf4\xa1\xf8\x87!\xf5\xd5<\xbbt\x1bl =\xfa{Z\xde\xfd-\xc9\xaa4\x13\x97~\x8d\xd3\xafiz4L\x92\x90\xa2\x89&\x92\x84&PH\x03q\x9f\x93\xe41i\x92@\x9e(p\xa4/y\xc2@\x9f4\xf0d\xedq\x86@\x95\xac\x1c\x99\x8a\x17\x07\xef\x03I\x9a\xd2\xc5\x04\x998\xfe\x8d\xab\x81)5g\xec\x9f.! \x9d\x12\xba\xf3\x19\x8a\x18\xbdL\x0de\xfeQJ\xe5W*\xa0\xf8\x85\x8a'\xf6\x853k{\x03\x8a\xab\x13\xc4\x9eT\x95\xd8\xedU(s\x95\xc3.-\xb7\"YC\xa2\x03\x98\xeb2\xcc\xc6P\xd1\x89[i \x82J\x1e\\\xca\xcc\x92\x02\x13q\xe4i\x1c\x98\xab\xc5\xe6\x9c\x8b\xb9/{?Y\xe9g\xc0\xb7U\xbe\xbc\xdc\x976\x87\x90M\x9d\x983i\x98\xd7E\xe3!\x8a\xdd\xed\xc2q\xb00\\)\x0c\xa7 \xcd=\xc2v\x84\xf4\xd6\xd1\xeb\xc5\xf0\xfb&H^\x08\xcf2x8\xd3q4\x10\x11\xdb\x8f\x04\xa7\x07\x80\x88\x1d\x19v\xef\x9c\xa1\x9a\xe5q\x83\xbb\xfd\xc8b\x19\xd1q#y\x07\xdb\xd0\\\x8e\xd7\xbfx\xa9\x83\xe4Kh3\x86+2\xe9\x1fN\xf4%U\x0e\xa4\x0e\xab\xd9\x0f2v\xd6ht\xc5\x9e:\x93\xa6.\xf6\xb2\xec'\xeb\xf4\xe6'\xff^T\xaa\xcf\x97w:\xfb#\xbb*\xc6\xf8h\xe2\x9c\xb0\x933\xad:\x8f\xa0\x80\x03\xd2r\xec\xb8\x8f\x1c\xd7q3\xe7\x89\xeb<^\xd0\xa3e\xf0~\xa6\xfe\xe6a\xb7\xc2\xf9~+\x92R(]\xffc\xb9\xfe\xa4\xa3\xe8?B\x9a\x95\x95H\xd6\x0f\x83\x96u\x9e\xb5\xb0>`\xa2>W\x9a\xa0~8\x1e\x1e\x91U\x04\xeb\x1b\x1e\xeb\x13\xa2\xa9\xa8\xfd\x8a9\xfd\xe9\x0f\xf2\xac\x07\xc1G{\xe8\xc3y\xd63z\xb2\x83\x13\xd0\xfd\x88\x87\xfad\xc7\xfe@\xc7\xb1\x146\x8b\x13iSc\x0b\x87?\xa3!\xa1\xb3\x9d\xc9\x9e\x071\x13v\xc6\xb1tg\xc2u\x02|#\x07\xef\xe8\xc1.\xe3\x9b\x9f\xbd\xd7\x0b \\1\xc0\x1b\xe5\xe6%\x17\xf8IF\xb8r\x80\xedl0\xe0\x7f\xdeA\xe2D\xd7\x85\x88\xf0P\xc3\xf1,#\xb4{\xefK\x81P\xc4\xc3yy\xdf@\xa0\xe2\x93\xf6\x9a!t\x8c\xbew \xa1x\xed/\x0cB1\x12\xde\n\x84\xa2\xf6D\xfd\x87\xa2\xa5\xc5\xef\xfb\xa3\xf5\xc3\xfa\x9f)\xee~\\v,@E\x1b%\xbb\x87\x06\x0f\xee\x02\xb1:?\xc2o\x89\x14\xb5g\x86$\xf80s\"|\xf0$\xc3\x87Y\x12\xe2C\xcb\xac\xd3\x93\xe2\x83'\xb7=\x8bu\xec\xe9%&\xf0OpF\nF\xe2|\xf0\xf7\x06\x84\x1e\xc1\x9bD\x1fh\x1d\x01\xb130\xe8\x9c_xwb\x17h\x01\xd7aY&\xf1\x96\x94L\x93\xd6\x96\xc4\xe0\xea\xa0\x8c\x930-\xeb$\x90\xc4X\x1ff\xcd> \x9c\x0c\x9409\x0b\xa5\x0d\x03=\x13%\x90\x1fk1\x18\x9a\xa2\xd5k =\xd0\xa2]%4\xd8|?c\xa0>\xca\"\xca\x0e`\xc8\x0f\xf0\xdejZ`\x90\x1d|'\xfc\x10HW\xc5>0\xa8\x01L\x8aH`=\xb8\xe2\xf0\x85\x01:k\x1a\xa0.\x14\xf0\x17\x0b\xb8\x0bF\xbc\xa8\xa2M(\x8f\xaa\xbc\xae\xef\xe6C\xfaD}6\x96>\x90\\8]\x08\x18\x89\x97\xd4\x8c\x0c\x98\xc0\xe4C\xba|\"\xbf\x079\x06\x05\xf8\xc7(1;\xa6\x17\xcf \x05!7C&\xb0\xb2d\x025S&|Yt\x9e+s&\x84d\xcf\x04R\x06M\xe0g\xd1\x84/\x95\xc8N\xb6\xf6\"\x1b%\x85\xf5f\xd6\x849\xb2k\xc2\x94\x0c\x9b\xc0$\xdal\x996\x81\x91m\x13\xfc\x197\xc1[l\x00\xe8J\x0dU\x99\x89\xd7\xc3x=\xb4C\xbc\x1e\xd2u\xf0x=\xf4\x01\x83\xec\xc0;3\xe3\xf5\x90\xd4\x86\xbaP\xc0_,\xe0.X\xbc\x1e\x8e `$^R\xc7\xeb!\xff\x18\x8d\xd7\xc3\x0e\x1c\x9b\xce\xf1zx\xafD\x8e\xd7C\x1f\xd1\xbe\xe4\xeb!\xfdu\x11\xd0\x19\x90\xa6G\x10\x0b4\xc0\xdc\xfd\x92\xceqf\x8f\xbe\xf3\x9b\xca.3\x16o\x00v\x01\x07\x08(\xe2\x004\xb5\x97\xa2\xea\x92\x0b:\x00\xadO \xf6\x0b\x9c\xe2\x0e@\xef\x1b\x18\xfd\x03\xb9\xd0\x03\xf0\x06\x00\xccA\x00\xaf\xe8\x03\x00=\x92\x1a\x07\xe6\\ `>\xc0-\x02\x01t\x010\x04#\x10\xc8\xb5\x1740\nB\xc0=\x0f\x8e*\xba\x86@\x8b\x12'\xa3\xc3\xa3\xc9\xa9f'\x03\x9e\x18s\x1c\xa8\x91\xe7d\x84X\x84\xba?\x1e\x1d\x07j\x94:\x0e\x9c\xe2\x12\x10\xc2x4\xf3\x99\x016z\xea\x99\xdf\x05j\xc1 \x986 \x9fJ\xd0\x07v\xf1 \xb8?\xd9\xc91\xf2@\x18\xd1\x80wei!\xc0Jg \x80z\x10HA\x00\xa6\xf5\xce\x00\xc7z2\x04\xfe\xce0\xc0]p\x08_t\x08]\xf8 k\x9f\x01\x86\xd5\xcf\x80\xff\x85\x03\x0e\x01t \xa0\x07\xfd\x8d\x04\x0e\xac\x82\x16pO\xd3\xf2\xbek\xc0\xe1>\x86FO\x94\xd2\x02\xf5\xa1\x07\x19\xa1\xed=\xdd\x18h\xcfDp\xb8\x0fr\xfa\x1e\x9a\xe0p\x1f#\xe3\x14\xc3\x80{\x1a\x13\xe1\xb1\x0b\x0e\xf718v\x91\x0c\xb8\xa7\x81\xd1\x1e\xdc\xe0\xe0\x7f\x86\x83\xc3\xf1\xe7\x15r;#\xbe\xf7!\xe1\xa2\xd4\xe2\x00r=\x0e\xe0\xabe\\u\xec\x0b\xbc\x90\x90\xfc\xfc\x06B4B\xba_\xcd@\xbc\x890\xf6\xa0\x86x\x13\xb1\x02\x7fK\x18\xe0.8\x84/:\x84.\xfc}\xdfDxu?\xa0\xa1\x08%s\xb9\x01b\x06s\x03A\x0c\x1c\xc6\xbeF21k\x81\xc0\x14\xc6\xa0\xc5 \xf6\x81\x93\xb6\xca\x0e\x8c\x84Vv`\xa4\xba\xb2\x03- \x96\x1d\xd8\xe9\xb1\xec\xc0\xbfzi f\xdabb\xf5\xe6\xe5\xb2\x03;\x9e\xa7\x0f\xc1\xfc\x1c,\xe6\x08\x8e\xd31L\x1e&\xcf\x92\xaa\x81\x1cS\xd1\x87\xc9ce\x914Dy\xd7@Md\xc6@\xc9\xa81\x02\x81c'\xa7I#a\xb3\xa6R#\xd5\x1b\x01N\xcd\x11\xe0\x9dq\x9c\x93\xcd\x9f\x0d\xba\x0b\xbc\x93\x9cq\x8a3f\xa7\x813G\x0dl\x19\x17\xb4\x19\x036\")\xdbt\x17\xd8\xc4\x82 \x82\x01'#u\x17\x82\x08\x07a\xc4\x03^\xd6\xea.\xdc\xef0C\xb4\x06j\x96k\x06\xca\xb0Z&\xc0\xca~\xdd\x85 \"\x87\\\xd8\xf6\xbc\x0c\xd9]\xb8\x871\xee\x89uN\x80\xbf\xbd\xb9\x1b\x9b)\x07\x03\x88\xc3\xde\x1fL \xc8$\x10\x04\x10 \xc2d_\x00\xb1 \x84`\x10*\xf5\xeeo\x80|y7\xbb\xb4\x0b\x95u!\x92.\x80\xb0< \x02Sd\xdc\xd1G\xc7\x8b\xe3mZ\xf1\x86E\x1b\x12\xa9\xa6\n\xd0{\xa7\xf5\xca\xa9\xaf\x02dM\x9a\xa0A\x93\x85!]\x04\x92O\x08\"\x0550d\x08\xf9< O\x1eX\x04\x00\xae\xf4g\x11\x02x\xc4\x00\xbe\xac?\xeep8\x92\x9d*\xd3\x89\xb5\xafx\xd2\x9c'\x8eXD\xa3 \x05\x0d\x01R\xfb\x08c\xe1Ih\xe2\x00\x88]S\x0cw\xcc\x1e}F9\xaa}h\xce\x1a/\x10^\xe7\x05l\xb5^\xc0%\xe5\xec\x12m\xf6\xfc\xce\x16'\xb1\xc6GH*?r\xfc\xc6\xc4\xce(\xc4\xc4\xce=p9\x1b]*\xd4\xb1rl\x92\xdc\x7f\x04\xe2\xb9]z\\\xe7\x1d\xd3M\xc7t\xc8\xd1]oAN\xb6\xb9\xeb\xd0\x00\xc7\xb3EX*\x02\x97\xdfO\xc92\x82W\x89\xd1\x93e:3\xd6\xab\x19\xa1\x1b\x1d\xc3d\x87\x8c\xc5\xd92@\x87\xba^\x9az -\xcdL \x91\xf34[\xa9\x80\xbcr\x97\x97_\x95\xebO\xf0\xf5\xe2w\x7f\x8c\xe5BF\xe0e+\xc3T\xb1\\H\xfb\x15\xed\xd1V,\x17\xd2\xfd+\x05],\x172\x04\x9f\xd2\x12\xb5J\x8cUb\xb9\x90\xe1\x8f\x8cyy_\x91\xc4r!\x0e\x8c\x84\x17\x14\xa1\xa8\x7f\xcd\xe5B\xfcg\xf9\xb0\x03U\x7f\xf0Z@^\xa4Wi\x96\xd4\x07m\xf3\x99\xb1d\x9f \xa8\xf4d\xa56\x99H\xdd\xf6e\xbf\xe8 \xd2\xe04\x83\x0ba\x8a\x0f\x9e@u-\xfb\xae\xd3\x12~\x94$+?\x9e\xc0\xf2P\x19\x05\xe1\xfc\xf5\x9fN\xe0\x16\x13au\xb5CH+\xa8\xf2a\xdfX\xd7R7Y\x8a\xaa\x12\x05|\xf8\x0f\x87\x82\xed\x7fY\xd1\xce \x16U\x81XT%\x16U\xf1\xe9N\xb1\xa8J\xff\x1b\x9f\xf6\xa6\x81\x16\xb1\x1e\xb3\xe6\xd2\xe6\xeb\x17c}\x88Ys\xfd\xce\x7f\xe014\xe5\xee\xa3\x81\xf4\x9a\x8ev\xe1\xd2\xe0r\xa2\xf4\x81\xfaj\x8e(;\x80!?\xc0{\xf7k\x81Av\xf0\x9d\xf0C ]\xa8\xfb\xc0\xa0\x060)\"\x81\xf5\xda\x8d\xc3\x17\x06\xe8\xaci\x80\xbaP\xc0_,\xe0.\x18\xf1:\x8f6\xa1\xbcZ\xf3\x1a\xe7\x9b\x0f\xe9\x13\xf5Y\xa2\xfa@\xf6E\x18\x08\x18\x89\x97\xd41k.\xff\x18\x8dYs;pl:\xc7\xac\xb9\xf7J\xe4\x985\xd7G\xb4/9kn,\xaa\xc2m\x19\xaf\x87-\xc4\xeba\xbc\x1e\xba\x80(;\x80!?\x80q\xeb`\x90\x1dxgf\xbc\x1e\x92\xdaP\x17\n\xf8\x8b\x05\xdc\x05\x8b\xd7\xc3\x11\x04\x8c\xc4K\xeax=\xe4\x1f\xa3\xf1z\xd8\x81c\xd39^\x0f\xef\x95\xc8\xf1z\xe8#\xda\x97|=\xfc\x05\x9f\xfa\xc4\xa2*c\x88EUbQ\x15\xdfw\xac\x01\x00s\x10\x10\x8b\xaah \n\x80!\x18\x81\xc0\xaa[\x12\x8b\xaa\xf8!\x16U\xc1\x81\x1a\xcb\x8fC,\xaa\xe2\x86 \x03\xf2\xa9\x04}\x88EU8W\x96\x16\x02\xact\x06\x02\xa8\x07\x81\x14\x04`Z\xef\x0cp\xac'C\xe0\xef\x0c\x03\xdc\x05\x87\xf0E\x87\xd0\x85\x0f\xb2\xf6\x19`X\xfd\x0c\xf8\xdf\x81\xe0\x10@\x97\x00z\xd0_\x92\xe0\x10\x8b\xaa\xf0\x86\xc6\xcbl\xa2\x81\xfa\x1c\x86\x8c\x90\x9e\x7f\x94\xf6\x98\x06\x87\xfb \xa7\xef9\x0e\x0e\xf71\xb2XT\x859\xb8XT\xa5\x03\xc7\x9fW\xc8\xed\xcc\xff\xf4\x87.YbQ\x95!\xf0\xd5.\x92\x9f\xdf@\x88FH\xf7\xab\x19\x887\x11\xc6\x1e\xd4\x10o\"V\xe0o \x03\xdc\x05\x87\xf0E\x87\xd0\x85\xbf\xef\x9bH,\xaa\xe2\xcd\xaa\x84C0c\xd0b\x10\xfb\xc0\xcd\xcb\x84\x033[\x13\x0e\xcc\x1cN8\xd03;\xe1\x10\x94\xef \x07\xfe\xd5K\x031m\x14\x13+)\xc9\x14\x0e\xecx\x9e>\x04\xf3s\xb0\x98#8N\xc70y\x98\xc9Q!\x8b\x8b\xd6\xf11d\xe5a\x0b\xe7:O\xe6\x00\xd5\xc9r\x02\x935\x9d\xd1\x89;gz{\xe7\x89\x8a\x9e\xa4\x83\x97\x87\xa6\xa0\xd0k\xb1/\x84\x94\xb1\xeb\xe7\xb0\xdf\x8a\xa4\x14\xca\\\xf6\xb1\xa9A\xf4\x11\xd2\xac\xacD\xb2\x8eE\x86F\xe0\x15\xb3f\xfdb\x91\xa1\xf6+\xda#\xc6Xd\xa8\xfbW\n\xbaXdh\x08>%>\xde\xb20V\x89E\x86\x86?2\xe6\xe5}U\x85\x8aO\xda\xbb\xa8\xd01\xfa^5\x85\xe2\x8dE\x86\x00h\xafy\xfc\xefv\xc2\xfagV\xd2\xd1;.\x96\xcf\x89\xe5sb\xf9\x1c\xbbV\x10\xcb\xe7\xf4\xbf\xf1\xe9%\x1aho\x13b~d\xda|\xfdb\xac\x0f1?\xb2?\xcc\x03x\x0cM\xd1\xea5\x90\xdeM\xd2\xae\x12\x1a\\\xee\xb2>P\xdfG\x12e\x070\xe4\x07xo5-0\xc8\x0e\xbe\x13~\x08\xa4\xabb\x1f\x18\xd4\x00&E$\xb0\xde5r\xf8\xc2\x00\x9d5\x0dP\x17\n\xf8\x8b\x05\xdc\x05#^T\xd1&\x94\xf7\x89^7L\xf3!}\xa2>\x1bK\x1f\xc8^'\x03\x01#\xf1\x92:\xe6G\xe6\x1f\xa31?r\x07\x8eM\xe7\x98\x1f\xf9^\x89\x1c\xf3#\xfb\x88\xf6%\xe7G\x8e\xe5s\xb8-\xe3\xf5\xb0\x85x=\x8c\xd7C\x17\x10e\x070\xe4\x070n\x1d\x0c\xb2\x03\xef\xcc\x8c\xd7CR\x1b\xeaB\x01\x7f\xb1\x80\xbb`\xf1z8\x82\x80\x91xI\x1d\xaf\x87\xfcc4^\x0f;pl:\xc7\xeb\xe1\xbd\x129^\x0f}D\xfb\x92\xaf\x87\xbf\xe0\xa3\xaeX>g\x0c\xb1|N,\x9f\xe3\xfb\x8e5\x00`\x0e\x02b\xf9\x1c\x0dD\x010\x04#\x10X\x15jb\xf9\x1c?\xc4\xf298P\xa3\xd4q\x88\xe5s\xdc0a@>\x95\xa0\x0f\xb1|\x0e\xe7\xca\xd2B\x80\x95\xce@\x00\xf5 \x90\x82\x00L\xeb\x9d\x01\x8e\xf5d\x08\xfc\x9da\x80\xbb\xe0\x10\xbe\xe8\x10\xba\xf0A\xd6>\x03\x0c\xab\x9f\x01\xff\x0b\x07\x1c\x02\xe8\x12@\x0f\xfa\x1b \x1cb\xf9\x1c\xde\xd0x9l4P\x1fz\x90\x11\xda\xde\xd3\x8d\x81\xf6L\x04\x87\xfb \xa7\xef\xa1 \x0e\xf71\xb2X>\x879\xb8X>\xa7\x03\xc7\x9fW\xc8\xed\x8c\xf8\xde\x87\x84+\x96\xcf\x19\x02_\xed\"\xf9\xf9\x0d\x84h\x84t\xbf\x9a\x81x\x13a\xecA\x0d\xf1&b\x05\xfe\x960\xc0]p\x08_t\x08]\xf8\xfb\xbe\x89\xc4\xf29\xde\xfcY8\x043\x06-\x06\xb1\x0f\xdc\x0c\\80\xf3r\xe1\xc0\xcc\xd6\x85\x03=\x87\x17\x0eA\x99\xbdp\xe0_\xbd4\x10\x13\x841\xb1\x92\xd2\x89\xe1\xc0\x8e\xe7\xe9C0?\x07\x8b9\x82\xe3t\x0c\x93\x87\xc9\xb3\xa4j \xc7T\xf4a\xf2XY$\x0dQ\xde5P\xf3\xaa1P\xc6\xf29\xaeOYg\x1c\xe7d\xa3%\xfb6\xc0;\xc9\x19\xa78cv\x1a8s\xd4\xc0\x96qA\x9b1`#\x92\x93\x85\x1b`\x13\x0b\x82\x08\x06\xdc$\xe2\x06\x82\x08\x07a\xc4\x03~rq\x03\xf7;\xcc\x10\xad\x81\x9a|\x9c\x812\xb4\xa4\x047\x19\xb9\x81 \"\x87\\\xd8\xf6\xfc$\xe5\x06\xeea\x8c\xfbX>\xc7\x01L \xc8$\x10\x04\x10 \xc2d_\x00\xb1 \x84`\x10*\xf5\xeeo\x80|y7\xbb\xb4\x0b\x95u!\x92.\x80\xb0< \x02Sd\xdc\xd1G\xc7\x8b\xe3mZ\xf1\x86E\x1bR,\x9f\x83\x03]\x04\x92O\x08\"\x0550d\x08\xf9< O\x1eX\x04\x00\xae\xf4g\x11\x02x\xc4\x00\xbe\xac?\xeep8\x92\x9d*\xd3c\xf9\x9c\x1e\x1ca,< M\x1c\x00\xb1k\x8a\xe1\x8e\xd9\xa3\xcf(G\xb5\x0f\xc5\xf29-\xb8V3\x96\xcf!\xb8W\xbd\xc7\x91\xff\x08\x8a\x89\x9d{\x10\xcb\xe7P\xbcTL7\x1d\xd3!Gw\xbd\x059\xd9b\xf9\x1c\xf2\xb1\xe6\xf5*1z\xb2L\xe7\x1f\xae|NS\x0f\xa4\xa5\x99)!r\x9ef+\x15\x90W\xee\xf2\xf2\xabr\xfd \xbe^\xfc\xee\x8f\xb1\\\xc8\x08\xbcle\x98*\x96\x0bi\xbf\xa2=\xda\x8a\xe5B\xba\x7f\xa5\xa0\x8b\xe5B\x86\xe0SZ\xa2V\x89\xb1J,\x172\xfc\x911/\xef+\x92X.\xc4\x81\x91\xf0\x82\"\x14\xf5\xaf\xb9\\\x88\xff,\x1fv`\n\x0c\xe6Ez\x95fI}\xd06\x9f\x19K\xf6 \x82JOVj\x93\x89\xd4m_\xf6k\x1d\"\x0dN3\xb8\x10\xa6\xf4\xe0 T\xd7\xb2\xef:-\xe1GI\xb2\xf2\xe3 ,\x0f\x95Q\x10\xce_\xff\xe9\x04n1\x11V\x17Y\x84\xb4\x82*\x1f\xf6\x8du-u\x93\xa5\xa8*Q\xc0\x87\xffp(\xd8\xfe\x97\x15\xed\x0cbQ\x15\x88EUbQ\x15\x9f\xee\x14\x8b\xaa\xf4\xbf\xf1io\x1ah\x11\xeb1k.m\xbe~1\xd6\x87\x985\xd7\xef\xfc\x07\x1eCS\xee>\x1aH\xaf\xe9h\x17.\x0d.'J\x1f\xa8\xaf\xe6\x88\xb2\x03\x18\xf2\x03\xbcw\xbf\x16\x18d\x07\xdf ?\x04\xd2\x85\xba\x0f\x0cj\x00\x93\"\x12X\xaf\xdd8|a\x80\xce\x9a\x06\xa8\x0b\x05\xfc\xc5\x02\xee\x82\x11\xaf\xf3h\x13\xca\xab5\xafq\xbe\xf9\x90>Q\x9f%\xaa\x0fd_\x84\x81\x80\x91xI\x1d\xb3\xe6\xf2\x8f\xd1\x985\xb7\x03\xc7\xa6s\xcc\x9a{\xafD\x8eYs}D\xfb\x92\xb3\xe6\xc6\xa2*\xdc\x96\xf1z\xd8B\xbc\x1e\xc6\xeb\xa1\x0b\x88\xb2\x03\x18\xf2\x03\x18\xb7\x0e\x06\xd9\x81wf\xc6\xeb!\xa9\x0du\xa1\x80\xbfX\xc0]\xb0x=\x1cA\xc0H\xbc\xa4\x8e\xd7C\xfe1\x1a\xaf\x87\x1d86\x9d\xe3\xf5\xf0^\x89\x1c\xaf\x87>\xa2}\xc9\xd7\xc3_\xf0\xa9O,\xaa2\x86XT%\x16U\xf1}\xc7\x1a\x000\x07\x01\xb1\xa8\x8a\x06\xa2\x00\x18\x82\x11\x08\xac\xba%\xb1\xa8\x8a\x1fbQ\x15\x1c\xa8\xb1\xfc8\xc4\xa2*n\x980 \x9fJ\xd0\x87XT\x85sei!\xc0Jg \x80z\x10HA\x00\xa6\xf5\xce\x00\xc7z2\x04\xfe\xce0\xc0]p\x08_t\x08]\xf8 k\x9f\x01\x86\xd5\xcf\x80\xff\x1d\x08\x0e\x01t \xa0\x07\xfd% \x0e\xb1\xa8\noh\xbc\xcc&\x1a\xa8\xcfa\xc8\x08\xe9\xf9Gi\x8fip\xb8\x0fr\xfa\x9e\xe3\xe0p\x1f#\x8bEU\x98\x83\x8bEU:p\xfcy\x85\xdc\xce\xfcO\x7f\xe8\x92%\x16U\x19\x02_\xed\"\xf9\xf9\x0d\x84h\x84t\xbf\x9a\x81x\x13a\xecA\x0d\xf1&b\x05\xfe\x960\xc0]p\x08_t\x08]\xf8\xfb\xbe\x89\xc4\xa2*\xde\xacJ8\x043\x06-\x06\xb1\x0f\xdc\xbcL80\xb35\xe1\xc0\xcc\xe1\x84\x03=\xb3\x13\x0eA\xf9\x9ep\xe0_\xbd4\x10\xd3F1\xb1\x92\x92L\xe1\xc0\x8e\xe7\xe9C0?\x07\x8b9\x82\xe3t\x0c\x93\x87\xc9\xb3\xa4j \xc7T\xf4a\xf2XY$\x0dQ\xde5P\xb3m1P\xc6\xa2*\xaeOYg\x1c\xe7d\xa3\xa5\x806\xc0;\xc9\x19\xa78cv\x1a8s\xd4\xc0\x96qA\x9b1`#\x92SH\x1b`\x13\x0b\x82\x08\x06\xdc\xd4\xd2\x06\x82\x08\x07a\xc4\x03~\xcai\x03\xf7;\xcc\x10\xad\x81\x9a\x92\x9a\x812\xb4\xd0\x007E\xb5\x81 \"\x87\\\xd8\xf6\xfc\xd4\xd5\x06\xeea\x8c\xfbXT\xc5\x01L \xc8$\x10\x04\x10 \xc2d_\x00\xb1 \x84`\x10*\xf5\xeeo\x80|y7\xbb\xb4\x0b\x95u!\x92.\x80\xb0< \x02Sd\xdc\xd1G\xc7\x8b\xe3mZ\xf1\x86E\x1bR,\xaa\x82\x03]\x04\x92O\x08\"\x0550d\x08\xf9< O\x1eX\x04\x00\xae\xf4g\x11\x02x\xc4\x00\xbe\xac?\xeep8\x92\x9d*\xd3cQ\x95\x1e\x1ca,< M\x1c\x00\xb1k\x8a\xe1\x8e\xd9\xa3\xcf(G\xb5\x0f\xc5\xa2*-\xb8V3\x16U!\xb8W\xbd\xc7\x91\xff\x08\x8a\xe9\xaf{\x10\x8b\xaaP\xbcTL7\x1d\xd3!Gw\xbd\x059\xd9bQ\x15\xf2\xb1\xe6\xf5*1z\xb2L\xe7\x1f\xae\xa8\xca`\x0c\xff\xd5\x1d\xc3K\xfd\x86\xa7\x84J4\xb9\xa6% \xf5\x0f'Z\xdd\x94\x83\xaaC\xd6\xf6\x83d\xdd\x1dT\x9bTl\xd7&]\xb6X\xcb\x13\x7f\xd9\xcf\xd3=\x1aJC\x8e\xefE\xf5\xa3\xe4\xf6Ju\xfb^\x94\xfb<+\x85I\x18^\x98\x7f\xab\x91\x99\x07\xc7\xff\xfb \x8a\xbb'\xfd\x965\xba\xf7g\xaf`'\xaa\xeb|-;\xd5%c\x16\xcb\xa4\x14\x8bv\x9a\x8b\x9b\xa7KQ%O\x17\x0d\x86F\xab>\x17\x95\x19\x82f\xb3\x91\xc8\x1c\x0bI-\x16\x87J\x07\xca\x8d\xd8\xd9\x84]\x991\xe9>\x92\xea\x16in\x93\xe2\x16a`\xdd5\x96{\xa8\xe3\x0cq\x9d\x1f\xb2\xd9\xe5\xa1@Ow\xcf\xc6\xa5h\xb3/\xe0\xc3\xfb\x1f\x9f\x14\xa2\xcc\x0f\xc5J@\x96\xec\xea=t\xc8\xd2\x9f\x0fb{\x07rcU\xe9&\xadoaU\x9dI\xc9\x16sP\x8a\"M\xb6\xe9\xdf\xc4\x1a\x7f\x0e\xb6/\xf2*_\xe5[X\x1e6\x1bQ\x98w\xeb\x0b\x9d\xf2[\xcf\x05v\x87\xb2\xd9\xe0\x90T\xb0\x15Ii\xc9a\x90g\x02\x1e\xab\xa5|\x91\xdd-\xe0\x87\xfcV\xdc\x88\xe2D\x89\xb6\x0f\xef\x7f\xc4o\xf5Z\x11\x90h\xaciF\xca\xd5\xb5\xd8 \xf8x]U\xfb\x8f'\xfa\xff\xcb\x8f'\x90\x17\x90\xe5\xf5\xaf'\x8a\xcbVI\x06\xb9\xdaM\x8a\x02\xe3\x93D\xc3a_\xe7\x1b\xb3\xf4'\x8a\x1bQh2\xec\x92}]bA\xce@\xdd\xf7\xea\xc4d\xca\xee\x91\xea\xc4\xf4 >\xb7M\xbe\xdd\xe6\xb7\xe5s\xcb\xda\xfd3\x9cn\xda\x19\xc8%7\x89E\x9aI\xaa\xf3\xb9,\x0f;\xb1\xb6d\x9e\xf8gx\x91\xc1\x0f\x17\x17g\xf0\xfd\x9b\x8b:\x9b\xbf\x1c\xab\xde\xa0w\xea\xf4\xc29\xf3/C\x16\xbf\xb8\xdb\x8b\xbf\xfe\xe5\xaf\xe8\xc7J\x96\x1f\xd4Z\xd7<\xa4\xe5\xfd\x89\xce5\x91\xaf\x0f+\x01I\x06\xa2(rK\xd8\xf6?\xc3\x8b\xf6)j\xa9\n\x13$\x92>\xfaP]%+)\x13\xf2\xfc\xd3a\x0f\xf5#\x04\x90\x87\xdb\x1a\xf2\xcc\xb6\xd1-C\xfd\xf0\xfeG5\xae\xeb\xe4F\xb1\xd5\xae\xb3\x17\xd6z3$f\x1a\xf2\xbfo\xf2t\x0dIf3\xd8\xeaA\xa9m_\x88M^\x88\x13\xd3X\xe2L\xaat\x99n\xd3\xea\x0e2!\xd6\xa5V\x10@\x89\xa8\xe2\xc6\x1a)\x93gR\x1cfWB5P\xfbn\x01\x8f>\x94\xc2\xbc\x92\x97T\x91l'\xe5\x8c\xe6\xbb$K\xael3^\x16\"\xf9$eG\x8dt\xf1\x18\xe7\x96\xb7y%\x9e\xeb\xba!\x9bC\xb6\xd2;E\x8e\xbd\x967\xabCQ\x88\xac\xda\xdeu\xacx\x8e\xa7\xd0\xf9f\x93\xae\xd2d\xeb8G\x96\x87\x0d\x14B\x9e\x0e\xe2D=PN+\xd3\xd9A.\xae\xd2{\x9a\xfd\xb5\x14Wi\x96\xd9\x94\\\xa9\xb6Y\x84\xfe\xdd^,4?'\xfb\xb4\\\xac\xf2\x9dMb\x9e\xab\xddVB^]\xebM\x9e\x0d%\x0b<\xaau1\xb1\xdbWw\xf5\xf6|\x8c\"\xdb)\x93\xcf\xd2\"H\xd4\x04\x95\xae\x99\xee\xf6[!\x0f:\xc5\xfcP\xee\xc5*\xdd\xa4+(\xc5.\xc9\xaat\x85\x04\x14\xa9\xfd\x16\xa0Rp\xee\x01\x16\x8d\xe3'):\x96\xc2\xa4\x02\xe9(\x0c#\xdd\xc0<2_\xe67\x16eCO\xb5f\xe7\xe14}\xa3\xf9\xf8\"\xbb\xfb\xd8\xde#\x92\x0c\x92b\x99V\x85\xdc|\x8eQ\xd52z\x84.\xd9\xe6\xd9\x95^\x91d\xbcdRj*\xa1\xafG\xb5\x1c\xabS\xdd>\x8dV\x84\xb0\xd9\x99a\xfcm\xbaTC\xad\xe5z \xe5a\xbf\xcf\x0bur\xee\x93\xd5\xa7'\x87L\xfe\x9f\xfa.\xcf\x17\xabmR\x96\x0e\"\xe8!\xc9\x06z>\x9dFx\xbf\x7fG\xff\xfa\xe4\x89dI\xff\x98\xce\x93\x9d\x90*\xc8\x0b=\xba+Q\xbd\xd6f\xa7\xd3\xac\xac\x92l%\x1e=\xe6\x0e\x16\xc5a\x1b\xbbue\xbf\xf1\xac\xec\xd9]u\x9dg\x96\xb5\xd5\xe3\xfa.\xcf\x1f-\x16\x0b\xfc\x10i\xd6\xf5\x91\xf5w\xc5\xfbj\xc5\xb9\x0b.\x1b\x9fj\x8a\xbe~s\xfe\xea\xfd\xe9\xd9\xc5\xbb\xf7\x8fmv\xa6v\x8f\xd8;\xd3\xddY\xa9\xf5;\x0f\xb5\xbe\xcf-IH$\xa5\x9e\x7f\x0b\xff\xb4_.\xbe\xcb\xf3\xff\xbbX,p~\x92\x83<\x91\x8a\xa6\xfc:\xc9\xee\xf6\xcb\xc5[q\xeb\x18o\xbaQ_\xff\x8fo!K\xb7V\x06\xb2\x12\xd1\xc2\xd6\xf6\xef\x07\x13\xb14\xafG\xa5\xe7\xb0\xf8\x90\xed\x92\xa2\xbcN\xb6\x17\xb9\xde\xd8S\x87<\xfa\xbb\xbc\xb4\xaa\xd50\xe7@7\x8b\xe1~xb\xe9Zdw\xc6\xf2;\xc2v(\x11\x9d\xe7!\xa2\x86=\x91w\xf1\x85\xfaA\xaa\xb2\x0f!\xe9\x9c\xaa\xf2\xc4\xad\x93\xd6\x8c{P\xbc3\xee\xa49\xc6\xb2\xed\x9d\xb97\x8e.\xfc\x8d\xea\x0c\xc9\xa6\x12Z\x9b\xdb&\x88A\xe1\xe1\x93\x87\xe3.\xea\x0b\xad\x19\xa2\xbe\xc1\x8a\x9a\xbf\x1fl\xf2|\xb1L\n5\xb9\xcfO\xee\x16\x7f{\xa0\xa9\xa5\xefZ\xf8\xb5R\x0d\xe5\x81\xfc\x16;^\xff\xed\xfc\xdd[\xe4\xcfr\xc5\xe4O\xad\xc5Ck\x8f\xb9\xdc\xd5\xb5j\xa4oe\x87R\x18\x9b\xe2\xd5a\x9b \xe9\xfb\xc6(\xe4\xe7k\xd1*4' vK\xb1^\xb7\xaaMm'M\x10;IG\xc1\xd0\x06\xd2\x8f\xff*'\xfe\xb1\xbe\xce\xf7\x0c\xbf\x86\x8c\x0b#\"\x9e[\xae\x0b\xc9\xea\x93\x94\x11\xed\xb5t\x93n\x05.\xad\x8d<9\x13E\x99g\xd6\x0dR\xdb\xaaT\x11\xbbK\xb5\x06\xdf\xc2S\x1cc\xf3\xb1\xf2\xd6\xd6\xdf>#\x9f\x15\x12l\xa3x\xa0h\xf3\xe09<\xc0\xf6G\x7f\xba\x0b=\xa3\x07X\xb9H\x85K\xcd\xe5m\xb2\x93\xf8\xfe\x97\x1e\xf2\xbfX?\x96s\x19|K\x9d\xd0\xe9\xa6\xbe\x02\xf5yB\xaffZ\xc2\xad\xd8n\xbf\xfa\x94\xe5\xb7\x99\xda\xc1\xd7\xaa\x82\xe5\xeaPV\xf9\xae\xe6\xe7!\xc6>\x0b\x9ehU{\xc0\x97\xa6\x04b\xd3\xadd\xb4\xec\n\xb1`(\xb6\x1bw\xf2Qm\x08\xc3\x87\xd7\xf9v]\xa7\x07kG\xa6lu5\xffBm\x17\xab\xd9w\x8cOu\xd3p.<\x92\x92\xc0\x90bd@16\xc2\xbf\xfe\xe5\xaf\x8f-L>\x95G\xfa\x1d\xd9\xd9D\x91A\xa2{\xbax\xf6\xf4Y\xf9\xc0\xb2\xec\xdd\x7f\xb9BH\x1cwN\xbbO\xda\x1b\x1f\x13\x80\xb5wa\xfcs\x9b\x11\xb6#j\x8c'\xa5q>|U\x8a\xc6{\xb5O\xae\xd2L\xd1\xae\x1dL\x0fg\xfbA\x13\xd9\x94d\xdd\xbf\x1a\xf4\xc6}\xd3\x9e\xc0\x15\xe6>\xc0\x1d\x07*q\xca\xc8\x03a\xa5\x87\xf5Now\x81A\xa7\x17C\x1e\xf9\x9f\xb5y*)Kmw;K\xae\xc4{\xf1\xf3A\x94\xd5B\xff>@\xf2\xf3A\x14:\x01\xafD')!`\x97\x97\x15\x08e\xfcQ\xd6\xa2\x05\x9cV\x9d\xbd\xbb\xaf\xee\xc69z\xab\xa6\x1ci\x96\xc3./\x84\xb1\xf2uU\x18$J\xc2K\x14$\xeb\xa0-\x92M\xa1W\xd4P\xff\x91\x1dvKm\xc30\x06\xc7\x8e\xd5k8\xfe.\xa1V\xf9!\xab.\x15\x92\xe16\xbfMJ(Eu\x02iU\x1a\x9bi \x87L3\xd3Z\x9b\x9dn\xd3:*\xce\xe37\xc4|wN\xf7a\x8d\xa0q\"v\x11\xbc\xbc\xd3\xf5c\xd9~\xc4\xb7\xf9Z\x9cf\x9b\x9c\xed=\xac\x95\xc7\xcb,_\x8b\xcb4\xdb\xe4C/ i\xaf\x18\xe3\xce%\x9a?\x14EdG\xa6~y\x86x\xf4\x9dV5\x07\xabYS\x80\x86#D\x93v\x86\xa1\xeb\xaf\xc0\x9a\xb4\xb3\xb6iY\x89L\x05X\x90\xbe\xcfDu\x9b\x17\x9fH\xdf:\x96p\xf4\xed\xea:\xc92\xb1-I\x1f[e\xe4.\xcf\xd2O\xc3\x03\xcd\x82D\xed\xcd\xc9\xecU}\xb6U0p\xaca\xb1_\xb1*\x96w\xb2z\x8e\xf7\x05csIE\x97D\x9bd\xbf\xbf$\x7f\xccY\xe6\xab\xd4\x15\x1c9\xfa|yH\xb7\xeb\xcb*\xb9\xa2\xf1\xc5U\xee\x12\x1b\x16\xeck\xb1G\xb1\x8fC\xd2\xd0p4+\xcf\xb8\xc3\x08\xf6I\x85\x06\xee9w~s\xd6\xed\xf2\xf5a+\x14\x92\xd1G\x8e\xc4\xcb,\xe45\x9e\xd1w%\x1e\xf3F\xc3\xbd\xba\x16\xabO\xe5a\x98\x9d\xbe\xfe\xf5'\xdd\xf3P\xbf\xfb\xb3\x1e\xc9i?\xd1\x96>\xca.\xcb\xf5'\xd6\xa27\x9d=\x8e\x81Q10*\x06F\xc5\xc0\xa8\x18\x18U\xff\xfdW\x13\x18\xe5\xf2\xde\xddsh\xd4\x0f\x9d\x8cA#\x16\x1f\xb3\xf78L\xc3S\xe0\x98\xb1m\x90\x18$>{\x8c\xe2\x8e\xb8(\xecF+Z\xd1^\xa0\x16\xe3\xb5\x94\xdb\xa5\x16\xd4E\x0b\xe5\xf6 \x81\x97\xcc\xf5\x15\xc5\x1d\x97\xbdEH\x18\xec4\xee\x17\x98u6\x1b\xa6\x9b\xb1\x94\x81ep\xd88\xad\x94\x97;\x06B\xd9\x99i\x0b\x1d \xb8\xe3\xac\xf0\x8cZ\x1a\x13!s\xd9(\xee\x0e\xcf\x9c\xe58\x8b\x1d\xe7\x8f3C\x16\x9a\x19\xcb^\x08\xd4\xb9\xd2\xbd\x9e\xfd\xe5:\x91\x82\x9cT\xf4\xd6:\x8fT\x04\xc3\xf1y+V\xf6\x8a6\xb8kMR\xc7`\xab\x08Im?\xae\xdbHm\xe9\xa8\xaeHEa\xa9\x81Hm\xee\xaeT\xb8\xb7\xd6\"D\xf1\xdbe\xfd\x10\x919\x95\xf3\"\x95\xbab-\x98a\x98s\xe9\xa4\x1er%/7]\xb7q\x02/\xfb \x97:\xbf\x9dfp\xd1\x1c\xcc'\xda\x7fg.b\x1f\xe5\xd4\xcb\x8f'\xb0'\xed\xab\xb7\xf7\xd5\xedJ\x9eMKQU\xa2\x80\x0f\xff\x81\x04p\xf9\xab\x1f\xb6#\xadI\xd0\x169\xf4h\x1a:\n\x8e\xaci\xf4# \xd1\xe5\xb3F\x0dZ\x82I\x9d\xcd\xfbq\x81\xbdh@W\xeb^\xe4\x1f'\xde\xcfC\xad\xb3\"\xcf7\xef\xf6dr\xa9O\\#\xee\xddG\xa8\xbbMJZn+|S\xd5\xf3\xe9^\xbb\xe4\x14\xf4\xad\xab\xf1\x15\xaf\x92\xed\xea\xb0MTZ\xd2\x9fD\xf1i+\xa0\xc8\xf3J\x07\xe5tN\x80U~h\xed\x03K\xd1\xf1\x1b\x9a\xc0\x05m\xff\x94x2!U1\xf9\x9b\xd2\xa0\xba\xd6\xbeLj1\xcb\xfc\xd0\x99P\x96\xaf\x1b\x0b\x9f\x94P\xadEO{\xd7/\xba\xbb3\x81\xf5AkY\x8d\x0f\xd1\xccS\xdd\xe6\xf5\x87\xe6r\xd08\xff\xda=D\xd865\xc2\x92\xcc \xf9\xfe\xc8\xf1x}V\xeb\xa2@\x14\x0ck \x9e\xd300\xbe\n\xf7\x181\x14\x8f\xcb!=\x9dAG\x03\xee\xb3\xa9\x86`f\xeda\xe92n\x8fe5\xf4\x19W\xc3|\xec\xab\xa1\xcf\xc4\x9em\xaf\xce\xcf\x9a^{\xf9\xa7\x06\xebR[\x1f\xb6i\xa9b\xcb\xcc\xf7\x81\xdb\xae\x9co\xdf5Wk\xf2\xc6\xa3\xe8\x1c\xa3\xd8Tt\xef\xe1;\xafB#Q\xad\xbb\xc0\x1d}1c\xdc\xa9=\xe2t\xbeX\xd3\xd9\xa2L\xad\xf1\xa5\x98\xa3\x89\x18Y:WL\xa9;\x9a4(\x8e48\x82T\xcdw\x18\xf8h\x8d\x1d\x0d\x8e\x1a\xd5\xa6\xfc\x016K\xbc\xe8\x94HQ\x15\x15:\x9c\x0d\xe2\xcc\x0b\x89\x0e\xb5G\x82N\x8c\x01%E\x7f\xd2#='\xc4xN\x88\xeeD\x04\xc6\x8c1\x9c\xf3Fo\xce\x16\xb7\xe9\x8f\xd8\x9c-V\xd3\x16\xa59%>\x13\x8d\xc5\xac(Q\x98\xa1\xf1\x97\xd6X\xcb\xc0(K$\xbe\xd2zP\xd2\xfc/\xa3\x1340\x8e\xb2\x8d\x99\xc4\xe8\xfb\x1b\x7f\xdf\xd3\xa2&u\x94d\x07\xdd8^r\x86H\xc9i1\x92\x03.\x1f\x1e\x86\x13\xe3\"kBw1N\x89\x80t\x86\xf7Y\xa2\x1e\xbd\xf1\x8e\xe3\xd0\x1fz\x8c\xe3\xb8\xed\xdf\xb1\xb9\x06E4R&\xeb\x8bb\xb4\xcf\xcd\x1b\xb9\xc8\x88Y\x1c\xc6e\xd9\xe2\x14\xa7G(\x86\xc7&\xa2\xeb\x12\x18\x8f\xe8\x8cD\xb4\xc7 \xba\xa2\x0fQbQ#\x0e}\xb1\x86\x83(\xc3 \xf1\x85\x84\xc8BzL\xa17\x9a\x10 \xca\x1bu\x87|\xe3\x8b\x1a\x9c\x16/\x88\x0e\xaa\xf3\x97I\xd1\x81\xc3h\xc0)q\x80H\xdc\xdf\xa4\x88\xbfa\x84\xdf\x9c\xb1}\xb6\xa8\xbeQ<\xdf<\x91|\xb3\xc5\xf0\xcd\x1b\xbdG\x8b\xdb\xf3F\xec\xd5w}_\xac^\xfd\x993Jo\x14\xce6\xee\x8d\x1ao\xe5\x8e\xc9#F\xe3\x11\xe2\xf0zC\x9e3\xf6nR\xd4\xdd8\xcan\xbe\xf8\xba\xf9\"\xeb\xc2W\xd7\x1bM\xe7\x8b\xa33R\x1a\x8f\x9dC\xef\x13\x98k\xde\x11)G\xc41%.\xceg\xe6l\x9dRdCg?\x85\n2\x87q\x9e\x15\xe4#\x8a\x93\x0e\xcb\xab\x82|\x86\xe5S\xc1\xb0!yT\xac\xd8\xfa\xf9S\xaa#\xf8Q\xb0\\)\xd6K\xaa7G\x8a%?\n\x19!\x96\x17\x05\xc9\x89\xe2\xc7\x87\xe4B\xe1\xf8E\xc1\x93\x03\x05\x1d\x00%\xf7\xc9\x9cyO:\x1biU\xdc\xed\xab|\xd1\xd4\x12%\xef\xa2Q\x0dW\xa70\xe8\x18'\x90z\xab\xb4\xa6&\x9e\x87Q\xf6\x14)j\xda\x99\xfb\xfe\xd9~Q_s\x0c\xb5\xc8\xd3\xb7gDC\xb7\x91%\xad\xda0\x0b\x9a\x95=\xad\x01\x83_B\xd4\xa15\xc3\x19\x82\x06\xcdl\x86|7\xcah\x16(\x82\xc7\x19\xcch\xcc\x86d-C\x1a\x0e\xb2\x951\x96\x1e\xcfPf\xa1\xbb53\xd9\xe0{7o\xbfk\x07K`\xf0\xf1\x00\x91\xc1\xa1\x03s\x0f\xea\xac\xde8\x7f\xee.\x1ea<\xbd\xbd\xe2\\\xc3\x1eo\x0e\xf6\x07\xbdaoO\xd0\x9aufZ)\xe3\xfb\xcb\xb6s\xc2\x0c\x871\x99\x0cn\xc2Smyb\x9b\xad}\x803\xe6\xf3K\xce\xb5\xe83zO\x8d\x81\x1e\xa0S>G<\x0e\x1af\x8c\x85\x06W<4\x10b\xa2\x01\x8d\x8b\x06;\x99\xb1\x12\xc7\xde3a\xb8\x18\xfdXi\x12\n\xacD\xa7%n\x1a\xc2\xb8w\xce\x00cB\xe5b\xeb\x08\xc19J\xd5\xd4^\xadXcuU*\xb6\xad\x89\x81c\x15s\xf6V%\xb6V$\xb6\xc7^\x03\x85sl\xd1\xdf\x8e8l\xc0c\xb1!\xa0;kLt\x08\xb2i1\xda\xe0\x8d\xd3\x86\x801\xd9b\xb6Cp\x8d\xe3\xb7C\xb08b\xb9C\xd0Y\xe2\xbaCP\xb9c\xbc\xc1\x19\xe7\x0d\xec\xfe\x98\x01\xd0\xc3\xa8g\xb0\x84\xc9\x92\xd4\x8e\xea3:tV\x8eVT\xd2\x04\xfa\xb4/>\xd7 \xe2\x8c\xd1P\x9d\x9a\xdaO\xa0\xcf\xc8\x7f\xd5\x04X\xe8\xb7f\xbf}:rD\xbd}w\xf1\xe6\xb9\x0eK\xdan\xe5\x04\xa1y\x1a\xa86\xd4\x02\xe0\xdf\xc5\xc3B\xc0\x7f\x1e\xca\n\x92\xabB\x08y\xc0\xa3\x81\"y!\x17C\x99aG\xfd\xa8\x10\xb2\x9dH\xb2z\xc4zX/\xf6\xfb\x1f\x92\xf2\x1a\xd6\xb9\xd0a\x0eu\x15h\x89\xbc\x14r8\x9d\x17\x9d\x9a\xc9^\xebH\xcd\x8eU\xbc\x14:\x98L\xaa\x03I\xed_\xeeV\x93n\xb4\x96\x1a\x95a\xfd \x16\x187\x860>`g\xb6l\x82(/o\xf2J\\\xe2\x03\xd1\xe0<\x85}\xe7\xb02\xa0\x8a\xcbQ\xfc\xae\x01\x0fr t\x00\x06\x8d\xf5W\xc2\xb9\xac\xc1]\xfc\x1eT\xc9\xf9\xf3\xd3\xef\xdf\xbey}\xf9\xd3\xf9\xf7\x97\x17\xff\xe7\xec\x8d\xb7\x04>\xde\xea\xec\xfd\x9b?\xbf\xbbx\xc3o\xe5)\x89ok\xf7\xee\xec\xdd\xf9\x0b[u|h\xcd\x10\xcf\x03\xe6\xe7K\xf5\xd5\x85\xf3\xf4*\x13\xeb\x9f\xca\xab\x8b&\x9e\xb7\xaacKJ\xf5S\xd7\xe1k\xcf\x03\xa8\xa19\",\x19z\x1a\xb0\xd2\xff\xb9*\x17\x8f\xe7xt\xb6\xd6\xf4|\x0eg\xea0J\xb6v\x14\xd8m\xa0\x0fD\xe6\xf4i\xa5\x1a\x8a\xfc\x90\xad\xfd\xbd\xb9\xd4_\x0d\x9d\xee\xbeyf\xfd\x0e\xbfZ\xf4\x81\xb0\xc7\x81\xb8\xcf\xc1\xa9}\xb7@$)\xf84\xf2.x\xaf+} \xce\x1a\x183\x97\xe0\xb8\xd8\x0c>$\xae\xb3\x01\x1a{\x19\xa0,\x02\xf0\x16\x028\x8bA\xb8,\xa1\x9f\x8f\xafN\xc3\xcfv\xa2\xac\x92\x1dbT\xe9|D\x9b\x94\xeb^\xde\x87\xe6\xb6a/\xa1\xd0\x02\xb3w')\xdb\x8e-\x15\x1fZ\xa0\xf2\x13MnHa\x9fH\xc5\xda\xdf\xe5<3\xe5\x1dS\xf2Th\xc7h\x1e\xaa\xdc\xb4\xdeWee\xbaS2!]\xa5\xfb\xa4\xb2\xe6\x83\xd5\x90f\x9d\x0b\x8dI\xe8\xe0l\x91\x94e\xbeJU\x1c\xa3Vo\xad_\x8b\xcf\x95\xc8l\xf5\x11\x0c\xfc\xc2\xb4l\xc6\xd8\x0b?\xaa\xef\xe5\xc66\xb7\x80w\xd9\xd6\x96\xabW\x83\x0e\xb7\xd5&F\xa1\x0d\x1en2\xd6\xea\x04\x92\x86\xd5@3\xb4\xcb_\x03S\xb6\x84\xf4\xb3\xa7\x13[\x97u\xad\x19\xd3\x0d\x8cx\x17aO'\x02\xb9\xb0\xd8\xe2y\xd7\x87J E\x9c&\xfaE\xea\x95\xfbB\xc8\xbb\x07\xf4\xbaS\x7f\xd9\x14\xf9\xb0ZG\x0b\xad\xe5G\x8e\xd4>\xab\x8e\xf2\x89\xfd\xac\xae=\xcbx\xed\x89\xd7\x1e\x88\xd7\x1e\x14\x88\xccI\xd3K\xe3\xb5\x07\xe8$\x05\xfa\xf9\x14\xaf==\xa0,\x02\xf0\x16\x028\x8b\x11\xaf=\xd4\xde\xe3\xb5\xa7\x06\xce1\x15\xaf=3\xd32^{p\x98@H?{:\xb1\xc5k\x0f\x0e3]{\xd49}\xe9J8\xdb|\xe9g(\xff\xd9\xdc\n\xf2\xe3\xf7\xe5=#\x19\xbd\xb8\xceF\xca\xd2\xbf6\xee;\xb9\xfeoj\xe7]\xeb\xc84\xee<\xed\xb5n\x88\x84\xa2\xaa\xef\x1f\xd5m.\xdbo\xb6\xe9J%\xb8\x91\x1c\x83\xac\xf1Vj\xf5\x97\xabm*\xb2\xea2\xa9\xaad\xf5\xe9\x98\xce\xc3\xce\x88.-\xa1s\x1a\x08j\xa7\xaf/h\x88APu \xfd\x01\xb1O@\xa2\x17q v\n\x8c\x8e\xc1]]u\x08\x94\xa8HKK\xfa\xd8\x819~\xb0\xc7U\xe2@\xd8\xa8C0\x1b\x17\x8d\xc1\xc4\x01\x8d\xcc\xc4\xe1>\x06D\x11+C\xa0G|\x92\xd0Y3\xe3\xba\xe2@q\xe0D\x87\x92\x10\x0e#H\xdd1\xa38P\"Iq\xc0\xe3Kq`1\x8b\xdf\x0cc\x80\x85\x96r^va\x1c\xcdj\xf9.l\x10\xfe\xab\xa6\x01G<,\x0eG\x96[T\x83\x02\xf0\x89\x03tu\xbc\x05\xa6\xb5\xc7\x00\x93J\x10@)\x00\x86\x15\xc8\x00\xf5\xf6>\x04\x1ew\x1b\xe0,&\x84-(\x84,*\xdbj4h\xe6\xb3\x1e\x19pG!\xe3\xc0\xa4\x01s\xee\xb48f\x1c,\xd1\xcd8\x1cs\x1a\xceXd\x1c\x8e9\x1c\xb0\x16a\xc0\x81\x1a\x88MB6\x0c\xd6\xc6\xc1\x1f\xc2\x8d\xc31\xc9\xe6\n\x02\xc7\xe1\x98\xa3\xc1\xc3\xc8q8\xe68<\x81\xe88\x1cs@\x8ePv\x1c\x8e9\x18\x7f0<\x0e\xee\x10y\x1c\x8e7\x8f\x19\x82\xecq\x18f\x07\xc0\x81\xa1\x9bpt\x92/D\xb3\xf6:>\x0dpU!\x9aC\xc3@T\xa9\xad\x10Uj\x05<\xb66\xc0YL\x08[P\x08Y\xd4\xfbR\xa9\x1bo\x07iI\xf5\xec\xc7/Gp@\xdf\x93\xe0\xc0fF>+\x1a r\xb9\xd9&W\xd4F\x81\x0b\xee\x0fx\xea\xc3W\xf0\xf2\xc7w\xaf\xfety\xfa\xfa\xf2\xbb\x1f_|O\x08\x0e\x1a\xc2\x10\xc3\x8b\x97\xe7o\xde\xba\xe3\x99\xfa0D@\x08\x88\xea\xc3\x10\xc1\xdbSW\\T\x1f\x9a(\xa9id\xe0\xdd\x1b4\xe8\x8d\xb2\xfen\x9b\\A\x9a\xad\x95\xd3\xa3\xce\x1cm6\x917`\xaa\x0f\xad\x031\xa5\x9b.\x99\xc1\n}\x08\xe2\xd1 \x91D\x88\xe2\xe8\xc3\xa4\xa1\xd1\xcdn\x1aH\x8e\xe6>L\x1a\x1f\x99t!\xb6q\x80WJ\xfdB\xf5\x82\xd2\xa8\xdd\xb7\x89'*\xb0Q\xbb+\x1d\xcb\x90\x98\x17\x93\xedu\xdb>\xfav\x0f\x95\x82\x10\x1b\xe8=o\xa8\xa7L;6\x1f\xe7\xd1OP\xe2\xe9I\x9c\x89\x06\xea|4\xb0\xe4\x10{#17\xd1\xa8\xb8\x85\x0bXD\x016a\x00\xcb\xb0\xe5\x036\x81\x80O$\xc03x\xf9\xe0~\x86\xc6=\x9d\xa9\xa9\xc4\x88\xe8\xf0\x84c>\xa0D\x9a\xf4\x81ML\xee\xc5e\xef+\x8e\x8c\xc3\x11\xc7eF\xe4\x1b\x08c[r6$CN1\x89\xc0\xe2q\x86\x84b\x10\x02\x98\xc4\x00\xbelb\x12\x05\xb8\x84\x81\x10\xa9t\xfcA\xf1\xe4\x11U\x1a\xa9\x8c\xd6>d`j#0d\x11W\x121 H\xdf\xed\x10*\x83\x8e6\"zP`\xd3\x82>\x14\xff0\xa4\xbe\x9ag\x97n\x83-\xa1G\x7fO\xcb\xbb\xbf%Y\x95f\xe2\xd2\xafq\xfa5M\x8f\x86I\x12R4\xd1D\x92\xd0\x04\ni \xees\x92<&M\x12\xc8\x13\x05\x8e\xf4%O\x18\xe8\x93\x06\x9e\xac=\xce\x10\xa8\x92\x95#Su\xd9 7>\x924\xa5\x8b 2q\xfc\x1bW\x03Sj\xce\xd8?]B\x12:%t\xe73\x141z\x99\x1a\xca\xfc\xa3\x94\xca\xafT@\xf1\x0b\x15O\xec\x0bg\xd6\xf6\x06\x14W'\x88=\xa9*\xb1\xdb\xabP\xe6*\x87]ZnE\xb2\x86D\x070\x83\x0e`6\x86\x8aN\xdcJK\x10T\xf2\xe0Rf\x96\x84\x8f\x88#O\xe3\xc0\\-6\xe7\\\xcc\xf4\xd8\xfb\xc9J?\x03\xbe\xad\xf2\xe5ez\xb49\x84l\xea\xc4\x9cI\xc3\xbc.\x1a\x0fQ\xecn\x17\x8e\x83\x85\xe1Ja8Mh\xee\x11\xb6#\xa4\xb7\x8e^/\x86\xdf7A\xf2Bx\x96\xc1\xc3\x99\x8e\xa3\x81\x88\xd8~$8=\x00D\xec\xc8\xb0{\xe7\x0c\xd5,\x8f\x1b\xdc\xedG\x16\xcb\x88\x8e\x1b\xc9;\xd8\xfa\xe6r<\xf9\xf5\xe9kM\xa6\xd1v\x1do\xd2\xbe\xa0B)\x89\xd0\xcf*\x97\x19\x87\x1f\"\x7fI\xe7VO\xdeN\xcd\x1bj\x95\xa7#9j\xa3\xf4w\x8dH\x1b\xf5\xdc\x15[nA\xe5\x14MNad\x13?\x04\x813]\xc4\x8ch\xf2\xaa\xa3\x0bQ\x98o\xa0\xff8\xd9\xaf\xbb\xf4\x03\x9d\x07\xe7\x1bL\xd7\x19\xeb9\x0c\x8e\x9d\xcal\x1e}&@\xdb\xb2\xe80n\xfd\xc5\xa5\xbb\xcc\xa9\xbe9u\x15TO\xc1t\x14L?\x99ZD\xc7\xa9\x8f8&\x8b\xeb!T\x1d\x84\xa8\x7f\x10u\x0f\xbf\xdeA\x10\x01-L\x17\x06-xu\x0d\x07\x89\x1d\xdcd\xd1/\x08\xc8p\xbd\xc2\xaaS\x100\x0e\x867\x93\x1e\x81\xeb\x10\xf3\xe9\x0f\x1e\xdd\xa1\x198Y\x80[6\x12J\xc0\xe1\xe6\xf1o\x1b\xef\x86\xf1n\x15\xd7&!n\x8fy6\x86cKPu.d\x038\x9b\x0e\x99\x1eawZ\xd7\xb30\xf7\x88\xd9^7\xe9\xcf |\xd6Ky\xce8\x11F{\x18\xdd\xbfv\xd5}bj\xf3Ii\xcdu\"\xf3\xee\xd8G)\xcd\xa7\xa53\x9f%\x95\xf9x]\xb1\x0c\x03\xe4\x85\x1e&\xfdfhg\xea\xd3\xce\xbf\x1dr\x1c;\xc7\xa9\x99\xea\xa8\xb9\xe9\xe8\xd9\xe8\x88\xf9\xe7X\x19\xe7z,\xfd_C\x03*7\xab\x9c+s\x1c7W\x1c7;\\\xb4\x91B\xb4\x91\x0e\xe1H6R\x8b\x8e\xe9e7L\xbf\xf4(\xc1^\x9c\x83\xa993\x8f\xf1y\xd9\xa2\xfbrG\xe5\xf3\xd4\x84\xe4\x05\xeb\xe5\xfe\x1a\xe0\xb3d\x02s\xe5\xfe\xb2d\xfb:\xcaL\x19Y\xbb\xda\xe4N\xc3\xedl\xcb\xd3\x85e~\xf2\xe6\xe2\x9a8\xcd\xd1\xc9\xc1\xce\xa95\xca\x9b\xd5\xc7GI\x94\xd5o\xc1\xc8\x8ce\x9f\n7\xfb\xd50\xcb\x152\x01\xd3\xed0\x7fo\xd4`\x1a\x88\x1aL\x03\xde}\x195\x98\x0eD\x0d&j0Q\x83\x89\x1aL\xc04\xa3\x06\xc3\xd6`\\1e\xe8j`b\xd2\x9a`\x93\x8ca\x9a\xbd\x13\xe7\xf5\xb0\xf4\x97\x9dT\x975\x1e4\xe1\xe5\xc8\x14\xc6\xb6~y\x8b\xeb1\x94I\xac|^\xc0I?\xd6I\xc1w\xbc\xd9\xa2u\xa8\xfa)\xfe\xad\xbd\x02\x04]O\xb5}m\xa9\xf6\xc0\xd2W\xc1+y`f\xbd\x15\x02tW[\x1b_}\x06[\x0c\xe6\xa8\x07pt*\xcc\xa1o\x83K\xe7\x06GN\x7f\xaf\xee\x0d\xf7K\x02&K \x08\xf1\xbc\xfc\x14\x15\x1di\xc6\xd0\xd3\xc1{\xf8\xcf\xa7\xaf\x83-\x99>V9,j|Q\xe3\x8b\x1a_\x0f\xa2\xc6\x175\xbe\xfa'\n+G\x8d\x0f|\x0bE<\xe8\x99\xc7{\xd4\xf8\xa2\xc6\x175>\x03\xa8\xc6\xe7{\xfdk]I\x9bx\xb7Zm\x83\xb0\xcd\xe7\x8c\xb23\xd6\\\x16]\xb0Yu\x81\\\xbc\x08=\xbb\xf1\xf3\xdaS\x9e(@k/\xdd\x05\x88\xa6hD\xc7UW\xbcE\x84\xb8\xa5\x83\xbcc\x02\xd2\xb8\x80V\x1c\x88\xa4\xe6@\x87\xb9\xbduw\xbc\xe5\x7f\xe6\xee\xd2/\xb5\x0d\xd0\xcb\xfa@[\xb2\xc75\xd5f=\xa1\xa2\x17\xf3\xe1\x94\xf0Qx\xd5\xa8\x1c\x08\xb9\x85{\xb8\xe5z\xfcEz\x08K\xeaK\x1bN@AS\xeb\xdd%wX\xdd\xf8\xf2|\x12\x8b\xea\xcc\xb8\xa3\xfdi\xa1I\x13\x04\x9f&\xd4\x02\xe9\xdag\x804S \xcf\x16\xfc\xd7\xc1\xe63\xd2\xb5\xd0\x00\x85\x8f\x0c\xf8I\x0e\x1c\xb2\x03\x9d\xf4\xc4\xeb\xe3\xe0cw\x86mz\xa9\x1a\xd2\x8cH3\xe1\x17\xa3!\x94\xa0\x99kx\xad\xd6zO\x1d\x0e\xe9\xe1\xad\x0f\xd3\xbcU\xc1\x80W\xf1e\xae9Pk\xba\xcc\xd5\x9f\xbfj\xcb\\=1\xea\xb2\xcc\xd5%\xb1\xf2\xca\\\xdd\x01\xab\xb6\xca\x9e\\Qe\x9e\xf1\xf5\x94\xb9\xe95S\\\x95R\xbc\x87\x95\xff\x90\xba7\xa5\xc6S\xed\x84v\xfa\xb9\x0ck\x06\xa26\xd3\x02i\xa6@\x9e-Dmfnm\xc6\x96\x14\xaa\x0bz.\xee\xcc\xe6\xde\x9c\xe6DV\xa02\x827\xa1T\x17\x18\x8bA\xab\xef\xe1\x7f\xb9NkG\xac\xe5\xe1}\xe5Nk\xe6\xaf\xdbA|\x11\x8f\x0357\xe4|\x959\xbc9\xaf\xba@p\xd7\xf4\x81\xc15\x8c\x0dL\xac\xb3\x11\xd0\xb9\xef\xae\xad\xc1\x99G\xab\x0b\x01#\xf0L\x9fnf\xa2W\xc8PY\x06\x08\x98p\xcb\x0cmD\xe1\xe97,\x08 \x95/ZnE\xeb]8\xa5\xa9[\x86\xb6}\xba\x94:\xbb\xb4wJz\x82\x94\xa7Hx\xc2\x0e%\xb2'\x895 \xf9\x84 \x13\x03\xe2\xe4\x80\x9eI\x988I\xa0N\x1489\x84\xe7\xef\x9cvB\xcc\x9b;\x98\x909\x98\x92<\x17\xe8\x04\xa1)\x93{N\xc6\xe0\x99z\xde;\xab9xY\xdc\xcf\xdc\xde}K\x9a\x08\x81\x9b\xbc;\xd6;\x19 M\x08\xa8{\x9541\xa0M\x0e\xe8\xbbt\xden)\xfbs\xce\xdd\xe9\xdd\x9b\xb4\x9dI\"\x82oo\x00oO\xce\xd2\xa7\xcf{\xdf|\xe7\xeb\xcc\xd6\x91\xa3~\x81\x15\xa7\x0d\x97\xbfB\x81Ms\x983\x91\xf0\x91r\xd7:\xe4\x89G\x92\xf8d\x88Gzx\x97\x96\xb0u\xbd\xb2bz'\xc6\xf0\xc0\xdd\xfc\xae-\xee\xe3{\xe2z\xe2\x9b\x8b\xb4\x95\x03{\xf0m[\xf6\xd6\xba\x8f0\x99\xc0d\xf9\x9d\xebB\x07\x195E\xbe\xf5A\xe4\x8fiIO\x12k\x0b\xb4!%\x80\x1bm\\\xdb\x86\xf5>\xbdtbua\x06\xcbcL\x0d\x13\xe5\x8bj\x1e\xbe\xef\xdd\xf6.N\xf8\xbe\xad\x85=\x88\xdf\xd1\xc2c\xe1b\x04\xf4k`\x87\xf5\x9bf\x14\xfb\x00?\xc4\xdf\x8a\xc8\x13\xfa\xaf!\xe4\x01\x80\xbd\xa5\xef\x19\x80\x86{(\x81\xe4\xf4\xd0\xe8\x1e\xdc\xf6|\xbfw\xc6\xe7\x9b!\xdc\x1a|\xfb\x11\x08.\x02\x02\xb9\xc0\x7f&k`\xf8c\x08\xb3\x03\xe2\x0c\x01\x88\x9e\x18\xca\xba\x19\xf0\xb3\x88\x01\x1f\x81\x81Nd\xa0\x12\x9a\xe5}!\xf8^\xbc\xa6`\xc2\x04h\xa6_\xb2\xe5\x9b\xd1\xa3\x95T\xde\xa7\x0b\x1a(|\xe1\xdf\xcf^c\xf6\x1c3\xa2\x1f\x03\xf3=r\xd0@z\xea\xa0\xc1\xf7\xe0A\x83\xe3\xd9\x83\x86_\x80^\xec\xe7\x10Vt\xbd\x88};\xa9lO#4\x90\x1eHh\xf8E\x89\xe5g3+\xa6!\xfb\xd1\xf9\x8f\xf6\x88B\x03\xf3)\x85\x06\n1&<\xab@\xf1m\xf2\x02\x9f\x05\xfa\xe2B\x03\xf6\xd2VCT\xe7\xa3:\xdf@T\xe7\x9d=L=\xfe\xa3:\x1f\xd5y\x04H\x84\x8e\xeaB\x83[\x13sh`^\xe1\xe1\x17\x19^ I\xa23a/z\xe5\xa1w2@\x9a\x10P\xa5\x1fib@\x9b\x1c\xd0e\xdd\xbc\xddR$\x1bG\xa6\xc5\xf45\xae>i\x12j\x92\xcc\xf8%c\x1a\x03\xf3e\x8c\xf0\xb4\xd2.NBg\xbb\x01x\x82\xc2'\xec\x0c{t\x08\x99{-\x17]Rp\x8es\xe4\xe0\x1d=\xd8U\x9e\xe6g\xa7\xeac\x80rgu\x07\xd2x\xc9\x05~\x92\x11\xc3c\x9c\x011\xfe0i\x12'\xa2#\xf4\xabR\x06\x1c\xe1\xce\xa1\xdd{\x03}C\x11OS\xc1\x0c\xd0\x82\x91C\xc7\xe8\x0b1\x0e\xc5k\x0f\x1c\x0e\xc5H\x08\x07\x0eE\xed \xf2\x0dEK\x0b\xdd\xf5\x07\xeb\x86\xf5?QE4\x80\x05\xdd\x06(i\xb3\x1f\x86\x96\x00Y\xb7T\xee \x1c\x05\xc1\xc6S\x10\x85x\n\xf6\xc0\x15\x08\xaa\xc7\x88\xbbm\xacN\x1b\xcf\x12\xf9\x16\x88\x14\xc2I \x9e/i\x16/B\x91\x19\x8a\xc9\x0c\xbe\xa4\x87[\x06\x05X\xf6\xd6\xdf\x1b)I\x8b\x81$G=\x12\x96\x8a\xc0\xe5\xf7\x95\x86\xc7\x1b\xa1\xc8\xe8\xc92\x9d\xde1\xc6\n)D\x03\x06\xddW_VP \x12\xf87@\x87\x86\x01Z\x02\xffP9\x80\xef~\x9b\xf3\xd8&\x7fb\xed\x81X{\xe0\x1f\xa9\xf6\x00\x1e7\x16\xa0\x94\xce\xacq;\xd8x\x82\n\xe9d`/gy\xf8\xca\xc3\xba\xd3\xd0\xcf\xcf\xb4n\x96%\xad\x1a\xc6\xae\x04f\x0d\xc2\xed\x0b\x0f\xb0\"\x1d\"\xc4\xed\xf5\x98g^w0b\xb71\x8b9r\xfb0\x8e\"G\xf6\x9e\x80\xfdh\xbb\xcaL\xd8=\xce\x0c\xec\nDs\x0cPf\x04\xa4Y\x01xM3\xd0\xf4\xe63\xcf\x00\x81\x17\x0c\xf8_\xfd\x92H\n4\xb2\x12M6\x9d\x0f\xed\xafy\xfd\x0e\x0c\xa0\x8c\xde;j\xba3\x03\xfc\xf9[\xa6\x0e\xc7\xeb8\x80\x19:\x99\xc7\xd1\x01dg\x07\xcc0f\x9f\xe3\x03f\xe8\xc3\x9d=e*v\x82C\x04f\xe8\x86\x90\x01ej\x174G \x90\x9c%0y<39N\xc0\x91\xb1d\x82B{\xd4\x03\xdf\x91u\xc4\x7f\x92t\x90\xa3\x19F\xe2I\x8f\x80\x7fV\x10Oz\xfcC\xfbI\xef\xcb\xd6\xa1\xc7\xfd\xcb\x96w'9n\x80Nd\x7f\x9e\x0d\xae\x13\x07kC\xc8\xa9\xc1t\xe6`M\xdc\xf93\x82\x9c:\x00\xb4\xb71\xe4\x0c\x19=\xbf\x8f\x8f\xf9\xad\xbf\x93\xfdB@\xe7\x04\xe2f#\xe4\xbb`v\xe8\xcfm\xe1\xf5\x17\x01\xbfW\xc74g\xf6\x1d\x8dPZB'\xc3}H\x98,s\xa5\x93p$\x91\xb0\x8a)G \xad\xe3Q\xa2Kd\x1e\xcb\xb7}\x0f\xaeR\xcf#\xc4\x99d=\xe1\xf9!a2@\x99\x10\xf8\x8d\xfa\x1a\xe6\xeb\xd0/V\xd9\x1e\x00+&\xcfsC\x9fK\x0bh\x13\xf7kH\x04\x8f\x81\x86\x89\xbd\xe1\xae.\xf0\xb1\xa6\x9b)\x8fxw\xf2\xec(\xef~\xf2\xef&\xef^\xf2N\x00\xfc\x93\x00\xda.\x9a\xa7+\xdf\xfe\x99k\xf78\xf7\x8e\x7f\xe7x'\xeb\xdb5\xc4=3\xa9\x1f\x9f\xc7\x0d|\x1d`\xc8-I\x01Pp\x0b\x991\x13\xb8uEl\xc2s\xec\xdb\xf6\xa2\xc0\xec\x1b\x0e\x1fv\x00\xf7\xce\xfb\xfe\xc4k\xa9v\xaa\xe3nU\xdca\x91\xc6\x85\\\x17|\x9a\xe2\xb1Q\xbb\x84\xeb \xe9\xf9@\xe3 \xd1\xfb\xe9\x1f\xf0\x84\xb0\xf9\x1c\xf5x\x8e\xfb(\xc3\xebK\xf4\x10\xc5\xee;\xe4\xf8\x0c\x19\xbeB\x86\x8f\x90\xe6\x1bd\xfb\x04\xe7~\xe4Er\xe4y\x96\xc1\xc3\x99\xc7\xcb\x03\xe7q\xcc\x11\xb1#\xc3\x9e\xd1\x01\xe7Jw\x16\xeep\x1bg\xac\xeb;\xda,w\xe7\x9f\xca\xab\x0bI\x14\xd5nD\x9e\xeev\xfa\n\xceO\xbf\x7f\xfb\xe6\xf5\xe5O\xe7\xdf_^\xfc\x9f\xb37\x03\x9e\x1c\xff~\xf6\xfe\xcd\x9f\xdf]\xbcq\xfd\xde\xdb.\xd8\x17\xef\xce\xde\x9d\xbf\xd0\xfb\xa4\xd9\x19\xaeq\xf4\x88\xfb_\x86\xb8\xbd\xb9\xeaE\x93s\x95\x8b\xa6\xe3\xfeM\xdd\xeb\xff\x9f\xbdw\xefv\xdb\xb8\xf2D\xff\xf7\xa7\xd8\xa3\xb9\xab%u\x1f\xf1DN\xa7\xfb^\xcd$kdI\xb6O\xb7-\x9d\xd1\xc3\x99YYYT\x91,\x92h\x81\x00\x0d\x14\xcf\xa3{\xf2\xdd\xef\xaa\x17P\x85\xda\xf5\x00P\xc7q\xa6\x89?\x12\x8b\x07\xd8\xf5\xde\xb5\x9f\xbf\xad#\xb2\x8d\xea\xd2zF\xbd\xe3{!\x16\xbd\x0d\xbd'G\xf1\x02\xae\x85@B\xca\x16[\x90\xce\xd4f.F\xd0\x921\x11r 1\x85\x8e\x10EP\xc3gT\x16\x19\x1c)\x8f\x99s\x1c\x99|F\xcd\x99v\xc2\x80\xf12\x89\x86\x7f+|\xd0\xce\xf0\x84\xddp6\xc9\x9fM\xf2\xbff\x93\xbc\xeb\x01\x1e\xc1u2hp\x9e\xed\xe6\xddl\xfe\xad\xe6\xddh\xc1\xdd\x10\xd8\x0b\x81-6\x8dd\xde\xcd\x95!\xefO?\x91M5\x8a\xdel\x1f\x8f\xcbwk\x96\x9ew\xc8:\xb9\xc9\xdb\xe0P\x1d\x89\xc9P\xf8;\xb6\x1c\xe5}\xc7Q=\"\xf2\x14\xa4\xcaT\xe0\x95\xab \x93l\xe5\x1d\x13\"_\xf9\xde\xc5d,\x98\x83\x9b;0\x97\xc8\xef\x02\x1e\xaf\xceL\xe2\x9aHF0\xba\xf9v\xb13`\xee\xe0\x8f\xb6\x89c\x9eS7\xa8\x1f\x07\xe9\x18]\xefI\x14\xd5\x86\xdeM\xd9c\x88\x9a\x9b\xdazH\x03\x15\xeako\"X\xdd\x8b\x13\xdb\xf5\x17\n\xa1\xe5\xde\x8b=V\xac\x8b#aR\xcb\xedM\xb0\xb6I\x81\xed\xa9y\xc8I\xdb\xd6\xebB|$\x0e\x89V\x8a\xe9\x1d\xa3\xd5\x00\xe5|\xdah\xfe\x8f3\x9a\x8e6\xdf\xe2\\\x99\xde\xe8a\x19\xbe\xbe\x05\xbc\xab\xca{9P\x90nI*\xf5k\x83\x9c\xe2c\xad\xd3\xebe\xbe\xd5\x08\xf5\x7f\xfc\xba\x18\xb4\xac\x15\x92\xc3\xf7,\x06\x7f|\xb31\x98\x03\xbc\xeb\xa2\xdb\x0d=6\xb4\xa5\x15\x13\x16\x92\x86\xde\xf0\x1f-R\xe2\x17\xe1`1P\xf5\xfb\xedc\\\x13\xd6M\xad|\xf0\x8b\xce\xc7\x9c|a\xa3\xe0\x00\x9e\x15\xb2\\\xde\x96\xe7<\xf53\xfc\x90\xcd\xf5\x8c\x1b.k\xc4#\x9e\xc3\x13\x8ez\xc0C\x9e\xefu\xdd\x1e\xeav\xb1\"-]T\xf5\x86.n\x9e\xaf(#\xcf\xf9\nm\x8b\xdd{\xda\x1e\xf9\xe8\x92\x97\xe9PT\xc5\xe1tX\xeeH\xcb\xa5\xc4u\xf8P\x1d\x9bS\xc5\xe5\xbf/\x94\x1e\x97\x0d]\xd3*v\xd7\xab[A}\x08-e\\\x80l\x07\xf48\x13nn\xdc\x90\x17\x83\xd8\xc0&h\x0e\xd6\x92\xb7\x1b\xfdc\xef#\xd2gP~\x05\xbb\xf7\xd7\xaf\xe0\xe7\x13m\xee\x83\x13\xfa\x81\x11vjGO(%MY\xd0\x96-[V7t\\\xf4\x9fu\x0e\xa6\x7f9\xf7\xd2\x9d\x8e\x9f\xde\xdf\xb5S\xbe\xb7\x96\x98O?\x1d\xbb\xc2\xadX3\xe9\x14\x14\x8b9X`\xbd\xb6\xaf\xe9\xfaU]T\xc9\x8b\xba\xa1U}\x08\x0e\x87\x1c\xeaS\xf00\xe0\xdc[u\xa4\x1b\x1f\x01V\x7f\xa1\x95T\x0f\x89l\xb7\xa8\x04\x7f\x10l\x84\xff\xb4.\x0e\xa4T\x0dvR\xfd[!\xbb\x7f\xe47\x8d\xf8\x03l\x0bZn\x84\x86P\xf1V\x94s\xa28\x1cKz\x10\x17\x85\xe0\x84\xa7\x96\xd5\x078P\xb6\xaf7\x8aR\xef\x91\x82\x86\xfe|*\x1ay\x87\xef\xea]}ljV\x1bs\xba)\xf8\x00W'q\xa9\xf7s[\xd2\x9d\xe8\xb1\xfa\xaf\xbayOoI\xb3I\x9e\xedqB_c\x10\xef_\xc9k\x85\x1b\xac\xbfI\x03\x91\xa1\x87{!\xf8\xba_ \xc9\xb8;\xe4\x93o\x8f\xc8'e\xa7\xf87\xbeg\x97\x98\xb2\x8c\x8c\x05\xd1K\xa2\xbe\x14\x87{\xa3?z\xdc\xea\xff\xe6\x93 \xf7Bl\x87^\x93\x86\x1c\xd2%\x19.A\x9d\xaa\x82\xdd/\x19q\xd4\x07k=9\x8fYvF\x17|c\x0e6\x80_;x\xcd\xe7a\xcd%F\xb9f\x18\xf1~\x057\xdd\xdbb'\x14-TfpFYW;*,O\x1b\xbb\x18\x8f\x98\xe3\xbbKs\x9e\xe0PoN%}\xdc\xaa\xe9\x84\x03]\xefIU\xb4\x07-\xb4\xae\xea\xea\xd4>\xdc@1\xea\x7f\xa5\x91\xf2\x93\xb6i\xc8\xad\xe0DKZ\x91UI\x9d\x91\xae\xea\xba\xa4\xa4rw\xbb\xdchv\xe4\x8a\x0c0>\xca\xbf\xe8{\x0b\xe9Tl\x13\xffO.\xc0\xbc\xd2[\xf3\xba\xae\xcb\xd1\xa2\xca\xb1\xae\x1d\x89\xeb\xcc7\x7f-|\xd3\x19$_\xaenH\x1dS\x12??\xe6?\x14\x15\xa6(vG\xcd\xbfa\xf8H,\xc1\x8aO\xb9\xde\x9b\xe6\xd7\x97\xd6\xe7z\x92\xb88-G\x99\xb4g{\xce/\x19\xfex\x11[\x1e\xd6\x07v\xbc\x9d\xb7n\xc6\xad\xabVl \xc6\xcb\xdf\xc8z\xdd\x9ct\\E\x7f\x97\x87\x84\x87\xf0>J\xdf\xce\x0e\x89\xe9{\xf9c\xcdH\xf9\xab\xde\xd0\xd1P#\xef\xe6\x1e\xde\xef\xe6\xebXj\xb7'\xb1\xdb\xd3_\xf9\x84\\\xcd\x9e\xc3(\x1fo\xaf\xe5\x83\x1f\xcc\x84O\xe3\x19\xfb\x93\x8f\xaa\xb7\x9b\x8b\xaf0`\xc09g\x18!\xa7N5\xf2\x97\xf4\xc3\x1d\xe3aSe{\xf9\xa4I\xf8H?\x86l\x86\x94e\x94\xd5\xd4]\xc40\x9at\x95\xf7\x0c\x9e/\x95\x8c\x97\x8aX/[\xb8>\x1d\xc4\xe6\xb1\x97}\xc4M\x82q\xf1)\xd7\x89Ig\xe2\x9dR7}t\xc0\xe8\x0beftRHu3\xdc\x07\xe6\xd4\x1b?\x1bGK\xeakrV\xaa\x1d\x9f\xb4\xd4\xc5\xc0\x86?z%L\"\x93\x97\xe1\x8fJ\x05|)o\xcd\xd1ka\xa9\x901c\xd6`j\x86\xdfZS\xde\xcf\xb2\xfe+\xab\xa5]{\xdcD{\x068a\xb6\x07\x94\xc6N\xb9T\x97GO\xf0\xd10\xe78c>\xba*\xb8\xf8\x892\xdah_\x8c\xa1q\x9b\x0b\x93\x14A\xe01\x0e\x81\x9fQ\x87\x8dD\x81\x0fc2IV\x83\x11\xf8M)0\xdd\x9c\x02q\xe3\x11d\x9c\x80\x91\x86\xa4\x01\xb9\xaa~\xa0\x19\x88\x18\x95\xa0\x9b\x01\xafa 9.\xc1\xe3\xaa\x0e\xaa\xb2G\x8d<\x96\x1d\x0f\x15\x11\xf3m+\xd4\xa5\x91gt\xdd}\xea9\xa7\xfd\x0b\xd6Y5~\xb6n\x19h\xe8\x9a\x167t3\xf9\xd0\x0e{\x03\x01\x95&g\xd2\x8dW\x95 j#~5&\xf0YL\x85\x99,\x16z\xba\x87\xa9/sdE\x87\x98OuI\x13 \x95+\xda\xbe\x05\x03\x9b;\xfd\x02D\x88\x18\x87l\xd4\x19{m\xbcrUm\xeb\xd1'\x8d\xff;\xd9w6\xd8#\xc3oq \xaf{M\xcb\x1d\xfa\x0c\xb6\xb4\xdc.Wu\xb5Y\xfe\"\x06\x8d\xb32\x95Q\x99r\xd6n\xe0\xb5(\xb7\x86\x16\xde\xda\xaa\x15\xceP\xcfK\xfe+_\xf2yWn\xc0\xc9\x10ef\x138\xeb\x90\xd4d!\xe6\xdd\x89\xb5\x8cT\x9b\xa2\xdae6\xd7&\x89\x1e\xce\xb7p\x96;\x92\x8f\x93\xa7{\xbfr\xb9\x03\x82S\x12\xd8\x98\xa6\xb9\xb4\xee\xff\nON\xd53\xadCTO\xdd\xcdev\x94\x1f*b\xc6\xaeV\xf4\xeeH\xab\xb6\xb8\xa1\xc0j`\x0dY\x7f\xb9\x00R\x96\xf5m\x0b\xad\x98\x0eh\x89p,\xae\xf7t\xfd%n=K8Y\x13\xce;2\x1bSO\xfc\x87R@\x8e\x8c>\xe6\xad\xfc\xeeao\xb4\xde+s\xa4MQ{\xbc,\xe81Cc\xff\xd4\x9f\x1a\xb2f\x8ez3\xe9\xee\xb3\xa7\xf1\xcd\x0d\xad\x98\x1dn\xdc\xef-1a@o\x14\x16Z\xff|/B\x19\xf9.\xe0\x1b\xacX\x17L\x9cu\xa5B\x8b@I\xf8B\xef\xed\x8f>\xee\xf9\xfb-T\x94n\xe8\x86o\xd65)\xd7\xa7\x920\x11L\xde\xd4\xc7\xa6\x10\xff-\xcfw\xbd\x85\x96\x91/\x12\xa1\xed\x0b\xadlm\x9e\xef5S~\x91\xa7\x9f4\xb4S\xc6+ [F\xf9a\x91\xc3\xd8\x93\x16\xea\xf5\xfa\xd44\xd4\xe7nP\x1b\xc4\x96\x94\xd4oam\xf5Hv\x8a\xc1\xbd\xc0I\xf7/\x0cLW\xdd\xcfj\xf2\xf4\x91\x9a\xa4\x07\x0bH\x1dO\x8e\x1e\xb2\xe5\xbcy!\xa1\xfd\xd3\xb7\xa2\xb9\x00\xffOV\xc3\x8a\x0f\xa7m\xe5\xd2^\x93\x1d}O\x7f>\xd1\x96-\xe4\xdf\x07D\xa4]\x93\x7f\xce\xc9\xf1\x89\xa0p\xa8[\x06t\xbb-\xd6\x05\xadXy\xbf\x80+\xbe\xb1\xca\x92\xd3\xa6\x87#\xbb\x87bX\x92\x8b\xediC\xc5\xc2W5\x1c\xf8\xc6Sp;\xe6\xe6C\x92p\xa2\x93\x82\x9cB\x1fB\xabt\\\xf0\xd9\x10\xffQ\x9d\x0e+\xda\xf0\x0d\xac\xbab\xa4\x0b:\xfd7'j\xcd7\xfeR\x10\x19\xdeM\xb7\xa4\x85\x96\xb2\x0b(X\xcb\xf7\xe1I\xf0\xe0S%7\xd3\x06j>\x0f\xb7E\x8b\x04\xdez\xb8\xfb\x80\x8bN`\xe9\x8a\xc2\x08>\xde}\xfar\xbd>\x1d\xc4\xd1\xdf\xbc\x1a\xa8\x1a \x8c\xfc\xac\x9d\xfc\xfa\xb5\x13|\x80\xe1\x0d`\xddC\xfd\x0b\xc6z+2C!\xe8\x0b=2 |\xa6\x9aS%\xf2\x12\xc4Q\xa2\xcd\x05\xacI\xc5\xb9\x87q+0 \xd5\xbd\x88\xa9O\xde\xae\xae\xf0\x92\xbcW\xcf\x96\x93\xbf\xed\x8d:U\x8a\xefdwI/\x8b\xd8\x9e\xb4W{\xb1.y\x8f\xfaeVtS\xa07\xa4+\xa1:\xdfFfz\x92<:R\x12\xcd$\x83\xce\x97>\xd5R\xf6iz7\x0f\xe83\xb5\x04\x16\xe5@\xe5\x9d\xe5S\xd4\xe7\x06\x1ait\xea\x1d1}\x1b'\xf3\xdc \xa6\x1d\xad\xc6O\xd7%%-\x97\xc6\x98B]\xfa,\xa9\xe9\xd4\xc3\xcf\xd25\xc9\xe0X\x1f\x15\x7f\x17\x0d\x14m'{\\\x18\xe4\n\xbe\xb8&}qT\xe8\x06Z\xca\xe92Z\xde\xf7\xae\xbb\xd3q\xd7\x90\xcd,\xff/\x02\x1c\xec5\xd0\xf8\xcd3\x07r\xb7\xe4R5b\xb7 \x9agB\x89\xdf\xae\xc3\xc3|~$w*\xcd\xb1-\xfe\x9d^\xf09\x11\x1dX \xef\xbe\xad\x19}\x01\x87S\xcb\xf8\xd5\xb8k(\xe1[\x95\xedI\x05\xbfA\x06\xb2#\xbf\xec0v\xa4\x85#m\xdc\xbcZ\xfd\xe0\xfd\xaf\x1b\xa0?\x9fH\xc9O\xf5\xb3\xe7\xd6g\xd6i\x10 \xed\xcas\xda\x81\x85\x95\xc5\x81K\xd6\xb5QRXL\xa4\xd9<\xb5jk\xebg\xe2\xee ;\xba\xacN\x07\x89\x19\x9cw~c\xe6:9\xcb\\\xe1\xaa\xb7\xdd\xa0\xe4\x8e\x11\x9d\xc1\xa3\x16U\x04B\xb1\x16\xad\x9fJ\"\xb8\xa0f\x9f\x82EJ\xe6\xfa\x82\x93\x7f\xb9\xa3\xafO\x8d\xbc\xfa/\x11j\xffAnh\xc3\xbb Qa\x917\xb8\x80\xf6\x97\xe1\xea\xeb\x99\xdb(\xda#\xe7m\xfa\xccHq\x11\xeb\xe7\x15\x83v_\x9fJ.\xa66\x92\x83m\x94\x04T\xf1;\xe5q\x0b\x8fN\xd5\xaa\x96B\x82\xbc`\x1f\xf1\xcd*T6\x84`[\x1c\x8a\x924X[]\xf4\x81\x98\xfb=\xa96%'\xfa\xa7\xb75\xbf\xf2v\xcf^\xb2g\x1f\x18\xf9B\xb1o\x89\xc0\xcbo\xff\xfcd\xcf\xd8\xb1}qy\xb9+\xd8\xfe\xb4Z\xac\xeb\xc3%\x15Z\xf4\xe9py[|)\xe4\xff\\7u\xbd}Vo%\xc1g\xdf\xbe\xfc\x9f\xff\xf5vO\xd8\xb3\xa2}\xc6\xf6\xf4Y\xa5Z$\xecY+^86\xf5\xaa\xa4\x87g\xa4\xda<\xdb\xd7\xb7\xcf\xd6\xa4zV\xb0g+\xfal[\xdc\xd1\xcdSl%\x1f\x8cC\xa2K+\xee\xfe\x96*\xb1\xf1@\xee\x8a\xc3\xe9 \x0e\xb9\x08\x1b\x12\xaa{\x87\x17\xa8\xd9\xa7\xbc\xc2\xd6d\x08\xaa\xce\x9f\x155P\x04\x05Xa[T\xbb\x92j\xc6\x85-B\xb5\xd1\xbbeK\xca\x92\x7f\xbf\xad\x1bFV\xe5\xbdP\xe6\x1b\xdd7\xc5\x82\x14\x0bG(\xbd\x96\xd83\xfc2}\xfe\x9b\x7f\xfc\x7f\x7f\xf7\xcf\xff\xc4\xf7\xd4\xf3\x1f\xbf\xf13>]+\xa1\xcbbb\xe2\xe2\xa7\xb0\xafo\xe1\x96\xca\xfdD\xad\x02\n\x07Rn)iI\xb5\xb68a'\x92\xcdf\x85\nTj\xc9?\xf5n\x85I\xe5\xc6\x90\xfd\x136ku\x82\xa8\x9a\x9f\x86r\x12k&\x0du\x02\x0bJ\x9a\xbaxW\xcd\xf8H\xaeb\x9eZ\xa7\xa6\xbbTgN-m\xe1\xe57\xaf\xae8 \xfeyE\x0eE\xb5\xbb\x10\"\xd0\xcbCQ\xd5\xfc\x17\xfb\x9e\xc6\x0b%\x8c\x9f\xdc\x87\xabY\xf0\x93\xec\xe1\xf0\x16\xe53%\xc6j\xc0 \xe8\xd1\x98\x03$\xabu1{t75\xa3\xcb\x0e\xdf\xa3UqWN\x82\xbe~\x92\xc6=\xf5B\x0d\xf6\x85\xcf\xcf\xb6\xd8up\x15\xdb\xa2i\x99\x82\x03@hmN\xbc\x8bR\xa7\xc0N\xfe\x8d\x85k\xd2\xf6\x06R\x19w\xb6\x80\xd7\x92\x80\xb8\x8e\xdb#]\x17\xdb\x82nT{\x17\x1e\xa6$\xf4\xd3\xd21;\xf2\xa7=\xadZ\xfa\xf3\x89\xebe\x92F{\x81@\x9aHF\xb9\xa9\xc5\xbeV\x1b\x02\xeb;b\xe6\xee\x06\xed\x86\xc9{\x03f\xef\x0f@m\x85#W7d\x1f\x9c0oaqj\xac=0\x9f-0l\x07tl\x80a\xfb_\x9a\xe2\x9f\xf0\xdb\xe7r\xda\xe6\xa6\xd9\xe5\x1c\x9b\xdc\x88Is\xecp\xd1Sp\n(`3lo\xb6\xddm\xc4\x08\x12uJH\x19\xdb\xd8\xcbi\xae\x8e9 \x87\xda\xd5\xe6k\x9d\x03\x82\x1e{ZF\xed\x13\x82\x1a(\xe4\xd0B1z\x88\xfdl\x9e6\n\x194\xd2\x01\xb9\xb0\xcdl\xa6f:\xa0\xe6\xb5\x95\xcd\xd7P!d#\xf3\x9f\x99y\xda\xaaA(\xd1.\xd61\xea\x81\x1a\xd4\xb3\xa6>\xb0d\xdd\x14\xacX\x93\xd2\xcc\xd9\x97\x9b\xbd\xbb\xccz\x93\xa8X\n\xde]]\x17\x157\x91\xd9\xd7b\xb2\xf2\x15\x12\xb2G(\xa9\xfeu\x18#T\xcf\x10\xa8;\x11\xda \xe7\x08\xd3\x96 \xed\x17\xa2\xe3\xb7r\xd2\x08]\xc1y\x9e\xd0\x8c\x89\xc9SD\xe4_\x89x\x9c\xc5Xc-DNQ8U\x0c\x9e/\x02\x87\xc5\xdf\xcc\xa2\xaf\xbfJ\xd8H\xbe\xe1\x91\x801\xe97\x8e\xc6\x13 \x89\x9c)\xed\x8e\x97t\xddY2\x85\xcd\xe49\x9a\x0f\xf9?Q\xc8Ua\x95z\x1f\xd8 d/\xcbR\xef\xa3\xd1\xf1\x95>{N\xd2\x82'\xc7q\xf3\xd7\x97\xa7\xc6\xa9\x17\xe3\x95\xa9c\xb23\xc0K\xf8\xf4\xfe\x87\xcb\x86\xb6\xf5\xa9YS\xb1\xd2\xf2\xe0\x9f\xaa\xe2\xe7\x93\x88\x9e\xdc\xd0\x8aqyVN/S\xe5\x870\xd7dK\x9b\x82\x94\xc5\xbf\xbb\xe8)bL\xac^\xd7%\xacN\xdb-m\xb40\xbbP\xccI\xf4]\xda\xdf\xb4DK\x18\x94\x94\xb4\x88?\xb6\xae(<\xba|\x04\xeb=i\xc8\x9a\xd1f!n\xc8\x92\xb4\x0cZ\xba;\xd0\xaa+\x19\xfa\xe9\xfd\x0f\x8f[8\x12\xb6\x17\xc4\x1dR](\xb1\xdb\x8a\xd0\x17Ney\x0f?\x9fH)%z1?\x8a\xb4\x98\x89'\xa4\x85\x02q\x84~\xe6M^\xee\xeazW\xd2\x85\x18\xfb\xea\xb4]\xe8k\xf9\xf3S\xd9cANq\xc9\x95`\xbd\xc4\xa1\xb4&U] \xa1\x88\x1f\n\xb7\xa5't\xb1[\\\xf0\xa9\x12\x97\xe3\xa3\xc5#\x1dA\xab\xa5\xed\xa7\x987\xfa\x8a\xcb\x98d\xcd\n~)3\xca\x8f\xd1\xa9=\x11>\\\xa9q\x1c\x8b\x92\xf7H\x89\x80\xab\xa2\"\xcd\xbd\x84Z\xe3'\x1f\x99-\"\x18\xd0\xbd\xdb\x14\xbd;\xd25\x83\x82i \xb7\x8f\x18f\xf4N,\xd5\xcb\xea~\x01\xdf\xd7\xb7\xf4\x866\x17\xe2\xca\xfe\xf4\xfe\x07\x158\xed\xd0\xe3$\x06\xb5o\xe4\xd3\xae\xf7\xf4@\xe13\xbf\xbf?_\xc8\xffo?_\xf0k\xa3\xaa\xd5_/\xc4\xee\xe1\x9c\xb0>J\x89\xb7\xbc\x17(\xcd\xa7\xa3CO\x16\xdbB\xda\xa1\xcd\x8d\xb4b38\x90c+\xb7\x82\xe81\xab\xbb\x8a\\\xc2\xe7+\nz\xb4@Z\xd8\xd6\"z\xff\x05\xb2\x16\x7f\x0fW\xdb\xbe\x87|\xf9t5\x9dn\x10\"\xcd\xa1mO\x07\xbaA\xe2\xbd\xfe\x1e^V\xf0\xfd\xc7\x8f\xd7\xf0\xdd\x9b\x8fZ\x9d\xfa\xf4\xfe\x07y\xa0\xeeE\x9e\x04\x81?\x0d\xb7\xe3\xc7\xfb#\xfd\xf3\x9f\xfe\xec\x90\x03\x9dBV\xe9u\x97\xfc\xf8B\xd6\x98\xa97\xa75\xe5\x92\x19m\x9a\x1eN\xd1\xeaM\xcf~e(\xb9\xc8\\\xd0\x11\xf5k~V\xeb\xfa\xcb\xe9\xd8e\xc0\xad\x88\xd0\x10+\x94\xad\x00\x1f\x8ah{On\xc4\xd2\x1f\x8c=\xba\x91\x9b\x94\xe8\xae\xf2\xff\xbe\xa9\x8b\x0d\x90\xca\x0d\n\x03\xd5\xb08~\x0d\xdd\xd6\x0d\xbd\xd0\x1frz\x84\x15\xabB\xe8@\x15\xa5\x9bV\xe7-r\x16\xd1\xdc\xd0\xa1~\x0d\x82\x17q6T \xb5\xbc\x96gc\x01O>\xb5T\xdf;|\xd4|{\x88KT\xec\x0fR\xd9\xe2\xb8~V\x0d\x95\xc9\x04\x8a\xe0\xe2\xa9\xbb\xd2\xd2O!\xa4}[gSg^\xa4\x10T\xac\xbc7\x93\n\xf1i\xadE&\xa5\x9bK\xa8x\xf5\xea\xb4\x85\x86\x8ah}\xe97\x17\xa1\xf6\xa2\x11\xa1\xce\x8b\xdc\xbfn\xdf\xaf\xe8\xae\x10\xa9U\x0e1.\xc6#\xcc\xf5\xfeH\x17r?\x92c\xd1r\x19\x1b\xe3R\x1f\xc4\x89h\x95\x9c/\xdcF\x83\xd3\x0dO\x14\xe4\x95L\x00\x95G\xe8)\x1c\xd0\xe8\xa9\x15r\x98\xc5`\x84\xae\xd1e\x0eI\xb9\xa1\xd3\x82[z \x15+\xd6\x03\xe7\x968##\xaebo:m\xfc\x96\xfeQ\xf9\xa5T\xb6\x8bq\xd1:\xf7\xaa\xba\x9c\xc8\xaa\xbeA.\xe8\xce4%\xe6\xdf\xf8{\xa8\x07\x9f_V\xf7\x9f{!\x8b\xabd\xcd\xaa`\x0d?4\x81\x9eh>H\xcaz0\x17R\xb3\xb3\x97\x82s+\xa5\xea\xf3\x9e\xac\\q\xc3lKK\x0f\x83-s\xad7nY\xacD\xf7\x14\x1fm\xa1=\x1d\x8fu#n\xa0#Y\x7f\xb9\xbe|l\x93SJ\x93nZjIT\xed\xbbG\xdb\xba^\xacH#:}wy\xbf\xf8\xf7Gr\xc4R\xf6w\xd5\x18\xd1\xe4#\xfe\xde\xf0\n\xfa\x97\x0f\xef\xde~\xe5\xce4\xff\xb9\xd7\x96\xa5\x84T\xf3S\xa5\xc4\x03\xa91\x08c\x12\x13A\xae\xbb\x93\x13\xb9\xe0~\xce\x04\xaeq\x7f\xb1_\x00=\xac\xe8f\xd3_\xf1\x17\xda\x0el\x932.\\\x99\x06\xfe\xf9\x7f\xf0A~V\xb9\xb6\x96EHO\xd9B\x1f\xd3\x17\x88\xc8K\xd6_\xf8\x19\xedU\xa4mQR\x97\x0b\xea\xb3|M\x9b\xb6\xae\xd0\xcd\xabl\x19\xc2\xd5\xb8\x14\xf3\xfc{x\xeeR\xea^\xe4\xcb\xad\xdf\xfb:\xcaw\xf9\x83\xb5\xfaH\x8c\xff\xd1\x0bx\x84\xedc{X\x0b\xd9\xfbGX\xb4\xff#\xd1\xef\xb7\xe4\xc0i\xfdw\xd9\xc5?\xa0/\xf2~\x0f\xde\x8bu\xfej\xabDu{\x8d\xe5\n\x15-\xdc\xd2\xb2|\xf6\xa5\xaaoe\x90\xf9^`6\xa8\x0c~\xb9/Mj\xf6v\xba\x90\xe2\xe3`\x8f\xf5\xf00\xaaI\xbeq\x84WMl\x1b\x9b\xe0g\xb1\x89\xf5\x1e\xda\xd7\xe5\xc6\xc2\x10\x10G\xa0\xa8\xba\xbd\xa7\xddcj\xeb\xd9\xb4\x04\xf9n\xc7\xc1\x13~Z\xf5p\x1dE\\\xdb\x85\xfe\xfc\xa7??E6\xe7\x9c\xf5\xb6\x1b\xc0\x97\\\x0c\x9b\x93z\xbe\xf8\xfa\xf9\xd7\xed#d\x19\xf5\x7fYzBgOo(;5\x95,\xc0\xa0\x7f\xec\xb4\xa53\xf8\xd1\x19\xfc\xe8\xd7\n~d'm \x1e\x80\x14\x98m\xe33E\xed\xfd\xf5+\xddI\x07\xf9\x08w>d\xf7<$\x9d \x86:\x14\xbc\xcb\x1fI\xba\xc9\xe7J\xf0;\x12\xf2\xb9\x11\xb29\x11\xbc.\x84\x19\x0e\x84\\\xee\x83\xb0\xf3`\x92\xeb \xaf\xe3\xc0\xeb6\xc8\xeb4\xf0\xb8\x0cf:\x0c\x9c\xe9v\xe5\xec\xdc\xce\x82\x99\xae\x82\xcc\x8e\x82\x19n\x82\xdcN\x82l.\x82\xbc\x0e\x82l\xee\x81\xb8s \x9bk\xc0\xe7\x18\x98\xe3\x16@\xdd\x00\x88\xe4\xea\xf2\x9by.\x00\xc4\xe4?\xd1\xe0\x8f\x98\xfb\xa3rRXxt3\x0d\xa6\x99\xf9{\xb3>6\xbf_\xc5\xdb\xcel\xe0w\xcd\xfb\x19\x8c\xfbYM\xfb\xc3\xcbp\xa6Y\x1f1\xe5\xcf1\xe4\x07-\xd9\x1e#~\xd4\x84\xefZ\xd4\xd2\xcd\xf7\xee\xb7\x7f\xc1\xc6:\xc9p\x9f2\xd8\x98\xd1\xde?\xb6\xa8\xc1~\x84\xb9~h\xe6\xf4\x99\xea\xe7\x1b\xea\xa7\x9b\xe9\xd1u\x99h\xa2\x0f\x1a\xe8\xfd\xe6\xf9\x90q\x1e\x9d\xacT\xc3|\xcc,?0\xca\xcf0\xc9'\x18\xe4\xd3\xcd\xf1Qc%\xec\xc0W\xfda\x8d\x13\x1bZ\xd5\x87d\x1d\x7f\xd8\xa3\xe0\xeb!V\xf1\xaa.\x0cv\x07\xac\xfeB+\x95W,\xbb\xa4\x99\x1f\xbf\xebI\xa5\x1a\x1e\x08\xaf\xb2:\x0dW\xa3\xe4\x9fU\xeaq!\x18\xe8\x15\xe7\xf1B+\xe8nM+\xafTnQ\x8b^[\xec*\xc2D%\xc0\x86\xfe|*\x1ai\xc2\xdd\xd5\xbbZ\\X\x0b|\xa1U\xe3\x92\xcf\xa9\xf5\x95_v[`\xe1\x9e\xbdnB\xd4\x990\x99\xbf\xa2h\xd1\xe2?\xaf\x05\x1b\xe8\x0c'\\\xe8\xe4\xbf\xb2\xa2\xbb5\xcd\x9d\x8b\x1e\xbd\x91ux\x0eE\xb5\xdc\x98\x87\x16\xce\xfb\xf0\xd7\xba\x0f\x7f,*Q\xb5K\xb3\x18QA\xb2\xdb\x11|\xb7Pa5\xbc\xa9\x85aPZ\xb54\xad\x03\xb9\xd3\x0b\xbd\x94\x7f\x19\xc3\xeb\x86E\xddD?$\x19\xd1\x8d\x97|\xa4\xfb\xba\xdc\x88r}u\xd7E>\xb1\xfd\x9e\x85+\xae \x13\xd3\xa8 \xc5W\xf8\xda\x9c\xf0C]\xb1}\x8b\x1c)k\x8b\x0f\x80B\xc5O[\xc1\x8c\xc5K\xa2\xa4\xe4\xae\xbe\xa1M%\x0c\x7f\x16\xf3\xb5O\xce\xf9\xc8\x9c\x8f\xcc\xffEG\x06\xd4h&\xf4\xb9\xab\x19\xa9\xe4$tZ~>\xd5\xcd\xe90\x86\xac\xb5\xc1\xf4\x92\x1ci\xb3\xe6\x9a\xee\xce\xa8@(\xaa$\n\x03\x89T%D\x9dW\xb9fR\x9e\x96\x97\xb0\xb93\x8c\xd2\xb5\xb2p\xad\xfa#\xdb7\xb4\xe5\xd3;\xa6\xa3\x7f@;\xca\xd7\xa2\xd1\xd3\xf2\xbfi+\xba%\x99\x8d\xb9\x93\xb8\x06\xb4\xe8J\x16:z\xf9o\x16\xbf\xeb\xd6\x87\xb2z9\xa9\x83\xe8LJ\x9d\xa0\xde\xc2OT\xcd\x99\xd8P\x1f\xc5\x94\xca\x7f\x8aeuzl\xcf$\xef\x95(dl\x8d\x00\x9e_\xfe\xb6;\x10E\xb5,\xe4~\xec\x0e\x86\xa0V\x85\xe1\\:\xf9\\:9V\xa3\xe1\\:\xf9\\:9Z\xbf!s\x05\x87\xbc5\x1c\xce\xa5\x93a\xf0\xa4\xd5sH\xa8\xe8\x90\\\xd3!\xad\xaa\xc3\xb9t\xf2\xb9t\xf2\xac\xf5\x8eV{\x88\xd7{\xf0\x96N\xb6\xf4\x04m\x02\x15\xfa\xbePA:%\xa1\xfb\x93T\xa7\xe9\x1d]\x9f\xb8\x80\xbe\xfc\xf8\xe9\xc3\xf2\xd3\xdb\x0f\xd7o^]}{\xf5\xe6u\xf0\xbd\xd7o\xae\xdf}\xb8\xfa\xb8\xbc~\xf3\xfe\xea]\xf8\xd5\x9f\xde}\xbcz\xfb]\xca\x9b\xd7/?|\x88\xb4\xfb\xfe\xcd\xbf\xbcy\xf51\xf2\xd2\xb7/\xaf~0^Q\xf7\xe0\x8b\x84\xc1n\x8b\x8a\x94KF\xca\xf2~)\x0d6\x9e\xa5\xb0\x9c\x84\xeeW:V[\xfc\x05\xc4_tP\xcc\xd0\xac\x0e\x7f\xdcS3\x19J\x04\xdc\xcbs\xdb-\xeeMA`\xf7\xfe\xfa\xd5\x852\x87h\xe7aU38\xd6\xc7S)\x94\xb0S\xc5\x8ar\xa0\xd9i\x12\x8f\xdb\x813\x9b3\x1cZm\xe8f\xb8e\x92\x12\x18\xeei\xbb\\\xbb\x0eV\xafI\xc0\x9a\xbb\xeec=K} \xfe}\xe7\xbe\xb6#\xab\x0cbd\xd5\xf2\xfbnz\xf3\x16\x01\xb7\x0b\xea\xcf\xb1nT\xf5\xf4\x1e\xe8o\xdd\xc6\xab:\xa1].%\x08\x8f\xe1\xf4\x1e8\x86\x17\x97,\xda9\xe9\xb9\xec#\x97j\xd7\x8c?\xec\xb4\x08\xe9aKV\x1cbU_\xb4\xd5hC\x18}\xc6\xdf\xc7\x8f\x9eAP\xf7Q\xfcw\xbd\x85@\x1c\x91\xf6\xa5\xd2j\x93\xb1/C\xaa\xbaC\x94\x0b\xcb\xfc\xdfF\x90\xab\xd1\x19\x11@w\x8e\x9a\xf8\x1b\x89\x9a\xb0V\xab\xdbr\"`\xcf\x88\x03e\x88\xafTE%\xb5\x8c49O\x80CVwJ\xfc\"\xdc\xea\xfcGuJq^\xa2h\xe4=\x0e\x03\xa2\xcei\xa8\xb7\xfa\x16B\xfbt\xa0\x8cl\x08#\x91\xce\xa8\xe8\x8a\xffc\x8bd\xf2S\xb99\xee-\x89L\xfd\x850F\xd6{\xe9\x99\xc1\x16\x0b\x94#T\xb8[\x0e\xe2nT\xe3\xd6w\xb6\xd9\x88\x94\xef\xb6\xf5\x89\x0b\xef\xb4\xb1\xac\xe3\xc2\\\xff\xe2\xf2rS\xaf\xb9\x8c*|\xfc\x15e\xb7u\xf3\xe5\xf2\xe67\x8b\x7f\xfc\xe7K\x19 \xd0^\xee\xea\x9b\xff\xaa\xfb\xf1\xec\xb7_\x99\xe3\x0b\xcf\x815\xed\x8f\xf1\x00\x83\xc7\xc3\x19\x13\xff\xd7\xf3L\xfe\x8f\x1a\x95K\xdb\xd3\xe1@\x9a\xfb\x87\xe8\x83\"-\xd6 \xda}\xdd\xb0\xee'\xbc/\xf2\x9f\xe3j\x99\xa5vF\xd3\x06\x1c\x04\xc5\xb8N\x0e\xab\x821\xaa\xeb;t\xf1S\xc3N\x0d\x03\x81\xe2\xbd\xfa\xddo\x9c^\x99\xd1Y\x92\x81\x0e\x03\x96\x8a\xb6\x7fI}\xbd%EI7\xcb\x86\x92\xd6Ln\x9d8WH\xaf\xac\x06,\x1dD\xfdt\xbb\xbf\xb7{)\xbf\xf8\xcai\xf1\xba\x8b\xbb2\x88\xac\xeb\x86*\xfe~\xe0\x1al#V\x81`Y!\x0bo\xe4\xcc\x07C{rFn*?)\x8aO\xa2\xd2\x93\xa6\xf0D\x94\x9d\xa8\xa2\x13Tr\x92\x15\x1cOd\x935{b\x9e\x84[G.\x8cr\xc3\x89\xbfQ\xb5(\xfdJ\xe8]\x12\x9c\xd0`\xc7\x06 \x99\xd2d\xe9Skck\xe2\xb6d\xff\xdd\x10I\x06M\xc0\xe6\xd4\xe8\xb08u\xabk\x06d\xc5>\xc6\xd6\xdb\xed\x81\xf5\xe7\xb4\x0e\xc8K2\xb5}\xb9\x93\xdc\x86\xe5\xef\x81\x16\xad\xb5\xd4\xa8y:\xdeE\xe6\x88\x07\x9a\xd5;\xd4mX\xffej\xd3\x02\xb5\xaf\xa1\\\xc2\x0d\xf6@\x1e\x01\xb7}\xf9\xfb\xd4\xd6%\xdbr\x99\x8c\xc8\xb0~UW-+\xd8\x89\x1f\xa1\xd1\x18gk\xe3\xe3\x00\x8b\x1e\xa6\xaf{\x1bN\xc9\x087\xbfS\xf4z\xbc7|\x8c*so\xf4\xf0<\xfaL\x92AA/\x86\x95[\x0e!U%\x90\xffo\xb19\x83\xf2\xb8@G\xe8\x87TO*/\xd5}<9\xe7\x1c<*\x19\xa6(\x02\xa6,\x82_a\x84\x80\xd2\x08>\xc5\x11B\x83\x07\xaf\x02\x19\xf9,\x16\x132Y\x99t(\xcd\xd1(\x1db\xea\x0c9\xbf\xa7\xab\x99\xe0\xd8\xa6R\xb3\xd7\x9d/\xed<\x16\xb5\xc7\xb2d\xb1\x83c\xd4\xc1\xd7\x0b\xe3\x1d)\x1cJw6\x0eXa\xb60\x1eaR\x07\xe2?\xac\xbd\xc5\xcb\xc8\x82' \xc0\xccr\xb23/CK?\x9ey\x98Z\xd8\xd2\xe426\x0fk\x0b2\xb70{\x0b0\xb8\x08\x8b\x0b1\xb9\xc8\xa71F\x97\x93\xd5efv~v7\x96\xe1\xcday\xe1)\x9c\xc9\xf6\xec\xfd)Y z\xb6=,\xb8\xcb\xf4\xb1\x95c\x81\x19\xd4\xa7Zu\xe7`\n\x16\x958P\xfd\xcf*P\xe2\x8cEu\xc6\xa2zH,\xaa\xe1\x95;\xe2VO\xc1\xa1\x12\x1f\xc8\xf4\xaa\xd1\x97\xba\xce\xfb5PA\x9c\xc1\x0cE\xa3\x86\xae \xa3\x9b\x17p\xdd\xd0-mt\xaa\xc6gI\xe43\x14U\xcb(\xd9\x98\x9b\xc1j\xc6\x97\x03\xd6P\xe9\x87e\xb5z\x7f\xd2y\xf4d2C\xb2\xda\x91\x84\x0b\xd1\xa5Q>\xf0\xc4\xd9\xed$\xcc\\\x97A\xa8)\x8c\x98:4\x15\x19\xce\xfa\xd2t!\"\xab\x08\xf1\x00\xfa\xd2,\xc8\x18\x88\xc0\xc6@\xf2\x91s\xd6 '\x84\x0cx`d\xc0\x81\x92\x91\x11(\x0f}\xa4\xcdV\x12\x0e\xb4x}\xd2q\x1e&\x97\xc3\x8c\xf5\x98\x89c3 \xe7&\xd7\xf8\x90m\x00Pt\x1b\xc80\x94f\x02\xee\x03\xbe\xad\x0c\xb4\x1b\x08 \xde\xc0\xfcNOE\xbf\x89\xce\x7f\x1c\x0f'\xfdX\x0c\xb6\xb6H\x04\xd5\xdb\x9b0\xe5\x99B\x13\xbd!\x94\xec-\x9f\x11\xfb\xff|\x9d\xc9\xe7|\x9d\xfd\xe7\xbc\xce\xe0\x17\x93\x86\xe1\xd7~\xdb\xd8?\x9co\x9b\xb4N\xe7\xbbm\xec\x1f\x12n\x1bHC`\x83\xe9\x83\x9c\x01\xeb\xc2\xf6d\xb86\x1a\xd2%\x01\x91\x0dL+7\x8e\xca\x06\xf3\x86\x95\x0d\xa1\x0dF\xa1\xb4A\x0c\xf4\n\x90\x91\xdbhm0o\xe0\x99\x90\xdb\xc0\xe8\xa7av\x1c\xbc1\x1b\xc1m8\xd1\xca\xe8\x86\xa1\xb8A\xca\xd4F\xd1\xdc yv\x1d\xfbc\x06d7\x187\x86\x87aiY\xf9\xf0\x10\xf1\x0d\xc6\x8d\xf0,\x9f\xca\xe7?\x9f|:\x13?\x0e\x82\x18r\xd0\xad\xc60\x9aR\xfce\x16\x96\x1c\xa4\xe3\xc9M\xeb\x06\x1b\x89+\x07\x01l\xb9i=\x18\x811\x07a\x9c9\x98\xce\xaef\x08'.\xe6\x9c\xe8\xc7x\xdc9\xc8\x80=7 Wo'\xe0\xcf\x81\x17\x83\x0eF\xe0\xd0!N\x92\x147\x8cB\xad3K|\xe2\xee\x17\xb5gG;`\xf4f\xef\xb7\xcd\x08\x0bG\xf6`\xaf)A\x11.\xa0\x1d\xfcBw\x18;\x17\x99<\x17\x99<\x17\x99\x8c\x82\xe3\xa1\xd4\xceE&\xa7\x83\xe8A*\x90\x1e\xfa\xe5\x08p=\x98\x0b\xb0\x07\xf3@\xf6|\x07\xdd\xd3\xd5\x8c\xe0{\xf0\x00\x00|\x90\x17\x84\x0f\x12\x81\xf8 /\x18\x1f\x9c\x8bL\x9e\x8bLB\x10\xbc\x0f\x82\x00~\x90\xd0\x9by@~\x0e9\x01\xec\x87\x82\xf9A.@?\x98\x0d\xea\xe7\x90\x13\x12\x0d*<\xe4\x04\xf7\x03}\x8c\x90\x01\xcd\x03\xf9\x838\xd6\x1d\x84\xc0\xfe \x0d\xf0\x0f|(\\#\x81\xff @\x07\x816\x9a \x02\x08\xa3&'\x0e\x06\x08 \xb3\x90\x00\n\x08c\x81\x01\x01Gc\x0b\x02\x04B&\x90@\x98 \x14\x08\xe1\x95\x9d\x0c\x18\x08q\xd0@\x88\x00\x07B\x14<\x10\xc2\x0b\x9e\x0e\"\x08I@\x82\x80\x81 \xc2\\@AH\x05\x15\x84\x91\xc0\x82\x90\x06.\x08\x81I\xf4lk\xff\xfbq\xb0A\xc8\x008\x08\xe1.;\xbf\xcf\x02\x1ft\xa89`\x840\x13\x90\xd0m\x01\x01(\x84\xb9 \x85n\x97\x87\xa0\x85\x90\x1d\xb8\x10\x82\xe0\x85\x80\x03\x18BF\x10C\xc8\x0bd\x08\x0f\x00f\x08\x90\x0eh\x08i\xa0\x860\x06\xd8\x10\x92\xc1\x0d\x01?]\xe0\x01\xbd\x83\x11\xc0w1\xa0C\x18\x03v\x08\xa9\x80\x87\x80\x0f(/\xf0!\xcc\x05?t\xa8!`\x88\x90\x19\x10\x112\x83\"B\x86=\x92\x00\x8e\x08I\x00\x89\xe0\\la],+X\"\xc0\x100\x11\x10\xd0D\x18vj\x0cp\"\x844\xe5!\x80\"\xc4\xa0/\xa2\xefz\x81\x14\xf1\xd7}`\x8a\xf8\xdb\x0e\xa0\"\xfe\x1a\x02\xaa\x88\xbf8\x00V\x041\xcf\x89\xd8#\xf2 \x01,Bt/e\x00Z\x1cP\x9c\x89\xb68\xa0\x86X\xa25\xd5\x14\x00F\x08\xb9\x92\xfc\x8e$\x0f\x18#\xc4L>\xd6\\\xcf\x03e\x8400#\x8c\xeaJ\x1e\x80F\xf0\x824\xc2\xa8\xde\xcc\x01k\x84\x04\xc0F\x18\xd5\x1b\xd4\xf0\x96\x0f\xbc\x11\xd0,W\x0f\x88#\xa4xl]\xc48p\xb8\xf3$@GIF\x06.\xb8(v\x90\xa9o\xc3\x16 \x0d\xe0Q4\x8f\x83<\xc2/\xe4\\>\x07H\xfd\x15\x02\xa4\xa6CEB\x18.\x122\xed\xe7\x1c\xd0\x91\x10\x82\x8f\x84\xbc\x1d\x9d\n% (\x9c$\x84:\x87\xc1JB>hI\x80\\\xf0\x920\x1fb\x12\xc0\x81\x99\x84\xd0\xdcXK\x13EW\xec\xa9\xa7CN\x02\x06; \x0f\xd2\xa7\xd1\x10\x94\xd0\xdd\x8at\x12\x10\xd4\x98\xce\xe9v`$$%\xe0\xb0\x94\x00\xa1\x18\xc2x/M H\x80y\x10\x95\xe0\x87\xa9\x84ys\xe9\xe9\xe5,\xc8J\xa7\xe5\x1c\xb0\x95\xbe\xbb\x12\x8d\xc1K\x8a\xef\xd3\x9dJ\x85YP\xef\x8fGZ\xd0\xc3x`\xfc\xa4\x07\x82M\x9a\x12\x18\xe8\x0b\x0d\xf4\xcbo\x0f\x01S\xc4\x02A\x82Q\x9f~\\6\x93\xcf\xd4PA\x0f9fy\xbc=n\x1b\xc8\x1d.\x98=`0\x1a2\x98!h0w\xd8`Z\xe0\xe0\xac\xd0\xc1\xdc\xc1\x83\x89\xe1\x83\xb9\x03\x08\x93B\x08\xa7\x07\x11\xfa\xc8\x89\xfa\xbb\xc10\xc2\x8c\x81\x84\xd1P\xc2L\xc1\x84s\xc2 G\x07\x14f\x08)\x9c\x1eT\xe8\xe5<\xe0\x0f+\xcc\x1eX\xf80\xa1\x85\xd9\x83\x0b\xd3\xc3\x0b\xb3\x07\x18\xc6B\x0c\xa7\x04\x19z\x08u\xa1\x87\x810\xc3Q\x81\x86\x99C\x0dc\xc1\x863\xc3\x0d\x03\x01\x87 \xe2I$\xe80U~\xc9\x19x\x18\x0b=L\xe9S\xe6\xf0\xc3X\x00b\xc6\x10\xc4\xecA\x88\xa10\xc4Y\x81\x88\x085\xde\x13\xe6 E\xcc\x11\x8c\x98\x14q\x17 HL\x0eI\x0cD\xe9\x8c\x0eK\x0c\xd1B\x83\x122\x04'\x8e\x9b\xac\xb4\x00\xc5\x949I\x0cR\x9c\x10\xa6\xe8\x8d\xe8\x8a\x84*\xe6\x0bV\x9c\x1f\xae\x18Y\xefY!\x8bIA\x8b\xf1\xb0\xc5\x94\xc0\xc5\xc8F\x18\x17\xbc\x98\x1a\xbe\xe8 `\xcc\x10\xc28\"\x88q|\x18cr chR\xbd[?\xf4MZ@c\x9e\x90\xc6H\xe7\x91\xbf\xe4\x0dl\xf4\x846f\x0en\xf4\x877\xe6\x0ep\xf4\x848\xce\nrD\xa8\xf9\xd4\xe0p\xe0\xa37\xf41o\xf0c\xf6\xf0\xc7\x87 \x80\x1c\x17\x02\x99\x1c\x0492\x0crL \xa47\x14\xd2\x1f\xe8\x96\x1e\xea\x96\x12\x0e92 rDH\xa4gh3\xc2\"\xbd\xbb\xdf\xfd=o\xa8\xa47X2\x7f\xb8d\xfe\x80\xc9\x1c;)1h25l\xd2\xbdDc\x9a\xe4\xe4\xe0I\x87R\xe7\xe2r\xc3'\xf1\x00\xca\x99!\x94A\xdd\x1f\x0b\xa3\x1c\x17H9:\x94rl0er8\xe5\x88\x80\xca\xc4\x90\xca\xd1A\x95\xf1\xb0\xca\xf8N\x9b\x15Z\xe9P\xc3B-s\x07[\xa2\xe1\x96\xe3\x03.'\x07X\x05\xc2.\xa3\x86\xaf\xcc\xa1\x97\xd1\xe0\xcbq\x1d\xca\x17\x80\x19\n\xc1\x1c\xd7\xa7\xb9a\x98i\x81\x98\xe3\xfa\xe41G\xe6\x0d\xc7\xc4\x032\x03!\x99I\x1es<\x02+[`f,43_\x1fg\x04h\x06C4\x7fY'\xff\xb9\x16\xd1\x98\xc0\xcd\x07\xabE4/|3\x1a\xc0\x99o\xd7\xe7\n\xe3\x8c\x04rf\xef\xf0\x9cpN_@g\xb0\x93\xbe\xa0\xce\xaca\x9d9\x03;\xb3\x84v\xa2\xc1\x9d\xc1y\x8a\xc7\xd8\x0d\xe3\x15\xa7\x85xz\x82<\x1f\xaao\x93B=}\xc1\x9e\x0f\xd5\xc99!\x9f\xde\xa0\xcfP\xd8gJo\x87!\x95\xf3C?\x83\xc1\x9f3\xe7\xd6\xdb\xdb\xd9!\xa0\x0f\x12\x04\xea\x90\xed\x82+\x9d\xaa\x13}\xfd8\x84\xda\xb9\x96\x1c;\xd7\x92\xfb\xb5\xd7\x92\xfb?h\x90\xf38\x14\xd3\xeex$\x869\x7f$ey\xff^\x8c~t\xa0\xb3\xb0tx\x8e\x91\xb4\x82\xe0\xf5\x1d\xa7\x17:\xf2X\x12\xbc[$\xa3\xf5 `7Hk>\x8f\xad\x00\xb7\x12\xa4\xf5`\x8ee f\x13H\xeb\x81s \xf3Y\x00\xecN\xe3\xad\xfav|\xca\xc9\x12\x9f\xa5\x9e\xaa\x9fjFG\x1f'\x1bU{\xc4\xa9\xd0C\xff\x95\x95\x84\xe7\xe3\x99\x94\x05$>\xd4k\"\xff\xe1\x91\xf4\xcc\xe6d@\xf1_\x01\x9cX6\x8c\x19\x16\xe2\x96\x03\xfd\xb55\xbb22O\xea\xa3rP\xfc6\x91\xf1\xc1\"\xc2S\xba>Qr\x9b\x93\x8c\xd5\xa5\xd6\xf7\x98\xbb?b.\xc1=\x0f L\xf3?\xbd\xfb\xf8f\xf9\xee\xfa\xe3\xd5\xbb\xb7A\xcf\x83\xfb\xf6\xff~\xf3!\xe1\xad\x97\xdf|\xf8\xf8\xf2\xeam\xc2\x9bo\xdf%\xbd\xb4\xfc\xe3\xd5\xc7\xef\x97?\xbd\xf9\x88\xbd\xde\xf9\x10R\x87uK\x8b\xdd~\xb6MTR1\xb7\xb9\xfe\x89\xb4m\xbd.\x849_0\xbe\xee\xefr5\x83\x86\x99?\n\x12t\xc39\xd0;{k\x11~l\x992 H\xf6&\xfe\xa3=\x96f\x19Q\x87\xa4\xdaC\xba\xa7\xb7\xaa\x05\xef\x06\x9b\x96M\x8a\xc0\xa1\x8c6;\xf0\x1e9aG,\x9b\xc5a\x9c\xbd\x81w\xe6\xd9\xef:\x12~I\x9d/\x95\xb1H\xbd\x1d*\xa8\x15\x01\xbc\x94_\x8a\x12W-S\x9aT\xa7\x9d]\xbd\xbe\xe8\xf9\xe7\x85\x0e\x93q\xf7\x91\xd5/\xe7\xf2J\xb9\x19E/\xa2\xb8\xf9\xfc\xad\xf1\xb9t\xe2\xba\x1f^\x8ay\xf3\xe8\xbc\xb7g\x92M/\x9eP7\xeb\x0eEo\xd1t\x13\xc0\xb4\x9b\xd4s\x97\xfao\xd3\x870\xf4\xfbo\xd5\xb4{5\xfb\xcd:\xe6n\x8d\xde\x04\xa1\xfbu\xec\x0d\x9bz\xc7\x8e\xb9e\x13\xef\xd9\x917\xed\x84\xbb6t\xdb&\xcc\xf2\xc3\xdc\xb8\x0fr\xe7\xce\xbcu\xe7\x18\xfd\xd1x\x9a<\xb7o\xce\xfbw\xe6\x0d\x1c\xb6\x96M\xbd\x85s\xdd\xc3N\xff\xc4\xd5gq\xaf\x9fO\xb4)\xd4\x168\x1b4\xd9\xd9\xa0\xf9k7h\xba\x82_\xaa<\x19.\xc4$l1\xd7F\x99\xea\x04IrX<\x0d]\x05\xff\xee\x9b[\xa9\xd6\xae\x8d\xea+K\x8b\x94B\x8c\xf7\xf3\x0fh?\x9b \xe5\x0f\xdd\x04E\xa3\x04\xad\xaf\xfcl\xbc\x83\xe8DN-9kOd\xac\xbe\xac\xd5\x0fc\xdb\x0cX\xa1\xf8I\xecB\xfeJQ\xedT\x0f\xea\xca\xebLBv\xe4{#\x9e0aG\"\xc6\xec\xf8\\N7b{\x0c\xd8\xf1&\xe7\x1b\xae]\xa3u\xbc\xd5\xa9\xc6\xea\x90\xa1:\xa9\xd5\xa9\xf6\xe8\x90\x05\xda\xd8\x1e\x86\x8c\xd12RmH\xa3\x1c\"\x8acx\xc4\x0d{\xbb\xfd\xd4\x99\x8a\x13\xf6\x19\xaa\xe0\xa2S\xe1\xb9\x80\xf2\xa8\xb3\x03E6\xbe\x16\xe3\x95WGm}\x08{\x01\xae\x98\xc6T\xd2\x8c\xcah\x9a\x1a\x1a\x90\xfa}A\xe5\xa9:Y\\\xddLS4\xa3*f\xb2r9J\xad\xc4\x15\xcaT\x93J\x16%2\xb3\xfa8YqtUFt\x1a0\xe93\x87\x82\x98G5\x9c\xac\x14\xe2B\xca\x14E0\x87\n\xe8r\xf8w\x06\xa7q\xd6\xc5<\xc4\xb1\xa3\xeb;\xb0\xa1c\xea9\x9c\x91#\x99t\x10q^il\x7f>6\x81d\xe0c\x94\xfa\xae,n\xa8)\xa1)J\xfd\xea\xe8]\xe2\x9d oG\x8d\x1dP\xd5\xcf\xea#z\x92\x9dy}1\xfc\xc1 \xa3\xc5\xb30\x11\xb5\x08/\xb0\x1f{b\x95%u\x85)\xbe}\xf7b\xf0oklI\x14\xfaU\x1e\xd2\xea\xffbS\xb5%\xa4\xd06/\xaa\xddHU\xceS\xf4>.Q\x04k\xdb#b\x9b\xd9;\x9f\xc6\xd0\x07\xe3\xa6i\n.\xb7O\x1e\xf7P\xf2\xf0\xcb\x1c\xd3\xa5\x8d^\xba0\xc8\xe1r\x06:\xdfC\xd9\"\xc6\x9a\xdcwly\"&I\x04d\x88\x04\xe9!\x89]\xb9\x12C|\xa7\xcd\x94\x12\xb2\xc9\x07j\xef\x1d\x8a\x8a-n\x9e\xaf(#\xcf\x17#O\x1b\xffv9H\xbb\x08I L!\xe9\xac\xebBd\xb3\xf2\xef\xd5;E\xb5-\xc5\x01\\r\xe6\xbe\x94PWiT\x0f\xe4N\x98\x0dHU\x9dH\xa9P\xb2\xa0\xa8z\x9a\xd0\xf4\x9b\xb6o\xe8@\xee\xc65\x10\xa3WT\x89\xf4\x94\x9d\x03\xa5\xb7\xabI\xb9\\\xd5\\\xe8I\xa3\xc6?\xe0\x93\xaa\xccO \xbf\x05\xc2\xea\x83F\xdbZ\x95\xf5\xfaK\xcb\xb9\xe2\xf2\x9e\x92\x98\xa6\xe5Q\xf5\x8c\xd0\xe55\xdf\xa2\x92(o\x168Qws\xfa\x98#e\xb4i;\xc3\xde\xdd%\xdf\x05 \xe50\xdf\xbe\x14\xd6\xbf\x97b}\xaf\x9b\xfa\xa6h9\xbb\x19\xed1\x96\x1bdy\xec($N\x84e\x89\xb6\xed\x1fC\x8a\xfaX+\xa45\xb1\xc3E\xb2\xa6\xdc\x9b\xc6\x8b\xc2\x1c\x85\x1ci;\xd2\xd37\xe6\xa0\xb1\xd4$p9\xa4\x80[O\xdd\xd9\xbe\xd2\x9bs\xf44w\xdbz\xf6\xf4\xf6\x07\xc43\xad\xfd\x0bi\xd3\xe9\x0c*\xc5\xe8\xdc}\x14\n\xf1s'Pn\xff\xd1\xb3w4X\xb03\x9ac\xf0Hi\xe5\xa8;J\xe6\xe4'\xb9j0\x86\x0e!\x0d8\xce\xd8!\xce\xdcSZ\x18\xc7\xe4\xc1\xcf\xe8\xc74\x96B\xbbHE\xe0Na\xfe\xe0\xbb\x00R('\\\x04\x10\xba\x0c\x82m\xc4\x1dP\xe9\x17\x03rgm>\x16\x07\xda2r8J\xb46\xb5J\x9d\x93F\xaf\x86\xec\x15lN\x02\x9e\xa6,nhE\xdbam\x05\xcd\xa4\xcc\xe1\xb0\xfa\xb0jY]M,o\xe6\xf4\xf7\x8f{*\xca+\xc8\xc5\xb46\xcd\x9e\xb4\xb0\xa2\xb42\xda\x84'_\x8a\x92w\xbc>1\xb7\xf0Q\xf7\xa9\xb3\xce\x94=\x15Q\xb7\x85\x087\x85\xbaZ\xd3\xc1\x9c\xc8=%\xb4f\xfa\xf3\xa9\xb8\xa9\xd7\xca\x9b\xd7\x18b\x9a~Hu/CS\x87\x0d\xad\xebj[\xecN\\`>\x14\xed\x8a\xee\xc9MaW?\x91{Go9\x11\x05\x96\x9c\xc8:\xf5\xbc\xbe\x04\xd5\x0e\xd4[\xd5\x01xr\xaa\xe4\xee\x7f\xaa\xcc-z~N*\xd4YT?\x19\x10:U\x15]\xd3\xb6%\x8dS\x1d\xa8\xa1d\xd3\xda\x07\xc4s$\xfc}\xfdI\xaf\x86q/\x98\xd1\x12\xfa\xcf\x8f[P\x9c\x1f8\xe7\x17\xb7\xd0\xa1\xae\nV\x0f\xa6\x8c\xedia\xad\x91\xde\xe8\xc0\xaf\xe1\x9b\x82\x99H\x01\x92#\x0f\xaf\x15}\xefY\x0d\x8a\x18h\x8d8pCJ\x11\x9c\xa1/\x93\xaf\x0cjvv8r\xdd\xa5\\\xab\xc6g\x8a\xda\xfb\xebWzT\xa3/\xda\xf1\xe2\"v\xbb&\xe9Q\xc9\xe6\x00\xf4\x1a\x0e\x1c\x04\xffU\x1c\xf8(t~\x1e\xe2B\x0e]\xc9\x93\xbb\x19\x0b\x05\xcc|5\x07.\xe7\xdc\xd7\xb3\x07H4\xe7\x15\xed\xbf\xa4C\xd7t\xd2Z%\xc1\xaf!\xeb\x95\xf3\xba\xc6/l\xff\x95\x1d\xba\xb4\xe3=\xcfyq\x07\xae\xee\x99\x97\xb7CM\x18\xac|\xd7w\xca\x05\x9et\x85'\xed\x99)\xe7;\xdbU\x1e\xbc\xcc\xc7\\\xe7\xe1>\xcf\xb8\xd2\xed9\xef\xaew\xf7RO\xb9\xd6CW9)\xcb\xbe#\xfaPa\xa9o#\x14\xcbs\xca\xda9eM\x7f\xe1_C\xd9\xa4! \xd6VI\x80\xa2\x12\xa0\xdc\xbdp\xd8\xa1\xcd\xdf\x8a\xb9\xb6\x11\xe6\xd7u#_\x14u\x04\x94|\xda\x81\xf7s\x9e,\xf8\x819Lkl\xfa\xcd\x0f\xf5\xa1\xef\x14\x8a\xde\xdf\xd0#\x15Af\xdf\x90\xa6\x9bY_M\nk\x8cbs\x0d\xebQH8\xfe\x98\xc4<\xca\x12e~\xa7\xe8\x8d\x91\x991\xae\x95,.;\xc2,\xb2\xc1q\x01\x16= \xf8m\x91W\\\xc5\x05\xd5\x11\xdd\xf1_\x01s\x05Ry\xeb\x18\x04\x07\xa2\xe8L!t(t\xce\x127\x9d\xbe\xdaw%.b\x06g\xd9\x15+\xfd3\x9dK\x94\x1c\n\x91\x98\xf8\x88\x0b\x8e\xfe\xbe\xe5\x12\x16Q1q\x96\x80\xa8\x05B\x83\x9e#\x1a\x86\x85\xc2\x8888\xf5\x14Y\x17\xc5t\xb1\xcf\x12\xf3z\x82i\xf2\x1d\xbe\xa03d:\xd7LcIs\xa8\x1c\xa7\x994\x135l;\x1e\xfdM]m>\x18\x15S\x9cy\xb6\x93X\xbey\xf7\xf6\xb5\xbf~\xc7\xf0\xef\xfc_\xc1?^\xbd\xfd\x0e\xfd\xab\xf1a\x17\xff\x1dj\x1a_\xf2~l\x9d\xcc*\xff%r\x7f\xba 6sP<\x8d\xbc\x004\xef\xa4\x82\xa2RA\xfb\xdd\x19\x19\xd4\x8f\xc1\xa7\x84\xd3\x93\xff\x85\xad\xb8tn\xab\xba!\x92\x89\x07\xe9]\xbd\xfdN\x13\xbcz\xfb]\x90\xe2\xa9ZI\xc9\xc6CPw/\xa1s}\xc7<[\xeb\x15\xe7\x16\xa2\x9aB\xf2\xa5\xbf\xee>\x11\x11\x8a\xbe\xf0K\x8b)\x0e\xbf\xb1\x824DMqaY\xd4/\x81JZ\x122\xa2\xf6\xe6\x99\xe4\x1aJd\xa8\xb0\xb9C\xf4_G\xe8.\xbc\x9dD\x11\xdd\x1a\x1c\xff\xae\x8b\xb3\xb5\xbb\x0d\xeb=iv\x92-mhIwB\xd5\xba\x00Q_K;E-39\xb9[N\xed\x87\x8b\xf6\xa6\x88Y\x13\xacC4\x87=\x1d\nRk\xc72\xc2\xe5\x165\xa0\xc8\x08d\xa8]\xde\x81\x184\xd1\xf1lHQ\xdeK9\x8b\xb4\x1a\x04~@gp1\x8a\xd1{\x86r:r\x19d9\"\x16\"\"\xb3\x18\x04\xf5f)I\xcbT\xa9\x04d\xebp\x81U\x0e\x1aK\xa3\xea\xcfj7\x1b\x06\x81A\xba\x80\xce\xea\xb3\xceG\x94 \xbc\xef\x0ft\x02'\xb0\x17\x1b\x9d\xa9\x0795\xee\x89\x89\xb7m'\xdd\xce<%\xe2\\\x98\xfc(tB\xbc\xa7cB\xa7'\x9d\x08C\x944\xba\x1c>\x0dx7\x06\x1be\x06\x17\xd7\x1c\\_\xeb$i\xa3\xbe\x96;c\xccm\xd5m\xa6e\x8a\xb2:\x18\xb8\xf3\xb1\xde\xbd\xb4Z\xd7\xaa\x92\xa1 \xa4\xd0\xbd\xaf\xd7\xbe\x1b\xd4\x94\xd6\x9d\x8f#\xad;Wa\xbb'\x8d\x1b\xde\x1ajR~\xa1\xd6\xd5\x1c\x12_N\xf5\xc7\x86\xaeiq\x83r\xa8N\xaa\xeb\x17j\x18\xa6\xc3%\x12\xa5\x8e\xd6_h\xd5\xc2\x9e\x96\xa2`\x0e\xa9\x80\xac\x85\xe8\xaf\x84{E\xaa\xbe\xaddE\x9d\xba2&X\xa6\x7f\x17\xad/\x0fP\xe4\xa3\xd6\xb7R\x8b\xa8+:\\\x8f\xa4M6\xda}\xb8\x19\xecO\xf43\xfcS\x08\xefUH\xbeIg\xefY\x08\xef\xdb\xf4\x9e\xcc\xde\xbf\x80\xec\xe1\xf4\xe6\xc7\xefe\x87\x84\xa5\x98f\xdc\xd3\x90{_\xc3po\xf3gEJR\xb9\x81\xc3\x89[15\xaf \xab\x07\x16g4\xd6\xccN\xae\xfb\xd5\x93\x98S\xee\xab7\x92\xea'\xad\xa6W\x8c\xf5\x99V\\a\x8a!%\xad\x04\x88\x99\xb1\x95\xe8\xdd\x9a\x1e\x99R\xd8X_\x8e\x99\xd8\x8b8\xacm\xab\xf6ogl\x14N\x88\xf6T0a\xf0\xe7\x02\xe0\xba,xk\xdat\xdc\x069^?\x90TVw\xa8\xab\xe2K\xd4\xf8cM\x91\xfa\xc4X\xe9\xfd\xe9@\xaag\x0d%\x1b\xd1m\x11E\xae\xad\xdb\xcev.6\xb4b\x05\x0b\xe7\x14\x85\x04(M\xc0\xb4\x0d\xc8lqR\xf6\x7f\xec\xd6\x1e\x9e\xd0\xbb\x05|\xba\xae\x1bf{W\xff\x95\xde\xafHK\x9f\xea\x8e\xdd\xd2U[\x8c\x13\xec\xd4'hO\xf4\xdf\xca\xa2\xfa\xd2\xdd\xe4t}j\nv\xbf\x14\xfbc\x1d\xb3\\\xdb|p\xf0-\xda(=\x90\xa2\x14s\xaf_\x07\xf5\xba\xee\xc2\x862R\x94\xa3\xa4 \xf5\x89f\xc1\xb5\xb4\x8b\xea&\xd5_\x91\xb3d\xecG\xd4\xbaa\xbc\x1c\xd8\xd5\xdf\x17-\xab\x9bbM\xcaQ>\x8d=%\x1bw_'1\xcd\x1b\xda\xb4\x85\x13|-\xdd\x17+\xd2\x16kew,\xfa\xf0\xa6@\x1b\x10\x88\"R\xe1\x1d\xc3\x1f\x03W#\xc4\xc0\xb6\xc9\xf1\x98\x8f\\X\xb7\x7f\xc5\x19R\xd5\x9eZX\x93\xa3d\xb3R%\xd4?7\xa7\xb2\xc7X\\\xd3\xb6\x95\xb6\x1e={\x03r\xe2\n\xe6\x7fZ\xefIQ]\x0c\xbd\x98E\xb5.O\xb2\xe0xY\x1a/\x82\x00EjYsZ\xcb>h@!\xd9:jM G\x89\xeaQ\xd4\xd5\xe3\xd6 \xbdd\\-c\x0d\xa9d\xe9O8\x90\xf5\xbe\xa8\xac\x10\x15\xd1rj\x81\x91,\x01\xd8\x13B\xef\xb1\x08\x1fQc_L\x9e\xdb{]U\x8e\xded\xdc\xe0{\xd2\xee'nH'\xb4@\xe4\x81\xb0eK\xd9rx\xbc\xf5\xe3\xed!\x04{)>u\x1d\xfd\xdd\x9f\x04\xd5\xa2btG\xdd\x00\x1d\x88D\xc8\x80w\x1a 6\x15\x10\x9e\x8en\xd1\xaeI\xc3Z\xca\xbe\x17\xb32\\n\xe9JZ\xba]\x88\xee \xa7I\xd5\x1c'%\xcf\x96\xdc(\xfc\x08\x1a\xef\xf1\x7ffh\xae\x8fp\xc9@l\xd8\xf7mS\x1f\x04\x9b \xc7#\xd4'v<\xb1\xfe\xb7\xfe\x0c\x18\x14D\xe8J\xd6>u\x9c2\x03-r\x8d\xff\xb1\x1b\xe0\xa9\xe9\xfc7X\xd1\xf5\xbe\xb3\x19\x14\x15\xfc\xcb\x87wo\x17\xd6\xfb\xfdy8\x9eVN(Z\x90\xb9\x87X;\xfflyjP\xde\x1e\xe1\xbe\xb1Y\x02\xe1\xe9\xfe\xf4\xfe\x87\xcb\x86\xb6\xf5\xa9\xd19\xb4B\x0f\x94\x18\xb0\xe5\xbdRJ\xb6\x85\x9a=\xa6\x90C\\\xb9D>-m\nR\x16\xffN\xd1B\xd5b\xac\xac^\xd7%\xacN\xdb-mt\x18\x94\n\x19\x91c\x91Hf\x1a\xc5\x8c0()i\x19N\xaf\xae(<\xba|$\xcc\xdfd\xcdh\xb3\x10\x1a\xb8\xf0q\xb4t\xc7\xf5l\xbd\xd2\x9f\xde\xff\xf0\xb8\x85#a{\xd1\x00J\xae\xb3\xaa\xe0\xadq2\xdbSY\xde\xc3\xcf'R\xf2Y\xd9\xc89SM\x88\xd9yB\xf8\xf1\xc6 |\xe6\xcd_\xee\xeazW\xd2\x85\x98\x8b\xd5i\xbb\xd0`v\x9f\x9f\xca\xde\x0b\x92\xed\xbe>\x95\x1bXQZ<\xd2\x1ec\xb2\xe6j?\xdd<\xc5\xab\x97\x03\\Up\x14\x16\xf95\xbd\x00F\xc9\xa1\x85S{\x12\x00\xc7G\x81\xf5y,J\xde;\x85 \xba**\xd2\xdc\x1b\xf9\xec\xf6\xc3D\xfa\xbb\xd8\\lO\x91 XP\x85}\xd7\xc2\n\xc1j\x05\x97\xa1\xe5rF\xef\xc4R\xbe\xac\xee\x17\xf0}}Koh#a5>\xbd\xff\xc1=\xbb\xfc\x91\xa6 N\x06\x0dv\xe7O\xbb\xde\xd3\x03\x85\xcf{\xc6\x8e\x9f/\xe4\xff\xb7\x9f/d\xe8\x8c\xfa\xeb\x85\xd8ekCW-\xef\xa1\xa5\xf8\x0e:\x1d\x81\x88\xb1z\xda\xa3\xcd\x0dU\xce\xf1\x039\xb6r\xcb\xf0\x11\x08\x1c\x1e\x15\x14(\xf8\x95\x10\xe0[ \xf8\xd8\xb6uY\xd6\xb7\xed\x0b\xcf\xda\xfd=\\m\xfb\x11\xf0%\x17XV\x1b\xba\xe9\x06\xa9L|\xa7\x03\xdd \xb5>$\x91\x97\x15|\xff\xf1\xe35|\xf7\xe6\xa3\xae\x02\xff\xe9\xfd\x0f\xf2\x80\xde\x0b\xf3\x16\xbe3\xff4\xdc\xe2\x1f\xef\x8f\xf4\xcf\x7f\xfa3\xfa\xb2B\xf5\xe0k\xad\xf6\x90\xbc\xd7\xc4*\x1c\x9bzsZS\x11K\xd44\xc3\xe0p\xfd\xfc=\xbc\xec\xd5\xa2V\x84\xc5\x12>?\xd2\x9b\xb7&k\xce\x13\xea\xfa\xcb\xe9\xd8EP\xaeHK7P\xe3\x15\x82|\xec\x0d\xf8\xf0E\xbfD\x0c\x1c\xdb\xd3\x83q\x166\xf20\x10=\x8c.*\xc8\x8ex2\x1f\xd9)q\xec\x1b\xba\xad\x1bz\xa1?\xe64 +VEY\xb0{Q\x92@\xfb\xb1\x04\x8bjn\x90\x84\x0b\xf9\xd4\x95\xf2\xe0\x8a\x0f\xc4\xb9[\xc0\x93O-\xd5\xd6\x01>+|\xdbq>#\xf7\x1d\xa9\xc8\xce7\xe2UC\x85UC\x13]<\xc5w\xcb\xdb\x9a\xd1\x17\xc08\x1f\xdf\xaa\xa0?\"\xfa\xae\xf8\x8d\x02\x03+\xef\xcd\xb0\xe0\xca;\xd5\xb5\x88\x87v#\x82\xe5\xa37\x164\x94\xdf\x0eT\x19\xad\xbbp\x98.\xff\xba?_+\xba+\xaa\xca\xa7\xa9\x88\x1c\x19/\xe3Z\xc8\xfdL\x8eE\xbbX\xd7\x07\x1f\xc7\xfc N[\xab\xccLlO\xaa!g\x81'\xca\xb6(\xc3\xba\xe5\xf1|\x8a\x12;\x88`\xd3\x95\x87\x91\x88\x01\n\x03ugPVn\x85#]\x17\xdbb\x0d-=\x90\x8a\x15k\xa4\xac\x15\x82\xa2#\x9f\x88H\x11T\xe7\xd2$\x8e\x1f9\xebXu1\xa8\x86\xc0\xe0\xc8\x06\xeaR%\xab\xfa\xc6#l\xc8\xa1\xaa\xed<\x1cf\xac7\x9f_V\xf7\x9f\x0dkwe\x00_\x07z\xa5x\xb4C\x8e\x94u\xb5S.\x03w\xc98\xd7\x14L_\xf6j\xe5\x8aSf\x9bZ*B\xb6\xd9\xb5\xde\xf8e\xb1\x12]U|\xbd\x85\xf6t<\xd6\x0d\x93\xa5@\xd6_.O\x15\xff?~_\xca\xf5n]\xb3\x95\x92hP\xe1\xa1\xde\xc2\x89I\xe6\xa3\x8fs\xcb\x19\x9fv\x01\x90\x12v\xb4\x12\xd8\xce\x1b\xe5\xbe\xe8\x84\xea\x97\x08\xbf\x93K\xe4\xb6\xf3\xe6\x8e\xf0\x0d\x0c\xcf_\xc05\x91\xc9o\xa0\xbaN\xba\x0b\xb1\xa8\xe0\xd5?\xfc\x83\xe7\x9a\xfa\xb6\xaea[\xd7\xf0{X,\x16hT\xbc\x98\x04R\xdd\xe3\x7f$\xd5\xfd\x827\xfdmS\x1f\x9el\xeb\xfa)\xfe\xdab\x81\xdf=\xc5\x16\x9ep\x12\x9fD\xa7?\xd6O\xfe\x8e\xd3x\x8a\x07\xf3\x07\xe8\xfc\xc5?7_G\xe6\xe6_\xc8\x0d\x99=9\xf0{![q\xea3f\xa1h\x9f|[\xd7\x8buI\xda60 \xb2K\xfc\x039\x1e\xe3#\xbc\xdd\xbf\xa0\xbf^^\xf2-\x19\xef\xd3\x07r\xa0\\\x04y){\xb7\xa3L\x95\x99\xb9\xaaZF\xaa5}\xf2tlgQ\x1a\xbe\xbe{W\xf6\xb7\x91\x95\xbd\xbeg\xfb\xba\xf2\xac\xad\xec\xd7\xb7u\xfdd\xb1X\xe0\x97H\xb7\xaeO\xbc\x7f\x17{_\xac\xf8\xd8\x05\xe7\x1f_\xc9\x19}\xfd\xe6\xc3\xab\xf7W\xd7\x1f\xdf\xbd\x7f\x8a\x9b\neS\xf2\x8c\xf8\x1b\x93\xcdyg\xeb\x1f#\xb3\xf5]\x8dO\x94\x98\xa9\x17\xbf\x87\xbf;\xae\x16\xdf\xd6\xf5\x7f,\x16\x0b|?\xf1N^pA\x93\xbfM\xaa\xfb\xe3j\xf1\x96\xde\x06\xfa[l\xc5\xdb\xff\xe5\xf7P\x15\xa5w\x03y'\xd1\xb3\xad\xfd\xef\x0f\x06\xe2\xf9\\\xf5J\x8ea\xf1\xa9:\x90\xa6\xdd\x93\xf2c-\x0f\xf6\xdc.;\xbf\x7f\x14\xe07\xeb/\xdd=\xa0\x95\x0dX\xdd\xf7\xa2\x9a\xbe\xb1df\xdb\xbd\x0e\xd9v\xa8\x9dZD\xe6y\x8c\x88a\x97\\\x17_\x88?pQ\xf61\x10\xe3V\xe57\xaer\xa7\xb8-\x88\xbd\xe36\xd2]cUy\xaf\xf5FG\xe1\xefDg [F\xa54W\x12\xc4\xa0\xf0\xf8\xf2\xb1\xdb\x84Rhu\x17\xa5\x06K\xd5\xfe~\xb4\xad\xeb\xc5\x8a4bpw\x97\xf7\x8b\x7f\x7f$gK\xeaZ\xb8Z)\xba\xf2\x88\xbf\x8b]\xaf\xff\xf2\xe1\xdd[\xe4g\xbeb\xfcO\xbd\xc5C\xa5h\xf0S\xadD#\xa9\x95\x9d\xda\x0e\xc8nw* \x92\xc5\xeb\x92\x90\x91.\xbd@s\xd1g\xd9\xa9\xd3z\xa1$%\xc4Nb\x08\x182\x82\xe2\xf3\xff\xe0\x03\xff\xac\xd4\xf9N`3\xa7q\xa1Y\xc4\x0b\x8f\xba@\xd6_8\x8f\xe8\xd5\xd2mQR\x9c[k~rM\x9b\xb6\xae\xbc\x07D\xd9\xaaD\xd6\xd7R\xac\x81/'\xaf\x7fY\x98\xa8\xd5\xbb_'\xdf\x15\xfc\xf1\xf5\xe2\x91\x98\x9bG/\xe0\x11v>\xec\xe1.\xe4\x88\x1e]\xf8h\x89\xb1\xbc%\x07N\xef\xbf\xcb.\xff\xc1\xfb2\x1f\xcb\xe0\xdd\xd4\x01]m\x95\nd\xef \xb9\x9aE\x0b\xb7\xb4,\x9f}\xa9\xea[\x19n\xb3\x17\xc1\xa1*PF\xee\xe7!E{\x0b^HQ{\xb0/\xfb\x84Z\xd5,\xdfh\xd5\x0e\xb1`\x88m\xe76\xf2Y\x1c\x08\xbd\x0f\xf7u\xb9\xb1Bx\xc4q\x1a\xc4\xc8\xf0?\xab\xed\xeb\xd2\x13\xcdt;\x17\x9e\x88\x8c\x1d5\x15\x8e\x01E\xdb\x08\xff\xfc\xa7??\xf5l\xf2\xb9{\xc4n\xc8\xbfM\xc44pr\xcf\x17_?\xff\xba}\xe4Yv\xf3_2\x0d\x0e\xb7\x89O\x03D\xd0\x89u*\x0f\xf8V\xa5\xbcY&\xfd>\xdbM\xbd-\x9cd2!\xc5!\xa8s~d\n\xe3W\xee\x9f\x86\xbd\xb7#\\\xac\xfc\xa1a\x9a\x0f<\x91\x8d^vy5\xea\xbf\x84\xf5\xd5&\x1bP\xc1}\xd5\xbe\xc2\xd9V\xfe7\xad\xbc\xab\xf0k}\x06\x96\xef=\x94XRV\x96~d\xe4\xe2T?\x90\x8a{tc-\x85\x0dP\xfc\xedIQ\xad\xcb\x05\xb4\xb4\xdc>\xeb\x031\x07+\xd0\x07\xafbq\x9f\xe9\xfdA\xf6\xec\x90t\xef\x97\x92\xc5G\xe5\x8fE\xdb\x9eTJa\xd0;\xd5\xe7(\x0c\x070\x08\xa5\xc3\xffd\xfe\xc3r\x90\x99\xbf3\xda\x1cZ\x7f<\x9c~\xd84\xe7\x96\x13\xc0\xd7?\x11CT\xce\xa0\xbe\xfeq\xc3\xfb\xfagL\x87<\xa6\xaf\xe9\xc1\x7f(\xb9\xbaq\xc2\x00\xfb\xc7 \x08\xec\x9f1#\x19\x1b$\xd8?\xfep\xc1\xfe\x19\xd3\x13\xcf\x9cN\x8c,Di\x0d\xa2\x0d\xfb\xc7\x89;\xec\x9f1C\x18\x11\x8b\xa8\x9f\xee\xbe\xc8\x0b\xbf\x15\x9b\xd9a\xb3zV/\xb8f\xd9\xfdQ\x96\xc2\xdb\x0f@\x11\xd8\xbepy\xd5\xf0J\xde\x9d*$\xc7t\xd0\xb6\x1b6\x964\xe0\xa9\xe0Pv\xc3\xa1!\x1f\xb8\x12W\x1c\x86\x05\\\xfa\xc7\xc8\x82\xad\x85#\xa7\xa4\x8c\xfa\x06\xbc\x1e\xe4\xbf\xf6\x8f\xd5\xe3\xb5\x9bz\xc7\xec$\xb6>\xfd.\x13\x7f\xf6\xa7\xd9\xf6OlV1:#\x92\xb6Pz\x9ds'\x9c\x84\xdb?\x81\xf1C4\xb6\x0eK\xd1\xed\x9f\x08\x03\x80\xc4)\x02\xd5\xcc\x84\xdcD/=,O\xb6\x7f\xf0\x9c\xdf\xfe\xc98\xb0\xf1\xb9\x8e^Rn\x0ed<7\xb8\x7f\x82Y\xc2\xfd\x93y\xe8\xa33&\xbd\xd4\x98\x0b\xb3\x11\xca&\xee\x1f4\xaf\xd8\xa0\x9b\xe6\xf6\xf3qVH\x9c\x90)\xc9\xc88C1\x13\x94\xf5#\x90\xcdi\xb9]b)p\xf2\x99!\xbb#\xd4\x1dm\xefq+t\x0b\xd8\xd0uI$~\x89(\x1e\xe4\x10SoiB\x98\xdd.P\x8aB?\xfd\x85UW\xcb}]n\x96\x0d\xdd\x0e\x0b\xa5\xcb'\xe1\xda\x0c\xc0t\"\xd3\xc1I\xadYy\x0f\xc7\xba-XqC\xf95)|\xff\xe6lt=\xec5\xf1\x96\xd5\xc7#\x86\x15y\x0f\xf4\x8e\xd1\x86\x8bB\xaa\xc8\xafg\xb0\xc5\xc6\xa3\x93\xcd\xafM\"\x9f`\x8e\x82\x7fJ\xca\xa2\x15\x01J\xfd\xa0\x8bM{\x01\x94\xac\xf7n8\x9d\xa81g\xbc\x8a\x1cz{6\x8d?\x87\xb6\xeaOF\x86\x8a\x93\xb5r\x01\xac\xdeI;I\x97\xd0'UO\x95\xb1\xa6\x02\xfbp\x8a\x8f%\x96\x87VS\x95m\xbdh\x80\xde\xa9\xf2^\xe2\xcc\n\x89\xa7\xa8\xda\x05|P@_\x169\x1d~3\x8c\x90#\xfc\xd4H\x06\xa8L\xe4\x16\xd9\x0b\x19\xcf#\xc2P\xea\xa6\xa1k\x06kR\xaeO\xa5\xb69[\xc4\xb6'\xae@}5\xd8@\xfd\x81k\xc5\xf8\xeb\x13\xe3\xfb\xa3\x91\"D}#T\xc8N\xa7\x86?\xeei%\x87\x02\xa4\xb1Y\x9eiY\xb0[\xb1\x17\xedb\xc0\xb1\x8b\x96\x8b,\x9b\xa2K\xa9$fB\xe8\xed\xben\xedv:D=\xbb\x11s\x19\x8a>\x92I4\xd6\xaf\xa4\xecz\xdfUQ\x9cJ\xbad\x862\xab\n\xcd\xb1[\xb1\xe6\x7f\xa1*\xe8\xaa\xccO~\xf9\xaeh\xb7\x04t#\\/b+)41\xd9=\x9b\xe2\xe1T\xb2\xe2X\x16\xb2\x136}\xf1\"\xbe\xb3\xed,\xaa\xde\x01 c\x96\xc5F4\xa6\xb8\x92\xc7\x97O\xa8\x01B\xa1H\x89`\xe7\xce\xc1\xa8@\xacX\xdd\xc8\x01\x1cI#fN\xa5q)>\xc4\xb9:\x13[P*8G\xda\xc8\xd2\xe0\xc2\xb8[}V\xc4\x0eu\x1f\xa3\xdaPQ\xd1\xcd\xee\xb8\xfe\xe3\x93\xcf\xd5g\x0d\x9e\xa5\xabC\x0c\x1b\xfc\xbc\xef>]\xd2\x8a5\x05m?\xf7\xf2\xbd\xd0\xf7=)g#\xab\xd2\xf8\xb4-\x94AZ\xcb3P\x97\xd4](U'\xa38\xb3\xa3\xf4p\x89\xa8\xcfD\x18\xb68\xccSI\x80\xee\xb2 \xea\x8eh\xe1\xaa\x07\xa5\xec\xdf1\xbb\xa2f7C?\x1c\xa4\x0cE\xda\xe8\x11\xe8\x9f\x84\xd3\xaf\x10\x9c\xb8\xbf\x03\x0cV`\xf1\xfb\x86\x1a\x7fyr\xa4\x0d\x1cI\xd1\\\xb2\xa6\xa8;\xcb\x8f\xbb_2\x8c\xc8%\xaa\xc7\xd2\xcfj\xffN78V\xeb3\xa2{\xc7G\x98Tx\xd8j\xbe\xff\xca\x12\x9b\xf9\xcf\xc2\xac\xb7\x969\xdb}rv\xb7\xaeE\xb5\x1c\xe8\x9c\x91v\xb1[\x1d\xa1\xd2ig{RT\xcfn\x8b\x0d\xed\xeaC\x0eEW\xe1\x812u3[s\x91J\x8b\xba@\xfb[\xe7+g\x12R\xab\xf2\xda,$\xc4 \xea\xbaLf\x0fU\xcdTm\xcb\xe5\xd0:\x8f\xccc\xea\x9b\xd6\x00\xfb\xaa\x8au-\xc0d\xfb\xd0\xcd\x86\xac\xc5\x98\xd4\x95\xc2\x19}U\xb3g\xea\x9f2G\xbf=\x1d\x8f\xe5\xbdv:\xf3?)r\xc3\x8d\xe1\x99\x0e\x81`\x9a\x05oc\xd9X\xdf\xa2\xdf\xe34l:\xb6\xb4\xea5]\xf8\x8d\x16\x11\x0c\x0f\x88\xc9\xbf\x03\xa3e\x06,\x0f\x88\xe3y\xc0\xa8^e\xc1\xf5\x00\x0f\xb6\x07\x8c\xea\xca4\x8c\x0f\x87\x8c\xa3P\xcc\xc6\xfa\x18\xd0+\x9cd\xe1\xf9\xf0\x1fC\x82\x95\x13\x9e\x82N\xbc\x83\n\x02S7\xba\x83\x10\x02\xe1\xb5\xc3\x90B\x82\x9f\x84\xd7h2j\xc8\x80\xce\x1c\xe8\x90\x01)\x05$2\xdc\xe6Ih\"\x10\x1cp\x1eT\x11\x83\xa0\x15&=\x13d\xc4\xa0d\xc1\x8d\xf8\x06\xe4a\xfb\x10)\x0dk\x8c/P\\\xcc\x0d\x95tG\x8d\xeb[\xb6{\xca\x7fS\x8d\xeb\xd0\xf4\xdb*\xc6\x0b\xe7\xdeX\x0e9\x89V\xe5\xfc<\xf3\xd6r\xe9m\xb1{\xcbssy\xee\xae\x19\x87\x01\xbd\xc1\"k\xea\xbb\xc5f\x19\xb8s\xddeYo3\xdf}6\xe6F\x0b\x0f}\xd6\xadfQ2p\xb3\xb0\x1d\x93\xe1fs\xee6\xf0\xf0B\xeb~\xe8\x17U\x15F6\xec\xa0\x8f\xfb\xb2,._\xc4\x8a\xb2X\xad\xf5/\x0c\xf4\xd3\xeege\xca\xd5}\xe9{=B3:\x17w9\x17w\x01\xef\xfaEe+\xafHg\x12\xb8\xc4(\x18\xa5u\x93\x85\xbbO\xda\x9a7G\xca\xebM\xab\xbf\xac\x907\x1f\x8c#\x93,\x16\x95\xc3R\xfb\x93I\xferL\xaaf/F\xbb\x1d'!<\xc9P\x97\xba\xf2\x04\x82\xc9'\" \xc6\xa1\x9e\xe2b\x82|\x06\xbd\xd1\xb3\xaa\xfe\xd5\xd7B\xe9\x8d\xdb\xac\xae\xbfx\x88\x1dKQ\x87\xdf\xfd\x83\x8a\x9c\xe2\xed\xf8\"\x17F\x8c9\x14\xbd0\x18\xf7\xa0a=\xbcSU\xdc\xf5\x81_\xfd\xd8\xfa\xd7\xb1Q\xa8\x00\xa7\xa5Gr\x94Ot\x14i\xeb2h\xcb\xba\x96\x95\xe8\xad^)e\xf2\xf9\xe6TJ/&NO\xa9\x02@Xd\x90\x19\x07\x17\xe8;\xab\xd3{d\x06\x0cL\xecV0\x10@>\xea\xf6\xbc\xd2\x85\x96\xa4\xdb?\x84\xa1\xc3\xa5\xcb\x8a5X\x08\xea\x88\x80\x0e\xd5z\xea\x08\xa2\x03\xf0\xee\xa8\x0f\xde@\x0f1\n4\xc8\xc3CJ\x85~DC= i\xbb#7\xed\x1b\xde#3\x02\xd8\x88\xaf\x10<\x17\xaf\x84\n\x02D\xe2\x86T\x8c\xdf\xf6dC\x18 \xaa\xbe\xda\xcfEdQ8\xdc\x83\xa7^JUC\x90\xd1H\xc7\xb4\x14\xdb\x85\x80\xde\x16\xd5\xae4\xeeLs\xee-b\xfc\xb7\x81\xe6,]\xe1\x8a\x82\xe9-\xe7\xd3\xc4Y\xda\xb3\xba\xd9P\xaeD\x95\x86\xdf\xee\xac\x01\x9c5\x80\xbf\x0d\x0d`x~f\xa8\x02ARSt\x82.\x82j\xb4\"\xd0\x1d\xd4\xa1\xf8\x9ftl\xc2\x08{\xde\x9d\x12f\xbd\x13\xb1\xf5z,\xbd\x01\xbd\x18\xb2^\x18W\xcf+P\xfb\x85i\xe6E\xd4\x0b\xde\xa6\xf1\x0b)3\x96^\x18I//\x8e^V\x14\xbd \x86\x1e\x9b\x87\xa0\x97\x13?/\x8e\x9e7\x19;/'r\x1e\x8b\xe3\xe6\xe5D\xcd\x8bb\xe6eF\xcc\x0b\xe2\xe5MA\xcb\x0b#\xe3e\xc0\xc5KB\xc5\x1b\x87\x807\x13\xff./\xfa\x9d\x0f\x90-+\xf2]~\xdc\xbb\xac\xa8wi\x98wY\x11\xefBxw\x99\xd1\xee|Xw,\x15\xe9n*\xce\x9d\xc4\xb4C\x08\xe2(w30\xee<\x08w\xc1+>\x88n\x17\xbf\xff\xf3!\xdb\x85p\xed\xc2\xfd\xc8\x8ai\x17B\xb4\xcb\x84g7\x0f\xcd\x0e9I\xd8U\x9e\x17\xc9\x8e\xa18vsQ\xec\xa20m\x01\x04\xbb$\xfc:\x1c\xcei\x1cv\x1dN\xc3\x01x\x99\x8dZ\x97:\x19)\x88u\xe1q'\xa1\xd5\x8d\xc4\xaa\xc30\xb9B8uyP\xea\xe6a\xd4y\xd7p\x06>]\x14\x9d.\x8cM\x17C\xa6\xf3N\xe6\x18T\xba\x14L:\x04\x91n&\x1e]\"\x1a\xdd8,\xba$$:\x0f\xa8\x1b\xda\xbc\xe7\xdd\x14\x04\xba\xf9\xf8s\xde\x8e\x0e~\x9d\x85<\x87!\xcde\xc4\x99\xc3Q\xe6fa\xcca\x98r\xb9\x11\xe5Bxr(\x9a\\>,\xb9\xacHr\xf9q\xe4\xd2Q\xe4\x920\xe4\x94\x95&\x05AN\xbd\x1a\xc5\x8fC\xd1\xe3\xf0\xd6SQ\xc1\xe2\xc8q#p\xe3\x12Q\xe3\x9ca\xe4F\x8c\xcb\x89\x17\x87\xa2\xc5\xe5\xc5\x8a\xcb\x8b\x147o?$\xa1\xc4\xa5`\xc4\x997\x07\x86\x0f'u5\x0c\x1d.\xac\x03eF\x86\xf3\xe2\xc2a\xa8pv\xacm&L8\xaf\xd2\x8a\xe1\xc1\xa5\xa2\xc1%a\xc1\xa5!\xc1Eq\xe0F\xa0\xc0a\x18p\xde\xf1[\xb3\x9d\x07\xff\xad\x0f`\x9a^\xf5\xd7\xd9\x91C\xa2sp\xdf\xfa\\A\x9fk\xd9\xdf1\xe3\x1f\xf3\x10\xdf\xd8x\xb7\x8b\x17\xeb-h\x92\xb1\xba\x9f \xe7\xcd\x8f\xf2\x96\xde\x15\xd4\x004\x1d\xdf\xcd\xce\xf7\xd5\x8f\x0f\xdd\xcd\x8b\xed\x96\xde\xff\xa9\xb8nqT\xb7\xf4>\xa0s\x98\x0f\xcf\xcd\x83\xe6\xe6\xc5rK\xef\xf8h\x1c\xb70\x8a\x9b\xb7a\x7f\xf0Nx\x1e3\xa3\xb7\x0d/M/v[\x08\xb9-:H<:/u\xa03\x11\xdb\xfa!F\xf1\xda|hm\xc3\xf8\xc1\x89Xm\x138k\x1c\xa5-~\xec\xf2\"\xb4\x8d\xc4g\xf3\x8e\x19\xa2Q\xb1~\x14\xaf\xe0q\x86\xa4I\x81\xec\x98l!t\xb20\x1e[\xa6\xe1dCb\xb3\xd1\x0c\xc6\xe1\xb0%\xa1\xb0e\x1c\xf0h\xfc5\x8f\x87\x0e\xecq\xa7\xa2\xaf\x05\xb1\xd7\x82\xc3\x8cG.[\x930\x05^\x0d\x83R\x8b\x02\xa9M\x14\x83\xe7@\xa8\x89_\x07\xf4z2\xae\xa1*\n\x9f\x96\x1ck\x1b\xbd\xb9\xd2\x03\xea\xda\xbc\xa0i\xe18\xda\x00`\x9a\x1c\x92\x9b\xb7\x80f-\x04v\xe8\x84\x98\xc2\xbc i\x1e\x884\xff6\xcc\x0d\x8f\x96\x15\x1c\x0d\x87F\xcb\x08\x8c\xe6\xc2\xa2\xe5\x03E3\x95m\xb3\x85\x9c\x80h(\x1c\xda*/\x18\x1a\x02\x85\x96\x1b\x08m\x1c\x0c\x9a'\xd3\xcd *M\x88lu?\x9e\x15\xce:>\xb1\xad[\xf8\x07\xceg\x0bG\xbe\x06yZL\xac\x98\x18\xff\xea\xa5s\xae-\x9d\x18\x0f\x1b\x8b\x88\xcd\x1d\x13\x9b9*\xf6\\[\xdazrF\xc8\xca\xdd\x1a\x89\x91\xcd\x1b%\x9b\x10'\x9b=R\xf6\\[Z>\xa3\"kg\xc7\xd6\xe6\x8e\xae=\xd7\x966\x9f\xb48\xdb\xcc\x91\xb6\xe7\xda\xd2\xe7\xda\xd2\xe7\xda\xd2\xe7\xda\xd2\xf1\xa8\xdc\x84P\xd4sm\xe9\x94\xc9I\x89\xd4\x8d\xcfBR\xb4\xee\xe8x\xddsmi\x8cn4z7\x16\xbf\x1b\x8f\xe0=\xd7\x96>\xd7\x96\x1e<\xe7\xda\xd2\xe7\xda\xd2\xd6\x935\"\xf8!b\x82\xc7D\x05'\xc6\x05\x8f\x8a\x0cN\x8f\x0d>\xd7\x96\x9e\x12)\x9c7V\xf8\\[:\x145\x9c\x167|\xae-=1\x8e8\xa8\x82\x9fkK\x0f\xa9g\x8f-v\x03\x81\xa7\xf6\x07\xd9\xb39c\x8c\xc1\x13e\x0c\xfe8c'D2S\xa4\xf1d\xe7\xd6\xb9\xb6tb\xec1J\xee\\[:k,\xf2\xb9\xb6t\xffd\x8eN\x1e\x11\x9f|\xae-m<\x99\xe2\x95'\xf3\xe7x\xd4r|V1:\xf3\"\x97G\xc7.\x07\xc7\x0f\xd1\xf8\xe5sm\xe9\xb9\x03\xcb\x16\xd1\x17\xc7\xd1\xcf\x19\x1a{\xd8\x87\xbf!h\xec@\xe0~\x1a 6B`D\xde\x80]\x04}t\xca\xc0\xbeh\x99\xe7\x84\xf1?Yg\xcb\xa8E-N\xae\x0c\x07\x96\x05\xe0\x95-a\xd2!\x93\x85\xe6\xb1\xdd4*QWEH\"\x12\x83\xdce+\xd2\x16kY\xa2^\xf4\xdf}/\xa4j\x86\x15MA\x15\xd7I\xa2\x1aI\xb4\x0c\x069\x1e\x1f\x86tLp\x06x\xa5S#`M\x8e\xb2\x1c\x9c\x14\xf6\xf5\xcf\x0d\x97\xf6\xc4\xb6>6\xf5\x9a\xb6\xadT\xe9\xc5| \xf4\x14O\x16\x7f\x16U\xbe/0\x7fXQ\xad\xcb\x93t\xf0qV\xd5\xbd\xcc\xb5\x18\xc2\xc7{Z\xcb\xbe(AF\xf5\xc2\x9b\xdb@\xfa\x00\xe3\xc7H\xc9C\xe9%\xa2\xc0\x1aR\xb5\xd2\xffw \xeb}Q9q\x89\xa2\x17h\xc1\x93\xc0R\xf8*\n% \xb2\xb8\x1c\x9b=\xd5Ux\xb7\xc5D\xe3\xa3\x93'\xe8\xd8\xd0\x9b\x07:@{\xd2\xeegnrOd\xeb\x914l\xd9R\xb6\xc4\xd8\x8c~\"V\xa6X\xef\x01\xbf\x12\xad?\x8b\x16\x8a\x8a\xd1\x1dR%S?\xf1\x822\xa1\xa9\x82\x94\xe9\x82\xf8\x94u\x0b~M\x1a\xd6R\xf6\xbd\x989l\xcb\x08\xad\x9f-\xf1.%\xedH\xb4\x0b\xaayNV\x9ek\xb9\xe9\xf8\xf1\x1f\xbc\xcb\x7f\xca\xdc|/\xa1f&<\x1c\x97pi\x0b\xc1\xffx\x84\xfa\xc4\x8e'\xd6\xff\xd6\x9f\xb5\x01\x15!,>X\x1f\xfb\\\xb8\xbct\xc9\xf1\x98\x99\xa2\xd8\x7fJ\x1e\xccL\x9arm\xabZ\xd3\xccd\xbb\xf5\xef\xafO\x84\x8drNS\xb7tj\x1d\xff4\x15D\x9ehK\xba\xeb\xaeU\xa9\x91\xc9\x13'y\xa6y\x0d\xde\x90\xb2\xa5h\x0e\xff\xa8\x84\xf7\xd1\x0e\x8dX\xce)\xc4&&E\xdc\xc9\x97\x7f\n#sP!!\x0f\x15\xe2\x17U\xec\x9ab\x81\x9cT\x88\xcf $\xce\"\xcc\xc8O\xf5\x12dV\xa2\x85'Zxb\x9e\xaa\x97X \x7f\x15\xa6\xe6\xb0z\xa9\x89NE\xf2X\x012\xe4\xb2\xc2\xf4|V/=\x92\x94\xd3\n\xf3\xf2Zajn\xab\xbf\xdbe)\xe6+\x9a\xdf\n\x13s\\\xbd\xc4Df[B\x9e+\xcc\xc8u\xf5\x13\xa4,\x96\xef\n9s^\x01\xa2y\xaf\x90+\xf7\x15f\xe5\xbf\xc2\xf8\x1cX\xc8\x91\x07\x0b3ra\x03\xfc\xc9\xa3\x12\xeb'sN,5\xccw\xd2\x06r\xab!\xbe\x120\x1c\\\xb6\x1ck\x88\xe4Y\xc3\x84\xce\x05L\xa3Sr\xae\xbd\xc4t\x1d\xa8@\xde5\x84s\xafa\xc2\xe8\xa6\xe7`Cb\x1e6L\xe8U`\xces\xe6dC(/\x1bD\xa7\xbc\xb9\xd90aX\x13r\xb4!!O\x1b\xe2]\x89E\xed\xa5\xcc\xfe\x8c\xbcm\x94\x9e\x9d\xcd\x12\xcf\xdd\x86h\xfe6\xa4O\xc4\xecl\xc3|\xf9\xdc06\xa7\x1b\x82y\xdd0\x1c\xc1\x9c\xdcn\x98\x7fW\xa4\xe4yC\xe2\xac\xc3\x8c|o/\xc1\x15\x1d\x9f\xf3\x0d\xf1y\x81\x84\xb9\x81H\xfe7\xc47\xb4~R\xa7\x0f&\xe5\x82\x07\xc9%\xe4FCBN8<\xcc`3\xe6\x87\xc3\xec\x1cqH\xcf\x13\x87\x87\x9b\x8eq9\xe3Ar\xc3@\xc31y\xe3\x10\xcf\x1d\x87\xb4IH\xe1\xea0b\xa2\xb2\xe5\x92\x83/\x9f\x1c\xd2r\xca!>\xfe\x941e\xcd/\x87\xb4\x1csH\xcb3\x87q\xb9\xe6\x10\x9f\x90\x98\xac\xe3O\xb2\x86\x19\xb9\xe7\x1eb\"\x1f=\x9a\x7f\x0e\xb1\x1ct\x00\x7f\x0c\xb3|<\xb9\xe8\x10\x9f\xafh\x12Vl\xca\xe6\xe4\xa6\xa3\x04\xeb\xe1\x8c\x0f\xde\x8am\xf9\xb9y\xea\x0eA4\xf2qr\xee\xbaCI\xe7\xb2{\xf3\xd7!w\x0e;x\xf2\xd8!s.;\xf4F\x15$\x9f\x1d\x1c-`TN\xbbCK\xe4\xb8\xfb\xf2\xda!Cn;\xb61\xf0\xfcv\x98\x9b\xe3\xeeP\xc3r\xde!%\xef\x1d?-\x81\xd4\\oR\xb0J\x07\xb6\xbfR\xf4\xde_\xbf\xd2}KK\x0b\xbe\xe6J\xc7\xf8\nbBW1\x18\x9d5:\xf9G\xe5u\x10q\xd3\xc2O\xac\xb5\x9b\x8e\xb1H\x1e\xdc\x1fDT\x94\xc7\x85\xf7\x90\x06\xeae\xb4V'\x07\xaa\xa3\xba\x87\xa5\x1a\xa9\xdc\x06\x1675\xf9\x05\x97\xde\xfa\xcc*\xacu,\x7f\xcf\x7f#\xdaf8\x8b\xb8\xee\x98\x16\n\xfb\x14\xf7\xfe\x9da\xd7h\xc5\x1aG\xd9\x99\xdd/\x87\xc3\x1bM\x19\xbd\x04\xfd\x93pd\x17\x82\xc3\xf7W\x92!\xf98\xf7IC\x8d\xbf>9\xd2\x06\x8e\xa4h.YS\xd4\x96\x15\xaeO/\x7f\xa0\x91\xba\x0d\xe8\xf1\xf5\xb3o\xe4\xb8\xebwX\x0dG\xda\xb4Ek\x99\xb1\xf8\xc8\x97\x1bZ\xd5\x87)\xbb\xb4\xff\xdaR\x11\xf8\xcf\xc2$\xcb\x99$\x88\xbf+4\x0bk/\x14\xd5r\xa0\xa7'\xf6\xc1'i \x14;\x0dvO\x8a\xea\xd9m\xb1\xa1]\xad\xd8\xa1x\xce\xf6N\x02\x0d\x19hrR\x89S\x17w\x7f\xbb\x89\xaf\xac\x89A\x98W\x8ca\xca\xb7G@&\\\xd7u9\x9e3\xd6u\xe9\xe3\x8bu]\xda $\xfc\x87\xa2\xda\xd6\x93x`U\xb3\xa5\xbc\xa5\x96\x98\xab\xc8\xb3\xb8c\xbe@f\xdc\x98\x92\xe8|\xf3\xd1\xa5\xcf\xf6{\xe3\xf8\x8f\xbf\x90L\xe6\xb1\xd4\xbd2\xc6\x87\x89\xeds\xcb[\x9am\x0ee\xfe\x80Y*d\x8e\xea]_\x0f\x9b\xbe\xe8\xb4\xa3\x8f\xf1\x8a\xae\xf7\xbf\xfd\xfa\x99\xceA\xb43\x19\xc3\xa4\\\x89\xba;\xdb\xcb\xb6Y?\xf0\x88\xd0\xb6\\\x07\xb5u\xc9\xc8\x94C\x94\x9c\xce\xc9\xd43\x10\x1a\xdc\xa6e\xbf\xd8\xe0\x8c\xb6\xc2\x83\xf3\xacU\xcb4\xecQ|\x84\xe8\xed*\x9f\x99Z\xf0,\x00\x05i\x1d\xae\xab\x80\x1fF>Q\x8d\x1b\x12\xec\x14\xf2IY$\xf9\x0cz\x0762\x8e\xfcM\xa3\xe8\x86\x8cz\xd6Feu\xfd\x05\x8e%Y\xa3\x99\x1a \xed\xf1\xc7\x92\x8a\x86CV\xbc\x91\x93\x12\xb3\xe4\x8d\x9a\x18\xbb\x87\xd6\xbc\x9c\xaa\xe2\xaew\xcfD\xb7\xf1\x90\xa0oR\x94\x1fb\xb9\"%\xa9\xd6s'%}\xa8\x83vQ\xdf\x88\xfe\xdb\xed\xdec\xb5\x92\x8f\xcd\xaf\x18i\x18f\xc3\x94\x8f\xd4M9\x8b\xf8\xc5F\xda7\xa9\xb9Q\xaf\xc0\x1b\xcc\xe6\x99\xcf\x86\xe4\xd2\x92\x07H\xaa\xd1\xe6\xe0}\x836\x0dv3\x87\x1d5\xc0\xc9G \xc7W\xd5\xba\x119e\xd2\xd4\x16\xcaY/Z\xc1K}\xee\xef\x91\x86W\xf9\x8c\x1aQ\xd2\x80\x82\x0b\xfd\xc1k\x90\x15#K7\xc6\xcag\x8cI\x16\x92w\xa4)B\xbe\xe1\xdd2,\x8f\xd6A\x92\xf7\x8f?\x9e\x18D\x1e\xe5\x0d\xa9\x18\x17^\xc9\x860\x82\xed?\xabWZ\x0d$\x8dtNX\x0d\xaa?\x0e\x89\xc4\x86e\x0e\xc8\x8eV\xd6\xd6^\"p\x8b\x8a\xf5\xa9$\x86\xc2\x84\x00M\xf4\xdd\xa9vB @\x8cX\x02T\xc6\xa2\xa8@\x19,\xc7\xf8\xa0\xc9\xee\x90;\xe4<\xbe[\x8fX\xe1\x17)\x82\x00\xaf\x93P\xa4,mAl\xe0\xb3\xb4r\x96V\xcc\xe7,\xad\x9c\xa5\x95\xb3\xb4\x82=gi\xe5oTZ \xf2\x95\xe0\x02\xc5\xc7\xe3\x8c\xc54\x12\xd2\x9fO\xc5\x0d)i\xc5\xa4\xf8\xe0\xbc\x8c\x10\xa4wkzdr\x9b\x16(\xc4Q\x8f:\xd0q\xa7AF\x8b:\xa2\xf2\xfe\x12\xfe&\xc4/\n\xd0\x9e\n&\x8c\xe9\"\xf4\xac,<\x90J\x9dQ\xd1\x9c\xdb\xd0\xcc\x98\xc3L\x9d\x8e\xc1\xb8\xed\xed\xa5\x04'\xbbs\x1d6\xd5\x98Y\xb0\xc6l\x93C\xc6\xef\x8c\xfc\x0c\xba}\x06\xdd\xfe\xb5\x82n\xdb\xaeu\xd4\xa9\x10s\\X\x1f)j\xa3\x1d\xeb\x9f\xf4\x05\xf3\xdaa\x02ri\x12\x9c\x1a\xf2\x92z1\xe5lD\x1c \xde\xfd`\xcd\xa5\xd7K\x80\xbb\x07pW@o\xbb\x9e\xd1\x13\x87H\xa4'\xa8\xea\x19\xf0\x16?,&e\x82\x0e\x18\x11\x90b\xa2Q\xfc\x86vu\xbd\x02\xd7\xf2\x0c\xd1\x88+r()\x8fr\x97\xa0\xd6%\x8e391`\xa8\xa7\x15\x98\x8a\xd6\x8f(\xa4\x85%\xe8_\x19\\9!mK\xe5\xe3\xa9WJ\x89\x81\xc5\xc5\xcc\x8d/r\xbe\xa1k\xca\xc5[\xc2\x82C\xcb4\xa4@\x9fY\x9d\xda\x97\x98\n\x94\xb8CbQ\x929\x14\x9e\x91\xaaNb\xcf\xa7\x85wNQi\xbc\x95\x98 \xa1\x1aS|;#W\xdc@\x8f\xb1\xca\x1f\x05\xb4\x98\x88\xfe\x12\xb4\xb3\xa2\xc1E\x8e\xbd\xd5/\xe3!\xa3\xe0\xf3&bH\xcbR\xdaX\xdb\xa2\xda\x95\xd4\xb4\xaf\x1a\xcdJcjO\x90s\x9c\xee\x13#\x88\xb2\xe2\xf3\xc1y\xd2\xb3\xba\xd9\xd0\x86n\x84\x11Wv\x11\xef\x9eY7d\xa0D\x84\xe4\x17dD\x8a`z4F\x17V\xfb\xda\x95\x9f\x92\xe5\x17\xc3\xc8\xfa\x0b\x85d\xf4-f\xba\xba#r\x94|\xc6\xf0\xd0,2\x95|\"\x92\x95|\xc6\xf4-\x8b\x94%\x9f< \xe2V\xfe\xb79\x1d\xe2\x90\xca?\xaak\xc7\xb13\xc6\xb8\x97q\xdc;\x14\x8e>\xbaNE\xa5\xcb\xcbmOKa\xfc!\x15\x90\xb5`\xff\xee\x80\xaf\xb8@\xe5\xda\x0d\xea\xdbJ\x1a\x8e\xea\xcaXK\x05\xcf)\x00j\xebuA\xba\xc0j1\xabF\x84\xb2Ko\xcb)\xb9\xedx\x96\xc2s\xf1O>\x0cN\x18\xa3|\x82k*m\xac#?\x8b\xad\xde+\x19\xf8\xa8\xedeb\xa1\xfa\xd8\xf4>\x1eRL4_\xb7\x83\\6w\xe6\xde\xbe\xfb\xf8\xe6\x85\x008R\xc6`\x89\x14T\x88\xeb\xeb\xaa\xd2\x92q\x07!\xaa\xc2\x1dq\x08\x18\xc9\\\xddF\xba\xecs\xbe_\x7f>\x15\x8d\xdc\x14\xbbzW\x0b\xb4\x92T\x9b\x12~\x19\xd8\x16\xa5\xd7>k\x92E\xa97\x9f}\x85\xed\x98\xd1V$m92i\x9d\x0dGg\xc3\x91\xf9\xfb\xaf\xcdp\xa4:j\xcb[!\xc9\xc7+y\x99\x04.1\n\x86\xe8\x95*y\x8d\x16\xb7\xba;`(c%\x1d\x8ap\xe1\x8c43\x8d\xb3\xe4\x13\xcbd\xf4%1\x06\xf4b\x052\xc2\xa51\xbc\xd7\x9e\xff\xd2c\xdeB\x18\xc1;/v}M/{\x01\xb8#>\\\xf0bJ\xa9\x0b\x7fI\x8bI\xc5,\x04y\x84X\xb0\x8c\x05\x9bW\xc0bb\xe9\n\x14P(^\xb4br\xb9\x8aI\x85*\xb8r\x8a\xcdX\xbcD\xc5\x94\xe2\x14>\xc8\xf8hY\x8a\xa9\x05)8\x17G\xc8\x05KQL)B\x11.6\x91\xa1\xccDR\x81\x89q\x85$f\x96\x90\x98Z<\x02\xd0\xf8\x16_\\P\xd6\x82\x11\xf9KEd-\x12\x91V\x1ebZa\x08\xcf\x04\x87JB\x8c/\x06\xd1\x17}\xc0\xce\xb8\xa7\x0c\x04K-\x001\xb5\xf4\x83,\xf1\x80\x10\xc4\x8b>\xcc(\xf7\xe0)\xf4\x10\xbc\xe2\x83\xc5\x1d\xe2\xf7\x7f\xbe\x82\x0e\xa1R\x0e\xe1~L+\xdf\xa09\xe9\x80X\xa8pC\xa6\x92\x0d3\x8a5\xe0' \xbb\xcag\x14h\xe0\xed\x0d\xa81\xb44\xc3\xdc\xa2\x0c\xd1\x8a\x02\x81B\x0cI%\x18p4\xf0qe\x17p\x1a\x0e\x0e\xef\xec\"\x0b\xa9\x93\x91RX!<\xee\xa4b\n#\xcb(`\xd0\xee\xa1\xd2 y\x8a&\xcc+\x97\xe0]\xc3\x19%\x12\xa2\xc5\x11\xc2e\x11b\x05\x11\xbc\x939\xa6\x08BJ\xf9\x03\xa4\xf0\xc1\xcc\x92\x07\x89\xc5\x0e\xc6\x959H*p\xe0\xa9 \x806\xefy7\xa5\x90\xc1\xfc\x12\x06\xde\x8e\x0e~\x9dT\xb0\x00\x02\xc5 2\x96%\xc0\x0b\x12L-E\xe0-;0\xa3\xe0\x00\xaax\x85\xca\n\xa0\x05\x05\xf2\x95\x12\x98^D\x00)\x180\xa9T@\xb0,@zA\x80\xa4R\x00\xcaJ\x93R\x04@\xbd\x1a\x85\xffG1\xf1\xf1\xd6S\x81\xd7\xe3`\xff#`\xfe\x13\x01\xfe\x9da\xcc\x00\xf5G\x01\xfcg@\xf7;\xb6$\x14\xb4\x7f\x1a\\\xbf\x0f\x9a?/(\xff\xbc\xfd\x90\x04\xc4\x9f\x02\xc1o\xde\x1c\x18\xec\xbe\xd4\xd50\xc0\xfd\xb0\x0e4\x19d\x1fG\x88\xf2\xc2\xebc\xc0\xfa\xb6\xaf;\x13\xa4\xbeWi\xc5`\xf4S\x01\xf4\x93\xa0\xf3\xd3@\xf3\xa3p\xf9#\x80\xf2\x93PLz\xba\xc6l\xe7\x81\xc5\xef\x839\xb0x\x87\xb4\x9e8;rH\xb4\xf7\x99x\xe0\xefM\xcf\x89\x8f\x967k\xc1\xdf1\xe3\x1f\x96\xdb\xc6\xfc= \xec\x9e\x8dw\xbbx\xa1\xed\x83&\x19\xab\xfb\x99\xe0\xec\xfd@\xf6\xe9]A\x0d@S`\xeb;xz\x84\x9e\x0f\xb0\xde\x0bU\x9f\xde\xff\xa9\xf0\xf4q`\xfa\xf4>\xa0s\x98\x0f\x86\xde\x03@\xef\x85\x9eO\xef\xf8h\xb8\xf9>\xea\x14\x0b\x17\xf76\x9c\x08n\xe6\xcc\xe3\xb09=\x87 \x80\xf2\xc2\x98= 7\xbc4\xbdP\xf2\x93 \xfc\xc2\xf1\xe1\xa9\x03\x9d \x16oe\xc3\x87a\xe2}\x00\xf1VO\xa7C\xc3O\xe0\xacq \xf8\xf8\xb1\x9b\n\xfe\x0e+\xcc~=\x12\xf6\xdd;f\x88\xe6\xe3\xfb\x81\xbe\x83\xc7\x19\x92&\x05&A\xba\x0btn\x0f\xb5\x10fw\x18\xc6=\xd3p\xb2\x81\xb6\xdb \x7f\xe3\xe0\xda\x93\x80\xda3\x0ex\x1c,{\x08\x19\xcd\x1aw* {\x10\x8a=8\xccx\xee\x8c5 S\xd0\xd51\x14\xf5(~\xfaD1x\x0eZ\xba\xf8u@\xcfL\xce\x1f\xea\xb9Q\x84\xf4\xe4L\x90\xe8\xcd\x95\x1e.\xd7N\xc4@\xf7d}\x84\xf3=\xcc\xac\x9c\xf9\x19r\xe8\x0e\x9d\x1018\x07\xd3\xdc\x05\xdb\xf6\xa0\x99\xfb\xb7\xe1\\\x04s\x18\x04\xc5L\xc6*\xef\xb0\xc9\x0db8JyF|r\x17\x99<\x1f&\xb9\xa9l\x9b-\xcc\xc0!\x97\xb8\xe3\x06-\x14\x81|5\x13{|\xc0\xec\x11\xd4\xf1Yx\xe3\x08\xbex\x14Y\\\x1d\x1e\x0bI9y\xa3\xb3\xf2\xe8\x99\xf9\x88\xa32\x12\xfd9\x89n\\\xe8\xc4\xac\xc4\xc9\xfc9\x9e\x9b\x18\x9fU\x8c\xce\xbc\xfc\xc4\xd1\x19\x8a\xc1\xf1C4\xfa9\x94\xa7\x18e\x00\x908E\x90=[1\x9c\xaf\x18\xcbX\xcc:\xb0ly\x8b\xf32\x17\x13s\x17\xb3\x0f}t\x06\xa3\x97\x9a\xad[$\xe70F\xb2\x18\xa3\x03\x8eqVH\x9c\x90))\x8e8Cq\xd3\x1e\x13\x12\x1fg\xc9\xees\xd2\x1f\x1db\xea-\x7f\x02dB\n\xe4\xa8\x90\xed\x84k\x13\x93\x13\xfc\x01\xdam\xded\xc8X:d0!\x12\x8fO\x94O0\x19\xc6\xb3\xe1\x83\xa1\xf7\xfe)\xc9\x9b\x1c\xe9M\x8f\x0co\xd5\xdc)\x92\x99\x93$}i\x92Y\x13%\xb1T\xc9\x9c\xc9\x92\xe0M\x97\xcc\x9b0\xe9I\x99\xcc\x9e4\x89\xa6M\xe6O\x9cLH\x9d\x84\xe1\xee\xee\x83\x91\x8d@\x8d\xb2\x14#\xfd\xf9D\x1bN\xaa\x7fG\x139\xa7\x0e\x9cS\x07~E\xa9\x03\xc3\x8ez\"\xf4\x93S\x83E\"\x80\xa2\x15\xcb\x106k'\xcb)w6\xb0\xb7N \x16\x9b\x8f.\xd4\xc0\xca\xe1I\xc3]\xd1\xf5\xfe\xb7_?K\xcd\xc6\xed\xd3g\xdbf=\xa5#\xd6\xc6@\xa9\xb9\xe6z\xab\xce\xbf\n\x8a\xd7Y\x00\x065\xf5\xbd\xdb\xd5M\xcb2v\xd5\xa0\x16\xe9\xea\x86\xb6L\xb1.\x83\x92\xee\xf9\xb0\xbfNJ1&?\xcd\xcd\xef\x88$\x0dO\x94Hcb\xfa09\xd8\xe2\xefN\x8a\xb05\x87h\x960\x92\x1f\x1c\xc9\x0cN\x18\xd8T\x0b\xd505\xd8\x1c\x9b\x9d\x1fl\x0e,@\xc6\x1eX$Yx\x86\xf2\x14J\x0d\xd6\xf6\x1f\xfd\xb7[.v\x05\xfb\xdf2\xd2\xb0\xa1\xf6'\xe5\x0d~d2\xf6\xbb'\xaa\xcf_/^\x19G\xee\x99\xe1\xef\x93R\x99\xd8\x86\xb8\x96c\x0e\xcdg\xf9t\xb3\x86\x13vUH]\x99\x9b#\xfc\xd7T5\xa7d\x01\x1b\xf9\xbe\x0e\xbd\x80\x9a\x19\xda\x0f\xe6M:H\xf6\xb5\xf9\x88\x91\xee\xdb%\xf7Z\x94\xdcD_\xab\xdda\x8a\xafE\xdcJ\xed\xc5\xbbkv\xd4\x8e\x96\xd1\x1a*\x81#iX\xc1E\xf7\xc6J\xe9\xed\x9b\xea\xd6\xce\xca\xe7\x15\xfes\xebkuGZ\x06\xef\x01\xf9\xee\x98\xd86\xda\x04\x81ELs\xb2\xd4\xe2\xbdp\xd0\x1d\x89\xefE\xdb\xe2>\xef.\xb1\xef\x0e\xef\xad\x11\xec\x9d{S\x0c}\x02\x13.\x04\xe4\x02\xf0\xb2\xfe\xb8\xec2\x8b\xb7\x0fy9\xc6\xc5\xe3]\xb0N\xea\\\x9em\xb3\x0c\x8c[\xe3|:\xb8\x8e\x03\xde<\x9b+'\xf1\xe3\x11\xfb\x1e\xe3\xbe\xf9\xf8.\xcaq\xad\x15\x9c\xc5\\-\x86\x9a\xcaVF\xe7E\x9b\xddX\xd2\x9e3\xa1\x9f\xe3$ &\x16G\xd5\xe0\xb1`\xb23Y\xd8\x80\x9a#\x0c\x07E\xe1\xe8`\x12@c\xb318\x88\xc9\xb7\xde\xde\x86'x\x16\xf7\x1b\xd0B\xe4Z\x9fT;\xb1\xb7sy\xe3\x80\\@\x9a\xf5\xcb\xb2\xd1m\xe17\xf5L\xe7\x97\x90\xca3!\xa5\x87\xe9\xb6\xa8|<\x14B\x92\xab\x7f\xd5g1V\x83\xcePf\x8d\x0b\nq\xe1\xd4\xe2\xc3\xe0\xd4M'H\xe7\x8d\x02\xea\x8a`\xd1Y\xad{\x03\xf1\xec\xa2\xe9\x8a\xa2U/=\xe1b\x99u\xa7L\xbaM:\xe1}N\x95h\x87\xc8D\x8b\x1d\xc4\xadv\xe9\x9dr\x8e\xd2t\x0b\xde\x80\x90\xcf*\x06qK\x1e\xe4\xe8\xfe\\\xab\x1eD\xc6\x80\x02\x06b\x16>\x08\x83\xc6\x8e\x0f\x17\x8a\xc3\x04\x06\x8c\x03\x101\x10@t\x8a\xe53]\xe4A\xc9\xb9\x9a\x9c\xd1T\x1c#0q\xc0s#+\xa6\xc9I\x11R\xee\x80\x13\xe0\x04#\x03N\x19\xccX\x99\n%\x12\xd22\xfb\xc7o5\x84\x0b\xf8}\x08\xf4\x9e\x13\xe2\xdd\x07\xee\xee\xc0\xba\xe7\x01t\xcf\x06\xe5\x9e\x17\xc4=\x0d\xbe=\n\xdc\xaet\xfd\x18d\xbbz-\x08\xd6\xee\xa0\x9a\xbb\xad\xa5\xc2n\x87\xa1\xd9\x13A\xd9\x13\xe0\xd8\xad.\xe7\x84`\x9f\x05\xbe\xee\x82\xad\xe7\x83Y\xcf\x07\xb0>}u\xa3\xa0\xea18u\xcd\xa5\x87\x10\xeaR\x93\x18\x82\xa7\xfb%\xf6\x8c\x80\xe9(T\xfa\x10$\xdd\xeaI\x0extTu\x1aB\xa2\xa7\x80\xa1Ga\xd0\xe3\x00\xe8A\xe8\xf3D\xd0\xf3!\xdc9:>k\x16\xe7C\x9c\xf7\x01\x1eCp\xf3x\xeb\xd6n\x1a\x12\xeam\xd6\xe3\xa0\xcc;:m\xdf\xc5\xbeM\xbc#\xc6?,S\xb9\xf9{\x14\xb8\x9c\xa5\x9b\xbcQ\x98r\xaf\"ou5\x0349\x0eJ\x9e\xd6\xbcc.\x98\x0eA\x0e\x83X-@\xc1\xc7Q\xd8\xf1\xb4\xbeN\x81\x1a\x0f\x83\x8c\xa7\xb5;\x11A\x1cC\x0bGq\xc2\xd3z1\n\x1b\xbcw\xf8\xe5r[[\x1beH^\xcf\xc8\x04\xf4\xef\xe1\xcd\x82\xe2~\xf7\xed\xe5sw{\x06\xc4F\"{\xf7\x030\xc8\x051\xbd14\xef\xa1#~\x02\x8e\xf7\x08v\x15F\xed\x0e\xf3\x87\x19H\xdd\xc2H: \x97\x86\xd1\x8d\x8e\x0d\x82I\x0e8z\xb3\xf7\xa8At\xe0\x90\x15\x7f\xdb\x07\xc4\xec\xc7\xdc\x9e\xd9\xf5\xf1\x08\xdb\xe8\xce\xd6\xcf8l\xed(\xaav\x86\xc1\x8d\xc6\xd0F\x9c\x14`\xe3\x87\xa7\xa0g{q\xb3\xbdC\x1a\x01n1\x05\x0e{\x08}\x1d\x04\xbd\x1e)\xd3\xcd\x81\xb8\x16\xbf~e\x0e\xb4\xcf\x8a0\x95\xa9 \xac\xf5/\x11\xc8\xd2\xce\x04\xaeN\x08f\xf1\x82U\xcb\xae'\x85#;;+\x1crY\xc8\x92Q\xbf\xd7\x81\xd5\xb6 \x9a\xac\xf7\x9c\xad(\x0fOG_l\x07zWtz\xfa\x03\xa9\x98\xaf\xe9\xb1\xa1k\xce\xda^\xc8>K\xce\xaa\x86\xd1\xca\x18#1\x81\x9b\xee\xcd\x85\xf1&\xb2\x12e\xbd+\xd6\xe6 \xbb5h\xe8\xa1\xbe\xd1\xd6Y>\xdc\x0f\xaf\xffu\xe1X\xf7\x8bV\xb9^T\xac\x8d\x08u\xb9\xe8\xa2\xab\xba\x93\xc2\xf6M}\xdbI\xbd\xb9,\n\x1fQ\xe3@\xbf\xb0\x07\x15\xb8r\xa4\x0d\xa7\xd6K\xb4E\xb5\xad\xd3\xf8\xb1\x05\x85/\xfc\xfe}xX\x1f\x99\xd3\x9d\xb1j[+M\xb5\xa8\xd6\xe5i#.\xbeg\xeb=)\xcc\xcc\xe5\xf6\xb4\xdeK}`W0)\x81\xab\x1c\xc1\xee\xfe\xe5\x1c\xf4Tn\x80\x9cX} \xacX\x8b\xf8>\xddN\x973\xa4\xb9\xceR&\x00.[f)G#4zv\x8e\xb9=\xc7\xdc\x9ecn\xcf1\xb7\xe7\x98\xdb\xee9\xc7\xdc\x9ecn\xcf1\xb7\xe7\x98\xdbs\xccm\xe0\xdbs\xcc\xed9\xe6\xf6\x1cs{\x8e\xb9=\xc7\xdc\x9ecn\xcf1\xb7\xe7\x98\xdbs\xcc\xad\"\x94\x14s\x8bK\xe2\xd7%1\xbd+E%\xb5\x08>+dU\x9f\x18\x108\x96\xa4\xaaz\xeb\xafXMa\xd9.\x98\xb2\x03)Z\xf5z}j\x02\x1e-Q\xf8\xf1\xa5\xf4\x0c\xf0vG\x03\xcc\xe7\xb2\xe6\xdah&+\xe1\xcd\xc0\xac\xbb|\xe4\"LA\xbb3\x02\x13\xe9\x1b\x9cn%T\x0b\xd3\xf8LQ{\x7f\xfdJo y\xb1D\xa7\xf5\xc4\xf6uS\xb0\xf1\x95`\xe2x\x0f\xd6\x80\x1f\xe31\x0f\x8fes\xd2\x94\x8d\xf7\xc8?\x13j\x16\xf4\x07\x91\xa1\xbe\x92&\x85I;\xe8\xd8\xb9\xf8\x9c\x81\x89\xc5\xd6\xf1R\xb2\x89n\xcb\xf3\xbfM\x8a^\xb3\xbd\x840\xdd\xce=\xc7c8 \x85\xf9\x0f!\xb7\x0f\x11P?\"\xcc\xf7%\x0e\xa8\x91\xb2\xad\x1d\x7f\"d\xf0)\x0e\xc89\x1eF\x98\xefe\x1cPS+7l$\xa7\xb7\x11|\x1eG\x18\xe5u\x04\xc7\xf3\x08)\x86\xa9\x84 2g\xdfg\xf4DB\xc8\x1b \xa3<\x920\xcf+ \xc8]\x06)3\x18)\x985\xd9K \x8e\xa7\x12B\xdd\xf1\xa1\xd2\xcd\xf3Z\x0e\x88\xcdu]:\xfc\xc0\xf8!\xe2\xcc\x04\x1f\x93\x87`\x18/C\x1d\x9b\x10\x9aI\x88\x1e\x00\xc8\xeb\xe4\x84\xa0\xa3\x13\xb2:;!\xa7\xc3\x13BNO\x98\xe7\xf8\x84\x8c\xceO\x88:@a\xaa\x13\x14\xe68B\xb1\x19\xbb?\x8a\xfd\xe2q\x86\xc2\x1c\x87(BK\xf2#\x8fS\x14f:F\x11r\xa7#\x10\xc7\x1a\xd2\xb5\x95\xd5A\n\xf3\x9d\xa4\x90\xdfQ\n\xf3\x9c\xa50\xcfa\x8a\x1fQ\xb4\x93\xd9\xdc\xa8\x90\xdd\x95\n9\xdd\xa9\x90\xe4R\x85\x9cnU\x08\xb8Va\xa6{\x15;\xe3\x88\xc3\x15R\x9d\xae0\xdb\xf1\x8a\x10t\x05j\x98\xee\x8e\x05\xdc%\x0b\xb1+\xde\xeb\x9a\x85\xa4\xfb\x7f\xa2\x8b\x16c{\xdai\xab\xbc\x87\xe6\xdf\xc2\xfd\x98\xe7\xae\x1d\x10\x13\xce[\xc4e\x0by\xdc\xb6\x90\xdbu\x0b\x88\xfb\x16\xe6\xbbp\x07\xd4\x98\xe3\xd0\x85\x99N]\x88\xf9:\xc1\xef\xdc\x85\x14\x07/\xe0^\x9bQ\x8e^?\x0d\xc7D>\xcb\xe9\x0b#&#\xe6\xfc\x85\xe8\xb8\xa3N`\x18\xe7\x08\x06\xccC\x17p\x08C\x16\xa70\xccr\x0cCh\x0d':\x88!\xe6$\x86\xa0\xa3\x18\"\xceb\x08-l\xaa\xd3\x18\x12\x1c\xc7\xe0:\x8fa\x9e\x03\x19\xd2\x9c\xc80\xca\x91\x0c)\xced\xf0N\x1a\xbae}\xef\xc6\x9c\xcb0\xdb\xc1\x0c\xa1\x8e\x0e~\xcd\xeal\x86\x99\x0e\xe7\x01)\xd7\xfd\x0c\xb9]\xd0\x90\xd9\x0d\x0d\x01W4`\xeeh\xc8\xe6\x92\x86\x9cni\xc8\xee\x9a\x86d\xf74\xa4\xb8\xa8!\xddM\x0d\x89\xaej\xc0\xce\x07\xa0NM\x18\xe1\xd8\x0c\xbb\xad!\xddu\x0di\xeek\xc0\x86\x91\xd3\x8d\x0ds]\xd9\x03Z\x8ec\x1b\xb2:\xb7!\xab\x83\x1bf\xef\x87\xa8\xa3\x1b\x12\x9c\xdd\x10qx\xfb\\\x88)~Z\xe33Em\xb4\x9f\xd6JklG\xfb/e\xee\xe3R\xd9\x1d\xa6%c'\xd7\x86r\x9d\x97A57%\xafT>Nvi\x94vJ5\x9f\xd4|S\xf9\xe0Y\xa7\xf2\xc9\x90{*\x1fo\x06*\xd2\x07\x1b\xbc\xc0^ga8\xec2\xe1U'\xa4\xb5I\xe7\xa0\x17M\xdf\x1b\x83\x90\xa6\x10\x0d]\xc07f\xf0T\x98\x9f_\xda\xdf\x7f\xd5\x9f\x8f\xee`\xe8\xdf\xc6\xa6\xe5\n\xfa\x9f\x94\xc7\xe6\x95\x1e\xe3\x07F\x18\x1d}~z\xc7OW=\x02Md\xf3\xc4\x94X\xf6\x1b\xb5\xed\xf0\x80\x88\xdf>\x8eMxxD\xe9\x13\x8f\xd3\xc1\x16\xa0\x9b\xe1\x15i\xe9\x82\xac\xd6E7\xc7/\xbfyu\xf5\xa3d\xfb?\xd4\xbb\xe4\xe9<\xb4\xbbeQm\xe8\xddp\xfe\x8a\x8a\xd1\x1dm\x9c 4\x8fo\xa9\x1b\x02|\xda\xe9\x0d\xad\xd8\x03\xb38\xf1\xba\xf5K\x80\x0d\x11\xc6\x9abur@\x88\xf0\xae\xc9\xc7\xe9\xa0\xf9\x01Z\x0b9\\\x0d\x19\xc0*ub>\x01\xf6 ~\xbbe\xf4\xcb\xb8y\xf2\xa5\x9e\x17\x13l\xac\x9b,\xb8m\xc8\xf1H\x1b\xb8\xddSU\xb6\xeb\x0b\xbd\x17,Tt !H\x1a\xdcg#:\xd8BQ\xb5\x8c\x92\x0dg\x85\x0d\xb9\x15\x87\xd2\xb2\xd2\x86X\xfb\x07A\xe3\x0d\xdfZ]oi\x05\xf2\x07]s\xc7\xea\xb0H\"\xe4\xb7H\xb7\xfa\x16A\xed\x04\xfdB\xef/\xa5*r$E\xa3\xdcj\xa4\xa1\x89\xbd\xf6\xf7Yt\xad5\xab\x93\xb6e\xb1\x16W\xac\xd9k\xd5\xe2-\xef2=\x14L\x00]\x88\x00\x1chk+\xe4\x82\xde\xd1\xf5\x89u\xd0@\xf8\xfa\xda\x0c\xc1\xc0AiYsZ\x0b4=\xd5#\x85\xb9\"\xd8\x00\xd7/\xef\xc4\xb7\x03\xc3oY\xef\xc2\xfcGOn2\xebA*\xfeX\x1bx\xb0\xdd\x9d7\xf0 \x9f\xb7\x95\xc5\xc6\x95\x84b\xab\xee\x9d\x89\xefH{\xd5Eb$\xcc\xc3\x8e\xb4\xcb[R1\x17L\xd5s\x87\x9d\x02\x81\x91\xdf\x91\xf6\x8f\x82\x96\xbe~4 \xd5\xa9\xe2\xe2N\xbd\x85\xdb\xba\xf9\x02\xb7\xca\x0b(\x1dT\xecN\x98\xd2eL\xc9\xc2\xe8\xd6\xa9\xcd\xd5\xa9Om\xdf\xa5\x1e\xd7e\xc7u\xb15\x93\xdeo~\xa1\x9f\x0eh\x8c\xa6\x9a\xd2\x1ei\xeb\xae?\x03\x82\x88\xf2f\x07\xd7\xe5\xbdpo&/\xcb\x860\x928vK\xa8\x08`2\x10F\x84\x1cX\xdd\x0b\xea\xd0Pvj*\x1d\xa6\xa4\x956\xe1F\x95\xe1h\xfdA\x87+\x06?~\xfa\xf0\xd1 g\xfb\xc5JZ\xed\xd8\x1e\x8e\x0d\xdd\x16w\xb2\xd6\x96(Z\xc8W\xb6\xa5G\"\x91\xcax\xab\xb21\x89hC\x11\xf7N\xd7hk\xc9\xc2\xaf\xcd\xe8,+l\xaae\\\x1b>\xd6G\x89\xa5s\x01\xab\x13\x13\x1d\xa1\x8d\x90/\xb4\x04d\x10S\x87\xea+k8k\"\xe2\x13\x98\x0c \xb4l0?\xb6;[\x90\xfa\xf4\xfe\x07\xbdQcR\xc8`I83\xb4h\x97\xf5\xce\x8a\x9a\x8e/\x86\"|\x16o~\x15\xe2\x0d\xc0@\x80u\xbf\x1c\xa2R\xeb'.\x19\x89\x0b\xba\xbfS\x84\x16\xa7\n\x85~\xa1\xf7\xcfzy\xe1\x02H\xdb\xd6\xeb\x82\xf4 XX\x00\x85\xd83^Qg\xd0\x05)\x1d\x08F\xddZay\x1bzCK\xbe\x06\"V\x810F\xd6{\xd3\xa6ilg{7\x0d|\x0eZW\xf9\xb6\xa8\x84 U\x86\xf2\xf2\xdbP\xff\xe5\xd5\x9e\xae\xbf|\xbc\x1bh\xc5?\x10F\x9b\x0b`\x0d\xa9Z\xa2\x9c\xa6\x07r\x0f+\n?\x9fhS\xd0\x0d\x9c\xf8,\xf1\xf3\xd5RuP<\xa2\xd2\x1f\xb2\x8aJ\x06-\xcd\xd9\x8c\x9fB\xa7\xd9\xe4T\xbf\xc0\xa1\xc6\xc2\x0c\x03\xdb<\xb6S\xb3\x06\x18\x86\xc2\x0bs\x06\x17f\x0c-\x0c\x04\x16b>\x94\xe4\xb0\xc2|A\x85\xb1\x90\xc2\x89\x01\x85\x93\xc3 \xc5\xb8\xdd(\xbf@0\xe1\xe4PB\x14[\xc5\x8b\xae2/\x8c\x10NG\x87\x9e/\x880w\x08\xe1\xec\x00\xc2\xec\xe1\x83\xb3\x82\x07g\x84\x0e\xa2l%k\x98`\xee \xc1\x8c!\x82)\x01\x82\x19\xc3\x03\xfd\xc1\x81YC\x03\xf1\xc0@\x96\x16\x16\x989(\x10\x0b \x9c\x1c\x10\x88\xca\x9d\x81\xab8\x10\n\x18\xbb\xa5s\x85\x01\xfa\x83\x00C=\x98\x17\x00\xe8\xe0\xb5`\x88-\x99\x82\xff2\x87\xfe\xb9\x17n\xce\xb0?\x86\x04\xfd\xcd\x0b\xf9\x8b\xc4\xb8y\xc3\xfd\x12\x82\xfd\xb0\xd8\x991\x81~\xd8\xf7\x7f\xc1\xc7>1\xc4/m\xf0\xf1\xf0\xbe\xd0H\x13B\xfbF\x05\xf6\xb9\x81N\xfe\xa0\xbe\x1c!}s\x02\xfa<\xab59\x98/\x12\xca\x17\n\xe4\x0b\x87\xf1y&/=\x84/\x1e\xc0\xe7\x84\xef\xcd\n\xdeK\n\xdd\x1b\x13\xb8\x97\x10\xb6\x87\xc6\xc2!\xcd\xa2\xef\xc5\xc3\xf5\xe6\x06\xeby\xbag\xfd\x969LoN\x90\x1e\x1a\x96\x979(/oH\x9e? \x0f \xc7\xcb\x15\x8c\x971\x14/w ^j\x18^B\x10^r\x08^Z\x00\x1e\x12~\x87\xb5\x9a\x1aj\x15\x0b\xbdK\x0e\xbcK\n\xbb\x1bt>o\xc8\xdd\xac\x80;,\xc4.g\x80]\xce\xf0\xba9\xeb\x9d\x10Z\x17\x0f\xac\xeb9\xbc\xdf[m\xd9A]/\x8c\xb6\x9f\xf6\xaf\x88E\xe7\xe7Nz\x9d^V\xf7\xb6\xe3(Pb\xc5\xea\x85\xf4\xcfi'\xe1\xa9R\xac\xa5\xb3Q\x0b\xb5\x0b7N\x07\xbc~F\xb8@\xb2\xeb\x8fYN\x17D\x15\xc4\x1c-\xec\x01\x0c\xc5\x88+\xc5\xab\x98\x8eQcC\xf1\x15\xd9\x1c\xe8\xf2\x89\xb9\xd1}\x9d\xc9\x18\xe61;\xc0\xc3\xbb\xb9>\xde\x8d\x8e_\x9b\x81\x80\xa4\xc2\xd5>\x0e\x10\x8f\xf4\xa6\xbd\xdb\x93v?\xc6\x13\xca \x19.\x1c\xce\xa6\xf7\x8bn\xce6\xb4=\x92u,\xaeN\xf5\x89\xdf\x1f\xe2\xf5.\xde\xf6U\xdd\x018pZC2)\xe1e.\x7f\x90\xfe_NO\xf73\xc1K\x8f1\x19\xb1\xb4\x17Z\x9dP\xaf6\xe4v9\xd2\x99l\x9d\x1d>\x9f\xf5\x89\x1dO\xcc\x88[\xd5\xf6\xd3\xc7-\x94\xf5nG\x1bx\xc2\xf7\x96$\xfat\x01?\n\xb7\x99A\xa5\xaa\xabg\x1b\xcahs(\xaa\xa2e\xc5\xda\xf0s?0\xbbA\x82\x01M:\xc35\x93\x8f\x1f\xd9\xc4\x9aK\x93\x10\xc2\xbd\x86\xbet\xf3\xf5_\xc6m\xcd\x10O\xbb\xf1\x17\xbf\xf7\xd9\xefu7?\xc7\x06!\x1f\xcfP\xe4\x13\x1c\x90|\xc2\xc3\x92\x8f\xd7'/\x9f\xc8\x08\xe5\x13\xf0\xcf\xcb'\x81J\xcc@\xaa\x9f\xa9\x97P\xb8\xf3\xbe\xb0D\xf9\xc4n\x01\xfb\x89\x8fd\xf2\x0d\x16\xdccX\xffg_p\xe6\x13\x1b\xd8t\x17\xbd;\x87Ft\xa3\xf3G\xc7A\x0f\x91\xce\xcd\x0dx\xb4\x88i\x11_\x85=\xc6ZOe\xfd\xfc\x88lFq\xfd\x84\xf23V\xb7^\xa2Q \xbaE\x7f;\xa3\xa3\x10\x037\xf5K+\xc0\xaf\xa1?\x9fh\xcb\xb4\xab\xa9\x178&F\x1a&7\xac\x03\n\x05\x88\x9e\xdb,sb\xde\x93\x00\x01\xd9\xb9\xf8\xcd\xfc\x80\x8ds\xf1\x9b\x19A\x1a\xe7\xe27\xe3\x023f\x86ed\x0e\xca\x98\x11\x92\x91; #[8F\xde`\x8cl\xa1\x18\xf1@\x8cla\x18\xe7\xe27\xe7\xe27s\x82)\xce\xc5o\xe6\x05M\xa4\xd4\x839\x17\xbf1\x9es\xf1\x1b\xfd\x9c\x8b\xdft\xcf\x8c\xf0\x87\x84\xe0\x87\xf4\xd0\x87h\xe0\xc3\xb9\xf8M\xe60\x87\xacA\x0e9C\x1c|\x01\x0e\xe7\xe27\xe7\xe27\xd6k\xf10\x86s\xf1\x9b\xe9\xc1\x0b\xd3W7\x1a\xb8\x10\x0b[\xd0\\\x9a\x15\x07\xda2r8\x8e1\x87\xdaV\xda\xa27$\x1d\x1bzS\xd4\xa7V\xbaR\x17\xf0-\xd7\x83\x85?\xb5\x85?\xc0\xf3\x0b(\xd8c9\xed\xb7\xe2W\xb1E6\x85\x95\xd4Wo\xcdi\x12'Y\xf7\xb1\x13u\xa5VrS\xb3N\xa6V-\xfe@Z\xf6J`\xe2\x9b\x8d\x1b\xf4~\xff{x~a\xb1U\xde#.S\xb7E+Z\xd2\xd7\xcd9\x11\xf5\x9c\x88zND}\x88D\xd4\xce\x89\xa4bK$\x81.\xe7T\xcamk\xda\xb6\x92\x95#^\x06PV\xa6\x8b\x01\xab\xe8z\xa3\xebh\x00\xdb\xd7-\xf5\x91V\xed+\xe6\xdd\x0e|\x9d\xe2S\xb3\x01M\xa5\xab\x7fB*F\x17\xf0\xc7=m(i\xe1\x87z7\x08\xed\x92}\xb9pLN\xc6Z\x1e(#\x1b\xc2\xc8EG]\x08\x8bvG\xcdN\xda\x02\x1b\x1a\x06\xf6\xf5\xe2\xf9\xf3\x0b\xfe\x1f\xff\xb8\xf8\x9d\xf8\xff\xdf\x89/\xf0u\xe9\xa3mb\xce\xbd\x86\x96\xf4\x86T\x0c\xd8\x9d\xc4<\xe0;I\xf7_\xaf\xcc\xc7\xde\xb6\xcd\xc8\xae5\x1c\xa5R\xda\xd5\xc2\xb2\xc0\x07h\xe5\xb5\xbb\xa1\xebzCM$\xa6us\x7fd\xf5B\xe0)\xb4\xc5\xae\x0b\x0dzU\x1f\x8ed\xcd\xbe)\xd8K\xce\xec$Sp\x98\x99\xcb\xc0\xe8\x1dk\xc8rU\xb0v\xd9\xb2\xbaq\xbdb)\x913\xb4\xb4x)\xca\xb5\x1c{\x1b\x1e\xd82\x18\x87\xc4\xaf\x18Z\x01\xb9\x8c\x0d2\xfe\x87\nC(g\x17\xab\x82IF\xdfOx!p\xd0\x841\x91\xd5@\xab\xf6\xd4\xd0\xbe,\x12\xad\xc4\xe4\xca\x15c\xe4\x0bme\x05\x88CQ\x15\x07R\xf6\xb8!\x8a\x9elP\xaa\"B\xd0\x90\x14\x8aj7l\xb1\xaay\x0b\x0d%\x1bh\xc9V\x1ba\xe5\xef|>\xab\x8d\xb2\xc2\xae\xeb\xaa\xab\x1c&\xedi\xddB\xb3\xbbE[\xec\xf8\xf6\xeac\x0b\x8b]\xf5c\x17\xdc\xe4\xcc2\xadN\x07\xbd\x08\xcf\xe0\xc3\xd5wo\x97?\xbe{\xfdf\xf9\xe9\xed\x87\xeb7\xaf\xae\xbe\xbdz\xf3\x1a\xf9\xeb\xeb\xab\xf7o^}D\xfe\xf0\xf1\xcd\xff\xfa\xf8\xe9\xe5\x0f\xdeO\x96/?\xfd/\xe4\x8f?\xbc\xf9\xee\xe5\xab\xff\xbd|\xf9\xe3\xd5\xdbwK!\xb9\xba\xef\xbc\xb9\xba^>\xff\xff\x9e\xabm \xf4\xcd\x17\x81\x0e{\"\xf6\xd4l\xf4\x92\xaf\xbc\xa3\xc4\x9c\xc1\x81\xffEZ\x90Y\x0b\\\xacn\xe9\xfa\xd4\x14\xec\x1ev'\xd2p\xfeD\xfb\xb8Q\xb1p|\xfe\x0cW\xdd\xba\xae\xdabC\x1b~4\xb9\xeaV\xb4\xac\xb9\x17[\xaf,AJ\xea\xbc1\xd1\x92v\x99)\x89\xeb\x95XB\xa0\xeb\xba\xbdo\x19=,\xe0\xe5\xf1(O\xbc\xa8\xf9$\xfcfrSj\xcbhGTo\xb6\x8e\xb4\xfaX\x867\x88\xce\x95\xc5\x17j~\xab\x04u\xe3\x1b#,\x92\xef\xd1SCv\xb2\xb9\xfaH+>K\x07\xde\xde\xf5{ ;\xce\x92\x99.LU\xca\xe2m\x1b>\xe4\x8a\xde\xc2\x9at0*B\xea/\xda~\xda\xc5t)c\xb1b\xc5E\xd3\xf7\x01\xdaZ\xd9\x93\x8b\xed\x96\xf2-\xae\x08\x11>\x1a\xe1\x02\"r\x8e[\xc6\xf7\xbf\x05\xc1\xa8V\xa3\xbf}=\xfb\xd9\xb3kL\x04\xc6\nNU\xbfZ\xdd\xd6\xe0'R\xd7O\x93M4\xf4\xdf\xc4\xaa,\xb06\xe5\x96\x7f\xe1\xfcba=\xda{O\x17\xaf\x91S\xf6\xba^+.\xa0\xc8\xdf\xd0F\xf2}\xb1I\xbb\xf0\x18y\x85\xca c\xa7\x17\xeaH\xbep\x7f\x92\x02\xda\xf6$n&\xab\x1fr\xdf\xf0\x91\x8a\x16\xefMp\xaf\xfd\xe9@\xaag\x9cO O\x13\xa3w\xecDJ\xc7(\xc1U\xbe\xa3V0\x94\xa3\xcd~G\xd1\x13}\x1fNQ\xb7\x88\xd8\x8d\xfc\xbb\xdf\xf8g\x9b3\x18w\xc6\xf9\xaf)\xb3np\x89\xd7\xf5\xfau\xd1\xd05{y\xba[\xc0\xcb\x16\xea\xe3\xb1V\x97\xc2\x90\xfc\x85\xdc}\xfd6\xde\xd4T0\xeen\x97\xfc|*\xd4\x1cs1T\xb7^\xdf\xd0F\xf9\xbf\xd4\x9f\x1e\xc3g\xf9_K.\x95~\x0eN\x83\x8aO\x8f\xb1\xd2\x17\xa1?\xca-\xb0\"\xeb/\xb7\xa4\xd9\xb4\x03W(>;/\x0fEUKQ\xc38\x10]9;\xc5\xce\xe4\xb6Bw\xa4\xe2\xe4/\xdc\x9f\x8c5\x12\xbe\xa3nB\xf9\xbd\xf7\xe6\xea\x1a\xc4;z\xf6L\xbe\xa9\xe7\xe9\xf5\xbf.\xe0=\xdd\xbe\x00\xe1B|qyI\x8bc\xbb\x10\xa5\x19\xe9\xe9\xb0\xa8\x9b\xdd\xe5\x9b\xab\xeb\x0f\xfc\xe7g\xfc6Q\xdf\xbd\xd2>\xd4\x0b\xa4SE\xabX\xb9\xe4\xeb|\xc6l\x86vC\x9a\x82TL\x9b\x0dV\xa7\xceu\xda\xc9 \x9d\x83\x9bw\xd10\x99.\xe0#\x17 \xc4Qzsu\xcd\xfbt\x01\xf7\xf5I\xb8\xa1{.z$\xada\xdb\xf9\xfc\xf1\xeeU]m\x8b\xddgyR\x85\xe1\x07\x11x\xd4\xf7\x9fuo\xbf\x97y\x11\x9f\xf5t\xf2\xd6d\xc4 \xef\x14\xd7I6t]l\x04?\x97vUu[(B\xea\x93\xe1\x12\x87\xf6\xe8\xef\x16_[\xe2I\x07\xc5wb\xfbQ\x08t\xc6\xb1\x18kE\xf8\x7f\x1a\xbe!\x1e\xff\xd7K#\x18\xe3\xd2\xed\xd2\x07\xd1\x02\xef\xd4\xe3\xeec\xbf\xf2e\xf6\xa7\xc7|\xdb\xdb\x8c\xb4\xedB\xcd\x15\x0b\xd8\xe8\x83.\xa6\xdd W\x9d\x0e+jYy\xf9\xd9\x92\xe8h\xf5V\x08\xcbBX\x11\xf1\x1c\xff?{\xdf\xd7\x1c7n\xec\xfb\x9eO\xd1\xd7\x0f\xc7v\"\x8fcg7\xa7\xa2{\xf7\xd4\x91%yW'\xfeW\x96\x9c=\xa9Tj\x8c\xe1`F\x8c9\x04\x97\xc4H397\xdf\xfd\x16\xd0\x00 \x92\x00\x01\xfe\x91\x92[E\xbc\xecZC6\x81\x06\xd0@w\xff\xba{G\xb8\xaa\xb9\xd8$\xabO\x827l}|Z\xd4\x8d\xe7J\xe1\x91\xf3\x8d\xa5Q\x15U\x1d\xce\x92\xe5\xf1N\xba\x86%\xadR\xb7`)mao2r,\x9av\xa5\x0d-\xb7\xfb\x86\x1a\xb6 7\x0f\xdf\xd22\x03\xed\x86\xe2\xf1\xba%\x05$\xf1.\xe6%\xe7L}\xd5\xe8\xbb\xead\xadTk\x03 \xe4\x1b\x8f\x1cE\xd9u\xa4M\x11\x12T\xc3=F$\x890m\x9cI\xddD\xad\x88\x05.\xa1K\xf4\x8e${\xc2\xb5\x96\xb9bk\x8c;Y3 \"\x8d\xb7)\x11{\xc6 \x83G:\x9a*L\xf2\xda}^-\x97\xb8P]\x03Z\xf0x'm'w\xb18\xcbv\xa2w5}\xdej\x91\xb2[\xa2Pc\xb1\x01 \xda\x160\xab\xfd\xab\xc3\xfa\xd5e\xfbZ\xd3\x94\xedlv\xa8N\xfb\x95\xad\xb7\xde\xd7|\x96\xabs\x16\xa7\x86\xba\xce\xd97\x9a*\xb3\x14v3NQ\xa4\x8a\xa9$\xa9\xea\x84-\x87\xc8\x87\x8f7\x97\x18\xb4\xa2\x14\xc12\x01!I\xe1*\xd5\xe5RKIm\x1a\xcd[\xc4\xd0\xdf\xd5\xfeH\xb9\x8c\x8aj\xff\xaf\x8e\xb0e[&U\xcc\xba\x87OE\xbf\xa8\xfe\xb4\xd2[FL\x9aW\x10\xeeDbu\xbem\xa8\xb9F\xb7\xa4X\xcaM\xd9\x13&c\xc9\xa3\xee*\xeaZ~\xa2\x99\x13tK\x94\x1a\xa3\xd6\xbeT\xcc\xc5\x01T\x89\x85\xf6\xa2S\x96\x9e&\xebV\x12\xf7%\xa6\x82\xedK\x04.\x96\xd0\x95U\xe5MY\x92\x91#\xcd\x03\xc7\xdb\xbd\xbe\xe2\x0d\xec\xd3\x82\xf2\x13\x145u\xe9\xa5c\x14cq\x01\x10\"/#G-=6B\xdb\x84\xabM\x83^I\xaa\xca\xb0B\xa2H\xce\xa7<\x1d2r\xac^o\xb2@\xcay1\xb4\xb2L/\x01~\xd0\xfdy\x862r\xaft-\xf9\xd7u\xad\x00q\x93\xd9\xfa\x1c\x7f\xde\xfaRA\xb9\x92\x83\xe5\xdb\xf2Z\xfc\xeb\x94\xf1_+\xb4\x1b\xcacq\xc8\xc9\x0b\xdd\xa6\\\xcfMZ\xfat\xb3\x9c \xe6:\x95*z\xe8\xac\xb9\x96b\xbc\xa9X,\xce\x03d\xd73\x1a+\xa0Zc\x0eU\x97\xd0\xb8mE=#\x01\xc9\x82\xe7\x1ai\xae\x03\x1f\xe4\x17d\xbf\xf5\xe2n\xcd\x18\x933*f\xd3\x8c\x8d\xa8\xf5\xee)Z+V$!iD\xc5\x9ai\x1b\xd4I&\xa4q\x1e\x13N\x8d\x8fjM\x05\xe8A\xe6\xfd\xc7\xc1\xc8R\xc9\xf2\xb7fo\xc4\xa3\xda\x84PR)\x94\x02$U\x81\x0d\x89u\x19X\x1eg!\xd7\x80\x9b8\xd3\xbb^Cq\xc5\xab\x06\xee\xd04\x9dKFHI\x15\x0b\x81,\xd5'\x83\x98\x94\xd7\x8b\x86\xd7\xdd\xcc\x04\x1boS&$f\xbc1\x87\x1a\xaf\xd3\xa7\\_\xc4y\x9c\x15'\x10/\xe8B\xff@\xd6uSv\xed\x9e\xf1\xf5&\xce.h\xc4r\xc2Y\xfeUt+\xe6\x05d\xac\xe0*\x109\xc0\xc8\\\xear\xf3\xd1]k\xf3\xd1\xed>\xba\xa5$\x8c\xcdT\x82<\xce\xb2\xbe\xf2\x0f\xdf)\xa9\xaf\xd79-J\xcf\xb0>X\xd4\xa9T\xca_\xf5U\xbb\x91U\x9f \x0dT\xa8\xbe\xe2+\xb9\x89\xfaQ\x19\xfe\xa5\x0d\xeeR\xe7\xd7\xf8\xfb\x86\x9co\xeblorF\xd6\x11)x\xb0\x89\xfb\xcd\xe7\x8fg\x17\xe7g\xd77n;w\xe3\x917\xef>\x9e\xff\xd1\xf5\xe3\xf5\x9f?\x9c\xbb~;+\x7f,\xed\xd5\x9e\xaf\xdb\xf9Y\x1bd\xc3D\xb2\xd2\xbfUv\x12\xf1\xe7\x9b\xc35\xcd\xef\xe2\x88V\x1c\x92U\x84\x90`Y+\x05\xfc\\9\x85\xbf\xd3\x9c)\xdf\xad\xc4f\x88\xef\xe83\xdbIA2\xed\x14..?}\xbe\x1b\x82\xd9\x86$u\xe9$X\xcf:\xd6\xf9(\x0e$,\x03\n\xb6\xb0\x91M\x99\xe4\x05\xbc\x89^`x\xb2\x17\x075'\x03B\x86?a*\x18\xd1:\xd3\xc1\x80+%\x0c\x04tv\xd2\xd40\xe0J\x0f\x03\xde\x9e\x84\x1e`\xdc\x95&\x06|gW=]\x0c\x04\x9f\xb5C\xd3\xc6\x80#uL\xe7\x97\x03\xef*=\xd3\xc8\x805\x95\x0cL\xde\x11OZ\x19\xf9\xc1\x83\xad\x03\x96\xc3\xc0-\xfe\xb9\xa3F\x90G2\xfbv\xc2\xa4)g\xc0S+h\xca\xd430e\xfa\x19\xe8\xae\x184*\x0d\x0dL\x98\x8a\x06\xbc\xe9h`hJ\x1a\x18\x93\x96\xc6\xc6\xb1c\xa6M\xce\xf6\xeaA#\xd2\xd3Xh\x95\xc89\xb0V\x10\x1a\x97\xa6\xc6BN\x02\xd1\xb9\xb5\x8a\xd0\xd4\xe9j`|\xca\x1a\x98>m\x0d\x8cK]\x03\xe3\xd2\xd7\xd8\xb7\xa8\xb5\x93\x93%\xb5\x81\xc9\x13\xdb\xc0\x94\xc9m (\xc1\x0dL\x99\xe4\x06:\xab\x0d\x8dKvc\xdb\xe3\xd6\x8aC(j\xbc)p`t\x1a\x1c\x0bA[\xdd\xa1\xc1\xc9q\xc0\xad\x8au\x1e\xf1\x1d\xf5\x87B\xce\xff\x81 slb\xcfY\x85\xc8\xd7\x8fq\xc9s\x1a\xc4d*\x1dk-\xa2I\x92\xe8\xc0\xd4\x89t\xc0\x92L\x07\xc6'\xd4iP\xe3\x96\xaaD\xe3R\xec\x80/\xf3\x0ct\xd5&\nH\xb7\x03\xae\x82!=\xd2\xee\xb8i\xb4\x12\x16\x8cJ\xc1\x03=\x98\xe1K\xc5\x03\xdeq{S\xf2@\xbf\xb4<`/\x12\xd3Q\xb5h\x8a\x14=0*M\x0ft\xcd\xe1\xc0t=\xe0K\xd9\x03\x9e\nF\xbe\x1aF\x1d\x13\x1b\x9a\xc2\x07\x02\xd2\xf8\x80\xad\x96\xd1\xa8t>\x10\x96\xd2\x07z\xa5\xf5\x81\x90\xd4>\xe0d\x9au\xc9\xba\x9e\xf5\xa5\xfa\x81\xd1\xe9~\xa0\xab\xa3\x8d\xbfN\x9a\xfa\x07F\xa6\xffi\x90\xb2\xd5<\x9a8!\x10L\x9c\x14\x08:+\x1fYk\x1fM\x95 \x08\xa6L\x12\x04\x93'\n\x82\xe0dA\x10\x920\x08\xc2\x93\x06A`\xe2 \xb0\xd7B\xb2W\xc7 O3\xe3\xab\x87\x14\x9cH\x08\xc2\x92 \x81m\x18S&\x15\x82\xb1\x89\x85\x1a\xb4,u\x92\xa6L5\x04\x93\xa6\x1b\x82\xd1\xeb\xc1\x9bv\x08\x02R\x0fA\xe3\xd0\xb1\xa4 \x82`\x13{\xdb\x1b0*\x1dQK^\xafc\x926R\x12\x01\x8cMK\xd4 \x86]j\xa7&\x82\xae\xf4D\xe0p'\xf3G\xf0\xaas\x87\xc3\xb8S\xc3\xeev\x12\xbb\xba\x8d\xeda\xfd\xdf\x9dn\xe0\xce1a\xf3\xb8~\x03(t\xa48\x82\x92\x82+\xcd\x11x\xf7\x84n\xc3\xd3\x1d9\x08\x92\xb4\x9d\xf2\x08\x02\xba34\xf5Q\x8b\x90\xe1Vk\xa5?\x82\x11)\x90`|\x1a$\xf0\xf2a\xd2tH`K\x89\x040AZ\xa4\x06=\xbc\xef\xb2\xf6\xedy\xb2\xf4H0i\x8a$\xe8\x99& \xbaC\x7fF\xa5K2\x08\x95\x89\x93\xcc\x94I\xa2\x0dI\x9b\x14\x04yT\xdd.1\x8f\xea\xdf\xdc\x00=\xaa\xd7,\xd0\xc7N\xa4\xe3[\x1a\x8ell\x06\xd5\xd8\x04\xff\xd8\xb4z\xd6p\x1f\xa7\x18\xb6\x87\xf98\x1e\xef\xc2\xd2\x0d\x0e\xed1\x89\x8c\x89\xea\xd1Q<&\xbd\xf0\x00\x9e\x91q\xb7\x96\x98[+\x0f\x1d\xb1\xb6\xb6\xe0\xc6\x89bl\xed\xf1\xb5\xa1\xb1\xb5\x8d\xb8Z\xeb\x98\xdc\xf2bt,\xad\x0c\xed4\xb7\xc2\x808Z>a\x0c\xad=~vT\xec\xac\x8e\x965\xe8u\xc4\xcd\xb6bf\xad3b[N\x93\xc6\xc9\x0e\x8f\x91\x1d\x1c\x1fkF\xc4\x9a\xbc\x1a\x14\x1b\xdb#.\xd6\xbe\xbae.\x0c\xbcN\xd8E\x85\x0ey\x95\x03\xd5\x07\x98\xda\xc1\xbf\xaa\x84\x86\x12)r\x0b\xab\x08\x88V\x06\x0d\xa9o\x824[I9H7\x1b\x1a\xf1\xb8t\xa0=\xd9\x92\"\xcb\xe3\x88>)\xaf?(&\xcb\xf5\x8e\xe5)\xd8\x8e\xc2.\xde\xc5\xe9~\xa7>\xab\xc1\x1c\x15 cGw\x19c\x89\xfd\xa4\xfb\x91ry\x85\xfc9\xe6\xb77\x87b\x00\xae\xff\x81r\xc1\xdc\x1c\x1c9`\xf8\x01o\x13\x0d\xbe6\x14T\xf5\xae\xfc\xc72n\xa5G\x0c\x8b9\x08\x0f\x04px[3\x92\xf3eA\xf9\xf2\x96\x92\xb5=,\xb4\x1f\xdc\x8bq\xe2\xc4z\xb9p\xdf]\xa8\xef\xf6\x10\xc1\xa7\xe09\x1d\xcbJB}\"9/(\xffI\x8e\xf8W\x8d\x1f\xe5Z\xbb\xba0gg\xd8\xd4L\xc3O\x05\xa6\xb0p\x00\xbb\xbb\"E\x1c\xa9H\x11\xa1\x99985(\xefpc\xf0f\xf3*\xd8\x1d\xe9=\xb0\x91,{\x18\xd2>EX\\\x1a\xd3\x82\xa6\xc5\xbe\x80\x88dxO\xe3\x08\xdfR\x7f\xce\xf7\x89J\xcbTS\x03%?,\xf4\xccm-%\x7fK!\xc4\xa7\x84\xe0\xd6\xda^\xf50j*\xa5>S\xc9m\xec\x85\x13\xb0XC\xdc\xda>Xp\xc2\x95\x00B\xa3\xe7\x8eD\xb7qJ\x9b*\xac\xecEM\x02\xe9\xd61\x15\xb6h'\xcf+\xdd\xfb\x9c\xc7\xbb\xa1\x00\x925\xe1\xf4\x85x\xbf\xf1\x844\xdf\xb7\xe5\xabn#v\x86](\x81\xaf\xc3\xe0C\xbdx\xe4\xb1n\x13\x18\xe0\x1cr\xba\xfc\xb9S^\xeb\xd6\x1d\xad\x83\xcd\xcd*\x08a\x17\xf8Y\xe6\x91\xeb\x8d\x87\xea\xf2]7\xb9T\"i.^Ny\xe2@\xf5aA\x16\xf73Jk\xb1\xed\x1b\xcf\x8a?M\xfcyi\x1f'\x9c\xe5\xc5\xc4\x84\x9b\xe3\xaaLPY\xa6c\x03\xca\xbfe9\xbd\xb3\x8a\xcf\x94\x1e\xf8\xf2\xc1\xfaXJ\xf4\x89\xe9\x92,\x9b\x98\xa2\\\x7f\n,:1iz\x17\xafi\x1a\xd1\x89\xc9\x96\xf3_\x1d\x9b\x96\xfb\x87\x10D\xac\xa0\xf9R\xe5\x0c\x99\xea\xfb\xb5C\x1e7|=\xc1bi\x1e\x94)\xbdu$\xadx\xce<\xfe\\\xc1\xa2\xbd\xaeh5\x05\xa3\xfc\xa3E\xd1\xd0\xcd\xe9Z\xf1H\xc3\x91\x80\xc9\x9bCa$\xed]\xa9\x98\x1dT\x01\xf1\xae\xf0\x9fJ5\xf9I\x1e\xee\xbfye\xc5\x19\xa1\xb5L\xa2\xf2\x93D\xea:\x18\x0e\x96+g\xdc\x02\xe0g\xfa4\xa7\xf07\xa1\x08\x92mNi\x95\x89\xd5B\x0f\xf3WJ3\x80\xf5{2\xc2bGI\xaaz\x8f]<\xcb\xb2\x9fHq[\xe9\xdf\x95\x99\x9d\x16Tt\xab~\xcdQ\x8b\xf5B\xdc\xb5j\x16\xf1\x82b\xacE]O\x93\xb4\xd6\xb5\x9b\x9dANo\xa9\xd1K\xc7N\x08\xc6\xad\x1f\xe7\xbd\xc0w+X\xef\xf1FI\x97w\x8c\xd3\xa5\xbbs\xd8\xbc\xb7\x10\xff\x17E\x93\xdf\"\xee\xdf\x83>\x04\x81\x1f\x03M\xae\xf3 \xefN4[3\x9d\x88\xbdan\xe3\xcb\x8b\xe5\xfb\xeb\x1f\x977\x7f\xfet\xb9\xfc\xf2\xe1\x8f\x1f>\xfe\xfca\xc0\x9b\x9f>_\xfe\xe9\xe3\xcd\xe5\xb07\xcf?\xbe\x7f\x7fu3\xe8\xdd\x8f\x9f>^\x97y\xfb]\xad\x96v\xbf\xffx\xfdb\xac\xdedB\xde\xf5\xfbb{\xa3\xa0)\x18\xdd\"\xb6\xb4\xb2\xaa\x1a\xf8@w\xb8j\xd5\xca\xe3\xcc*\x8c\x1a\xcd97\xa7\xf0'\xc6[~\xbc@\n\xc8\xe7S\xf8$\x0fO\x92t\x93qib\xf5\xd6cA\x87\xdc\xea\xb1\xe5l\x9fZ\x14\xabz\x0bS%\xb0\x19\x9f\xfe\xdd\xeb\xceg\xddj]\xbd\x05\xca\x0e\xe8!?\xc0\xab\xd5T\xad\x07\xdb\xc1w\xc27[\x90\xaaXo=\xb8\x01=9\"\x9aG\xa9\xac\xb7>\xebB\xb7\xf0\xa5\xa9[\xe8DA\xff\xc9\x82\xbe\x13\x16\xa8\xa8Z_\xb1\xab\xad\xcdG\xad\xa8.\xcb\x83\xe1\x03\xf5\xd9X\xea\xad\xd4\xe4\xdc\xf7\xfdz\x1b\xd0\x13/\xab\xabNx0>\xd8\xfa\xac\xc3p\xf9T\xfa\x80\xc3>?-\x07\xfa\x1f\xa3\xe2\xb4\xaa\xfa\xac\x9dB%'U\"\xd4\xee,\x16\xa0dR\x1c\xc5\x19A\xff\x8e\xa1\x1cj\xb8\x83\x97\x84\x01\x83\xaa9J\xec\x8d\x1e8M\xed\x16\xf2z\xfb\x17\xe2s\xd9\xe7\x1az\x9e\xd7\xb3(,\xe0c\x9a\xf8\x19\x8e\xf8G4US4`\xf9Y\\\xa1v\xba\x9e*\xbb\xb9\xfc\xffq1WL\xee\\\xd6^bb\xd97\x97\xb5\x9f\xc3\xaduoY\xd6^\"b\x01\xd8&8h\xfe\xfa0M2\xacV\xed*\xcb\xa9\xd0\xcb\xa0\xf6Y\xf9\x97MnIek\xb6\xca\x9a'z\xdd=J\xe3\xb2\xedzD\xaa\x87\xabY=\x0c\x7fsV\x0f\xab6\xab\x87\xb3z\xd8\xd5\x02e\x07\xf4\x90\x1f\xd0C\xeb\xe8\xc1v\xe8wf\xce\xeaa\xd0;\xa1\x13\x05\xfd'\x0b\xfaN\xd8\xac\x1e\xb6\xda\x80\x9exY=\xab\x87\xfd\x8f\xd1Y=4\xdaC\xf3yV\x0f\x1f\x95\xc9\xb3z\xe8c\xda\xbf\xb2z(\xef\x14\xcb;\xc6\xe3t\xbb\xcc\xd8}\xf7E'p\x01\x86\xdd#\xaa\x83\xe4q\xbf\x1bt\x8e\xf7\xfc\xa2\xef\xfc\x0e].\x17\xda\x85,\xd6\xcc\xa5r W\x0ew\xedRFTF\xc9@'9\x1d\x18q\xcf\x04\x8dM\x12G2\xe4A\x86\xfb\xda\xd7D\"\xb4\x9d%\xe6\xad_\xca`\xc6o\x8f\xe5\xc86z\xb8\xec\x80\xceb\x0b\xf8&\x04~\x17JF\x05^\xf5\x03\xbf\x0d=\xbe\x0f\x0e\xc4\xb3\xbd\xf5\xe8\x00\xf4\xec\x04ta\xa6\xed-\x14Imo=\xc7\x02\x03\xc6\x03\xddXl{\x0b\x14\x00\xcd\xa6\x05\x82\x13\xb7moN4\xb7\xbd=f\xe7BEW\xb3\x85\xa1\xc4\x83\xc9\xd9\xd1\xe4\xa1f'\xdd<\x18s{\x0bE\x9e\x07\x13\xb4!\xd4\xfdxt{\x0bE\xa9\xdb\x9b\x1b\xbbno\xbd\x17^\x98\xf9L\xb7\xde\xe4C\xcf|\xb3\xd9\x91\xf2\xf66\xa2C\xbe+A\xbdy\xb0\xf6\xf6\xf6H\xb2\xb3\x8f\x91\x07\x861\x0d\xfa\xa9,U\x1b`\xa5\xd3m\x00\xf7` \x07\x01zZ\xeft\xebc=i\xb6\xfe;C\xb7\xbe\x13\x0e\xc3'\x1d\x86N\xfc k\x9fn=\xac~\xba\xf9#\x1c\xecm\x00_\x06\xf0#\\\xf9\xa0\x8a\xf5V\x95\xe7\x1e\xcd\x96\xfe\xaa\x176\xdcd\xeb\xb7 \xd9B\x9c\xae\xa5\x9f\xadPY\x97\xd4\x06\xeceL\xc6V\xf9\xbfct\xc9\xfa^\xa8Zo\xedWI\x1c\xfd\x91\x1ek\xc6\x92o\xf4X\x18%\xf2\xfa\x9d\xf9\xfb\x82b\x82\xdd?\x95\x1b?\xf0\xedP\x90V\xbd\x0db\xf2\x10\x85\xad\xb4\x91ey\xcc\xf2\x98\xf7\xdeO\x0f\xdaG\xdd\xbb\x90N\xf5\xdc\xde}7vO98\x809\xbd\xf7GO \xd8\x93A0\x80I0L\xf6\x0d`\x16\x0ca\x18\x0c\x95z\x8f\xd7\xc1\xfe\xf2nri7T\xd6\x0d\x91t\x03\x18\xdbO\x82\xc0\x18\x19\xf7\xe0\xbd\xeb\x87\xe3-\xdf\xea\xd7\xad\xb0.\x89;9K\x97~C{\xe0\xd7\xc3\xbe\xba:\xfe\x9d\xa4\x86\x83\x1d2\x0egK\x83\x9c\xd5\xf5\x92\x91\xad*\"V1\xad\xd6\xab\xea\x01\xa3\x12\x99\xf1G\x1d\xe2\xab\xcb\xbf\x19\xe5\xbfl\xb2\xc4.A$\x02\xb6\xa5\xd28\xa7\xcb9I]\xc5\xd4\xaa\xaf\xe8\xe2_\xe2\x7fu\xf9\xb1\xa2\xa0k\xf1\x8fOdK?c\xf1\xa5\x05\xfe\xde \xf2\xcb\x9e\xe6\x18I-\xc8 NP\xd8\xb1\x82\x03\xddl\xe2H\\Z\x92\xe3\x02\xae\xb8Q\xf17\xe3\xc7v\xb05/\xf3J\xa7\x0cv,\x97\x1c\xdc'\xf5\x82\x8f\x96\xe3\xce\xcb\x14K\xf8\x98K%\x91\xe4%7\xe4\xff\xa4\xfb\xdd\x8a\xe6XHKv\xc5PBZ\xfd7\x19%K\x86-%\x91fh\x94X\x99\xb2FV\xcc\x0bU\xf9*.`\x9f\xe2ZZ\x03\x13|\xb8\x8f\x95zc\xdf\x0f\x8e\x1aI}\n\x0f6H\xe8^\xea\x1a\x84\xfa\xdf\xd6\xb2\x8e\xdf/^\xbbJ7UU\x10q\x92ZK\xbe\xbd\xdc\xb9\x91\x93c|)&\xcd\x03]?\xd4R\xde\x8c\x1f\x96y\xad\x93\xd6\x8e\xda;\x0b\x8e\xbb\xb2w\x11:\xd7\xe0\x8dN8\xae\xe8\x9a\x8b\xfd\xd0\xbet9?T\xe3\xc3M\xbd\x14\x95\xbc\xbc\x99\xdb(bkZd\xc4\x9e\xd2\xdcB\\\xf5\xf5\x03\xd9\xe1k\xa5\x90;gk\xda\xa0k#i\xbb\x80\xba9S\x1bJ\xb9\xb8\x05\xed\x90d\xfe>\xde|\x96[Y\x8a\xca\xe2\x04\xe2\x0d\x90\xf4h\xd2\xcd\xc9\xfd2a\xdb!\xa4[\x02V\xcc\x83\x8a\x99\xb0\x85MB\xc2\xb6[\x9a\xc3\xb3\x9c\xdc+\xe2\xcf\x17\xf0^V\xc0mPJY\xfabM9\xcdwq\x1a\x17<\x8ej\x9a \xdb\x16\xb6\xfe>l\x8d\xea]\xb1u\xe7\xd4\xf1)\x1e\xdd*G\x8b\xff\xd8:\xaf+\xb6R\xdd\xe6k\xff\x9c\xca\xd7\x92\x84\xe3\xb7\xa0\xfbWwQol\xdd\x03\xc4\xe65\x0d{\x07\x8b\xcd?dl\x01\xf6\xd8\x80\xd1c\xf3\x94\xff\xc6\x16H-\xd4\xd0#ZU\xc8\xbb\xbc\xe9\xa5\xd5\x84\xc0}N\xb2\x8c\xe6p/o.\xea\x02\xd5I\x90\xa4ku\xe6\x93\xdc\x93\xfc\x08\x07R\xab_)\xa4\x84\x14[v\x98P\xd8\xc8\xae%],\x0f\xaeGESU/\x1cg\xbf10U\xad\xda\xbb>]\xe3Q\xd7u\xc1\x9c\x97U\x01t]\xc9\xb3,\xc3\xdc\x1c\xaa\x83\x9a\x93\x01!\xc3W\xf5\xc0K\x05\x82@\x91\xc4h\xa93\x19\xa0\x0b\xa7\x88\xd1\xab\x8a\xd8v\x8e\xefE\xc7e\xd1K\xfb\xe0\xe9\x81F{n\xa9#\xee\xeb\xec\xd9\x9b\xf3\xab\xf7\x98\xd7\xe7\x1d\xdb\xfa\na\x93\x14\xeb\xdb\x8b\xfb\xceA\xbe\xdb\"\xa8\xf3^&l\xdbG\xe3\n=\xc0\xc4\xe6[\x0f:\xbb\xe2t\xc3\x86\x9c\xb5gU\xf9r\xa3D\xbd\xeeA\xf77\xb7\xa4X\xde\x93\x94\xd3u\xe0\x97\x03\xef*ge}\xd6-)t\xc9Z\x8a\xf9\x9a\x1cE\xe5EW\xf6\xc5\xc3v$bi\xb1\xdf\xa9\xbcb\xf6n\xf0\x83\xad\x03\xbdL\xc8\xe2\x95\xe5>wV\x03uHf\xdfN\x008\x83/\x9f\xdf\xbd\xcci\xc1\xf6yD!%;\xa5\xec\xef\xd3\xf8\x97=M\x8e\x10\xafi\xca\xe3M\xac\xdcE\\\xa5|\xb5\x0b\xad\x82\xe61I\xe2\xbf\xd7K\x06\xeb&+vG,\x81\xd5~\xb3\xa1\xb9\xde7\x0b\xacK\x84c\xc0\x9a\xb7Z\xac\x11\x0e %\x855\xd1\x1aK)\xe6\xb7V\xe1|\xcc\xe8\x02\xd7-\xc9\xe2b\x11\xb1\x9d]\xbe]\xcb\xddS\xa0\x11Pl\xcf\xb4)\x0f\xe0\x99\xb2\xbc\xa0\x15\x15\xb7\xdbs\xd85LG\xba\xad\xac\xdb_\x0eKb#\xe2]\x96Pq\x0c\xa1\xed\xba\xc8h\x14o\xe2\x08\n\xba#)\x8f\xa3\xd6M\xdb\xa1\x8au\x1e\xf1\x9d.\x04\xff\xf9\xff^W\x98W\xd9/\xab\x03\xbcuZ\xeb;\xea\x8a\xddY\x8f~\x1c\x9eZ\xb0}\xee\xc1_\xcf\xd2\xe3WCoH\x81\xe4\xab\x98\xe7bcu\xf4GI\xd2\x061\x92\xb0t\x8b\xfc'\xcd\xe9\x11\xf2N\x8ae\xec\xcf\xaa}\xa51\xbf\xa7o'\xad\xc5\xf4I/\xec$^\xc9N*i\\@\xb1\xcf2\x96\xcb\x13-#\xd1\xb7\x97\xfbT\xfcG\x9cc8\xb7\x85}'\xd9\x8er\xb6\x81=Gq\xa2\xb7i!\x04\x19\xa9\xae\xe6[\x9a\xd2\\\xa69E\xcbr\x99>\xec\xac%\xbfpJ\x9a\xdf\xb8<\x10\xb1D\xe1\xd5)|\x12\xfd\x14\xfbSu\x99\x98\xc9\xfc\xcf\x7f\xf3\x1b\xeb\xa1\xf2\x961\xd80\x06?\xc0b\xb1\xf8\xdf\x96\x07\xc4\xc0Iz\xb4\xfdD\xd2\xe3B|\xf4m\xcev\xcf6\x8c=\xb7=\xb4X\xd8N\x8ex\x03\xcf\xc4\xeb_dWo\xd8\xb3\x7f\x13\xef?\x87\xff\xb1JE;\x8d\x7f\xb8x\xf1\xda\xc3\x8b\xff\"wd\x143\xe0\x07y\xaf\x11\x94\x07\x8e;.\x9e\xbdel\x11%\xa4(\x9c\xc3\xc6\xae\x88\xc7q\x14\xc6+\xb6/\xfe\xc3\xf2\xb7\x97/\xc5\x82\xf3\xf5\xe5\x9a\xec\xa8\xb8&\x9ca\xaf\xb6\x94_\xa0\xe7\xf9*-8I#\xfa\xecy\xbfNZ)\xd8\xfb\xec\x98\xc3\xdfy\xe6\xf0\xd3\x91\xdf\n\x15\xcdB\x13{\xf4\x96\xb1g\x8b\xc5\xe2\xb9}\xdd\xe2\x0c>s\xfc*W\xb5\x9c\xd9>\x13+^\xbcB\x0e^\\^\x9f\x7f\xbe\xfat\xf3\xf1\xf3s\xbbY\xaeZ\xfb\xae\xcf\xe0\x87\x1c\xdc\xf9\xce\xc3\x9d\x1f\x99\xd5\xde\"8s\xfa\x03\xfc[\xb6Z\xbce\xec\x7f\x16\x8b\x85m\xcd\x88\xce\x9d\x88K\x9fx\x96\xa4\xc7l\xb5\xf8@\xef\x9d\xfd\x8c7\xf2\xd9\xff\xf5\x03\xa4q\xe2X$\x0e\xa6Y\x97\xac\xeb\xd9F\xe7\xad\xaf\xaa\xbe`\xbf\x17_\xd2\x1d\xc9\x8b[\x92\xdc0\xdc\xa6c:\xda\xf8\xabP\xf7$\xdf\xb5\xdc6\x93\x93g\xcd\xd3\x05]\xbbG\x0d\xe8\x90\xe8\xcc\x06\xc1\xa7\x96K\xd0K\xa1\xb1.\xe4\x0f\xe2\xf2\xf8Th\x19\xe5i'NB\x95y\xb2A\nWD\xf3\x03\xe5\x01\x93&G\xadg\xb5T\xe2\xf2\xa2\nd\xc3)\xde\xa4\xa46\xfe\xf4\xe5\xd3&A\xa5\xec\xe9\xce\xa0vG\xd5\n}\xb2al\xb1\"\xb9\x1c\xc6\xe1\xe5q\xf1\xf7'\xc8\x05\xd4Sl\x8a\x97\xfc\xec\x13\xf1d\xfb\x98\xfb\xaf\xeb\x8f\x1fZ\x7f\x14s ~\xa84\x7f\xbc\xa51\xb1\x17\xd5\x95\x045\x9c}A\xb5\xebw\xbbOH+\xcfv\x9b\x80xxM\xab\xab\xc4 \xd0\xdd\x8a\xae\xd7\xd5\xa5\xe2D\xddPZ\xf6\x02\xe3x\xdf\xc8\xc1~\xfdO1\xdc\xafJ\xc5\xad\xa134\xf3\x16zk\x9fZ\xaf\xe1$\xfa&vv\xa5\xdam\xe2\x84\xda\xe4\xa9\x96\x01\x9fh^\xb0\xd4\xb1\xc8\x95\x95F\xd6\x98^J\xae\xff\x00\xafl\xd4\xcaG%\x94R=\xf9:H\x8e\x8bf\xff\xfa\x13\xc9\x8d'\xa7\xf0\xc4\xb6\xe2\xebC\\\xe08\x9e\x9c\xd8)\xc9\x11| ;A\xed\xff`W\xff\xc3\xf1\xa8\x18A\xe3\xc9\x90a\\m\x942Q\x9f{\x9c\xb7\xb8\x80{\x9a$/\xbe\xa5\xec>\x95{\xf1\x96\x14@ \xda\x17\x9c\xed\xd4\x9a\xad\xd3\xab/\xb4\x13\xbc\xca6V_\x85\x03Q\x1f\x15\x0b*\xdd\xb6lIrq5?\xf0U.x\xbd\xd6nY\xb2Vyz\xab>I\xbb\x94Z\xa3\xa0,Aj\x896\xa9\xc9O\x94k\x13\x9e\x89\x1d\xaeY\xd024hk\xd8_\xff\xf2\xd7\xe7\xd6e\xd7;mv\xb8}u\xb5B\x04_/^\xbd:\x11\xff\xf3\xdd\xe2{\xf9\xdf\xef\xcb\xb7\xdc\xf3V\x81\x07}\x0e\xef\x9c&\xf4\x8e\xa4\x1c\xf8\x01\xb3\xda\x93\xd4<^\xf4\xa8\xa4\x19\xdc\xec/'\xdb\xc2\x80\x1c\xa0N\xa0\xd3\xdb'L\xe2\x96\xe5\x15bM#\xb6\xa6k\\\x04\xb5\x1e\xd7@\x8e\x9d\x88K\x13kys(\xa1\x95N\xe4d!\xd7\xec\x00\xfc\xa4!|m\xa2\xbe%\xe0\xc7\xa3,\x0b=\xf0$.\xa4\x1b\xcc\x02\xb7,,x\xcb\xbe=u\x1c@\xaec\xc7\x1e\xc5\xd4qFt\xa1\xd0\xfc\xf8L;B\xb3\xf3\x83\xbdP\x9aN\x9cf\xe7'B\xb1\x9a6\xb4\xa6&l\xc7\xeduq+\x0c\xb3iCm\x86\xf3\xcb\x87\xdct`7\xc3?\xd0\xc2o\x86\x03`\xfc\x08N\x0f\x0e\xc6\x86\xe2\xec\xba\xba9\xaem\x9dW\xb6\xee\xebZ'\x9e\xb3{e`\xf3\x85\x919P\x9d\xde[\x9c\x1b\xd9\xe9\xbb\xdbz`\x8f\xde\xfb\xad\x8fe\xd8\\W\xf6\xda\xef>db\x08\xce\xd3?\\l^\xacg\xd0\xd0\xb1\x850\x00[\x00\xe23\x90\x17\xd8\x82P\x9f=(\xfa.\xce\xf5\xd6\x17\xfb\xe9gN\x1f\xf4\xe7\x10\xfcg\xf8\x08\x07a@\xdd\xcb_\x08E/\ntj\x1ch\x07\x124\x94\x11\x13\xa3A\x03\xf0\xa0\x1d\x88\xd0\x90N\x8f@\x85:\xa8\xb9q\xa1\xfe\xfe\x84\x1e\x8d\xbc\x0b\x1b\xea=\x15\xdb\xf8\xd0\xf0\xf3|\x0cF\xd4\x8d\x12\x1d|\xa3\x1c\x8b\x15u\xa1E\x1f\xa2C\x01\x98\xd16j\xb4\xf3X\xf1\x19\xbd\xec\xd8Q\xaf|\xf7\xadR\x98\x1eA\xea\xc3\x90N\x8d\"\x9d\x18G\xeaA\x92\x8e\xc6\x92N\x8b&\x0d\xc1\x93\x8e@\x94N\x8b)\xc5\xd5\xeaA\x95N\x8b+\x0d@\x96N\x8e-\xf5\xa0K\x87\xe1K\xad\x84:1\xa7\x93\xa0N\x03q\xa7\xd67{aQG\xa3Q\xa7\xc6\xa3\xba\x11\xa9\x13cR\x1f\x02\x95:1.5\x14\x99:16\xb5\x1b\x9d:9>\xd5\x8dPE\xc1\x15\x84Q\x1d\x8eR\xb5\x12\x93\xc8U\x07Nu\x14R\xb5C\x81\xf4\\)\xfa\xa4\xbcp\xdc8\xa6\xc3\xacv\xa3V\xfd\xbd\x99\x14\xb9\xda\x8d]\x9d\x0c\xbd:\x16\xbf\xda\"'o4\xd6\xcb\xc3\xb4\x18V\xb5\x8d,\x03\x1a\x8bc\x0d\x00ovbY\x03\xd1\xacN\x80XOD\xab\x9b\x8e\x05I3\x1a\xd7\xda\x879!\xd8V?\x17\x82\xf0\xad\xbd\x11\xae\x0e\xc0`'\xcau*\x9c\xebX\xa4k\xe7\xcc\x8e@\xbb\x06\xe0]}\x88W?\xe6\xb5s\xc2\xfb\xe0^\xc3\x90\xafV\xec\xebh\xf4k0\xfe\xb5/\x026\x10\x03\xebf\xa2cY\xbb\x9f\x0f\xc1\xc2N\x81\x86\xed\xecr\xeb\xef\xa30\xb1-j\x16\x8c\xec\xa4(Y\x17Nv$R\xb6\xdd\xe56rvz\xecl7z\xd6\x81\x9f\x9d\x12A;1\x86\xf6!P\xb4}p\xb4\x81H\xda^X\xdap4\xad\x03O\xebBP\x86c(\xfd\x98\xda^\xa8\xda`\\\xadu@Sck\xa7E\xd7:\xf0\xb5S#l\xa7\xc6\xd8\x8e_#A8\xdb0\xa4m\xf3`sfv\xecP8}\xfa\xdb\xa4\x98\xdb\x0e\xd4\xed\xc4\xb8\xdbn\xe4\xad\x07{\xebr\xf9\xf3GDCp\xa7S\xdfc=\xf09\xf2\xdd\x83\xc0\xf6\x18\x88\x05\x8f\xab\xde3Bl^\xf7|\x10\x15\x0f:WS\xe9\xc2\xe7\xfa\xf7\x90n\x830\xbaNj\xeah\xb7\xa3tC:5\x19R\xd7\x8f\xd5\x1d\x87\xd6\x9d\x04\xaf\xeb\xe7\xc8 \xccn{\xcf\x1b\xdeJ;jw8n\xb7EH\xc3b\xdd\xc8\xdd\x89\xb1\xbbS\xa3w\xfb\xe3w\xbb\xe7q2\x0co\x07\x8aw(\x8e\xb7\xd5w\x13\x99\xeaB\xb4V\x03\nO\x11\\\xc3\x11\x0e\xcf\x17\x0cp!\xeev\x91\xb4=f\xac\xe0p\xf7\xdb\xc5w\xbf_\x1cNQk\xc3d\xb5\x08\x96\xa9\xde\xb2\x1e\x11s\x96a\xd5\xe6,\xc3\x96,\xc3\xad\x11[G\xeb\x18\xa9\x1ae\xf8\xa0\xe4\x9b\xf6%c\xc1\xc1\x87A\xeco\x0e\xc5\x9b#\x9e\x1f\x8a\xd4\xe7O\xe7\x9d\x90\xfb\xf7lM\xafJlQk\xd3\xb47\x0c^\x14N\x9b\xe3V\xf7\x87R\x0b3\xee\x14E\xbcM\x0d\xa8l\x8f\x8d\xb9k\xe7\xd1\xc5\xaf\x89\x1f4G\x04y\x89#\x11\x7f\xd3\xde\x15\xeb\x97\xa1k\x01\xdbJ\x0b\xbc\x80\xeb\xab\x1f?,\xdf\x7f\xbc\xb8\\~\xf9p\xfd\xe9\xf2\xfc\xea\xed\xd5e\xb3\xd8\x82\xf9\xd4\xc5\xd5\xe7\xcb\xf3fM\x00\xf3\x81\x9b\xcb\xff\xbe\xf9r\xd6\xac\x04\xd0&\xb1<\xfb\xf2\xdf\x1d\x0f\xbd\xbb\xfc\xf1\xec\xfc\xcf\xcb\xb3\xf7W\x1f>.\xa5\x96\xec~\xf6\xf2\xea\xd3\xf2\xd5\x1f^\xd5\x9e(K\x0e\xf8\x07\xd8}]\xb9\x8e\xb7\xa9XC\xcd\x997\xe6\x04\xfd\x96\xbc\x00\xa1\xe2\x174\xda\xe71o\xde\xf9\xb7{\x92\x8b\xfb\x80\xedl\x96`!1=\x06J&bi\x11\xafi.\xce;\xc8\xe96.x~\x94\xf6\xac$\x014&\x88>\xc8\x0e\xb4\xb0\x98J\x7f;\x97\x9b\x01h\xc4\x8ac\xc1\xe9n\x01gYV(\xa1\xc8\x15:\x05\xe5\xb2\xf6\xb6\xb5\xe1.\xf2[\xcd\x0fT\x9fV4\x119);\x9f\xc4\xdf\xa8IR\xd9\x13\x8cwl\xb0X\x9aFl\x9f\x93-v\x87e4\x15\\\xde\x89\xd1~\xfa\x0cd+.M\\\xb9\xe3\xe3D~\x80\xac\x05oRz\x0f\x11i\xdf\xc7\xa4\xb9\".\xaa\xf9\x93\x0cV\xfeJu_\x8a\xf3\xaaWP0\xe5\xd2\x8c7\x1b\x9a[@SD\x0cT\x02%\x08NO\xc1\xc5\xbd^\xa1\x10pg\xaa\x89l\xdf\xad\x1d;\xcd\xb1>K_\xb0t\xe4\xee\xd3j\xc2\xcbE'nA\xea\x0cl|+\xa7\x7f\x93\xf3\xdaRU\xda\x9b\xf0\xb4\xf5\x17\xf3\xcb\x8dU\xae\xe1G\xc8\xd3\x0b\x16!H\xa1 \xe8\xb9\xa39\xde\xd3\xe4\xb6(\xb1\xccx-\x16jGG\xaf\x94\xf08m\xff \x95\xb8\xcd^\xde.k\xfd\xc2\xa5'8!\xbf|DXn\xfd\x1b\xb7\xfb\x1dI_\xe4\x94\xac\xe5i\xcb\xe9\x81\xefI\xd22\xf5\n\x9d*\xd3\"\x16\x81+-\xde\x9ao4gY\x0e\xb1\xc9\xd1\xb0H\xba\xef\x7f\xeb\x9f-!2\xdb3&\xfe\x1a2k\x16\xb9v\xc1\xa2\x8b8\xa7\x11?\xdb\x1f\x16pV\x00\xcb2\xa6nj\xcd\xcf\x9c\xe0\xea.\xf7K\x83\xdc\x9aQ Ui\x8e5\xa7\xbf\xec\xe3\\\x9fTE\xd99v'n\x0d\x12X\xa2~z\n_\xf1\xff\x96B\xc9\xfd\x1a\xc6\xb6\xef~\xdf\xc5\xb6\xd6!r\xda\xf5#.\xb1\x15\x89\xbe\xdd\x93|]4 K\xdd\xdc<\xdb\xc5)CU\xc4\xd8\x98\x90\xd3\x1d\xbb\xc3:(\xe8{\x11\xcb\xb7s\x07\xa8\xb3\xec\xb4\xfd'c\x8e\xf5\xad\x00;%\xeeH\x97W\x9f@>\xa3\xd9k\x9e\x00M>^\xfcq\x01\x9f\xe9\xe6\x14$\x88\xe7\xf4\xe5K\x1ag\xc5\x82\xca+\xf3~\xb7`\xf9\xf6\xe5\xe5\xd5\xa7k\xf1\xe7\x17\xe2\\mN\xc4\xb9\x86>\x9dXz\x19\x17\xea\xb8\xc2\xb3K\xb0\xb4&\x82\x9b\xd2\x82\xe41IyKw_\xedK\xf0S\x89\x08\x92z/^\x07/\xfeh\xb8\xdc\x16p\xc3\x80\xa6rk_^}\x12}nZ{\x8fl/Ag\x96SB('\x95A\xfe\xeb\xcd\xe1\x9c\xa5\x9bx\xfb\x15\x05\x8b\xb4\xd6\xa7MTR\xdb\xac\xfaU\x0f\xf2'\x92\xae\x13\x9a\x7f\xd5\xd3\"z\x838X\xd1\xe9\x1d\x11\xbd\x8e\xe2\xb5<\xc1\xd0\x17\xa7\x0e\xca&E\xf5ns\xed\x04\xed\n\xac\xdc!\xdan\x9f\xf0\xb8\xba\xf6\x05\x86\x84\xeaK\xf3\xe2\xbdx\xbd\n\x0f\xd5\xb7S\xf1\xd7\xfa\x85(ET\xbb\xfc\xa5\x88\xb7\xe6\xcd\xb4v\xbf\xd2\x94\x1b\xc8\xa1\xe6\x1d\xb7\xbc[\xb3\xdcA\xba\xfb\xb6\x8f\x1d\x0f\xbe\xf3\xafb.\x0d\xb5\xad[\xbf\xfe\xc1\xd8|(\x03d\xa9Jq\xc2\xa9\xe9){G\xaa\xf3\xa9\"\x16\xae\x11\xd0\x03\xcf\xc9r\x15\xf3bYp\x96\xdb\x13F\xf7)\xb3A\x93\x96\x99\xd9\xab\xe3\xd6\x14\x7f\xf7\xf5\xf8\\\x08\xc8\x88\xbf\x89\xf9\x99\xe4Ql\xdf*b2e\x80j\xa9\xc2\x0b\xb6\xa2e\xbcvQ\x92\xf7`\xa1\xbe\xaa#\x88\xa6\xc5>\xa7%\xc8Z\xde\x11\xd7t\x8dV$N\xbe\xd1\x02\xf1\xc9\xbb8\x8dw$\x01\"#\x1b\x0c\x82\xf5m\x8a\x9d@/\xb7\xf4\x0f!\xc18\xddZ{!D\x0f\xbf\x15w\x06(\xc8FC2\x95HJ9M\xd7\n\x93\x19\xb1T\x81Aa\x8f87$$\xd6\xb2<\xcb\xfaFC\xf7\xdc\xa4\xad\xedY\xb3\xccT\xbd\xd0\xfad\xc4rT\xb2\xd7z\xc7\x15\x95Z\x89\xa7\xb4\xfa\xa7^\xd4\x069\xed\xb5\x167}mPmn\xd0L\x16w\x95[\xe4WF\xb7\xe4\x96\xd4\x9d@\x05W\x08\x02\xc1Bb{\xb9{\x83_\x1bjz\xc0\x0e\xafk\xda\xa3\xb4l\xeb\xf6ij\xd7~\xcd\xbaS\xab\xee\xd6\xa8\xbd\xdat\xa8&\xdd\xa5E\x07j\xd0n\xf10Tsv\xea\xca\x93\xea\xc9\xa3t\xe4\xb6V<\xadF<\xa96<\xad&\xbc\xe6\xdbG\xeb}h\x8dw\x12m\xd7\xad\xe9\x06h\xb9~\x0d\xf7\x01\xb5\xdb\xb1\x9a\xad\xd4e\x0dz\x0d\xadv\"\x8d\xd6\xaf\xcd>\xbe&;X\x8b}D\x0dv\x94\xf6:Js\xb5\xea\xaac\xf5T\xa1\x99\x9ak\xad\xa1\xa3N\xa2\x9fN\xab\x9b\x06\xe8\xa5\x9d:i\xf3\x92\x8a\x179\xd7\xbd\xb0v\x05\x93\x8e?\x0c\xacE?\xb3\x9a\xa6z\x10\x8b8\x0c\x93\x84\xdd#\x85\x06\xfc\xb2\x80b\x1f\xdd\x8a\xd7\x12\x16\x91\x04\xd7\x9eE\xf6\x9a\x91\\8D\xebu\xf4c\xbe\xa6\xf9\x9b\xa3y\x0d5.\x86\xe6\xa5\xf0\x05|\xfc|q\xf9y\xf9\xe6\xcf\x96k\x94\xf1\xe3\xd9\xf5y\xfb\x8f\x17\x97\xea\xaf\xe5\xa5\xccI\xcc~\x1f\xb3\x7f\xddN\xc6q\xf4\xb2\x9cW\x17^&\xc6\xbd\x005|\xdd\xad\xf2\x82\xc5\x19\x9c]\x9f#\x17\xe3B\xdeHJyQ\x1f\xebi\xed_\x95\xe7\xbc\x88(\xea'\xf2K\x96w\x05KN\xeb\xff,\xdf\x16Y0\xb9+\x8c|L\x00\xb9\x15\x7f\xc8C\xc2\xc4\x87\x06\x88;\x83\xc1\x07\x86\x81[ \xca\xfdl\xdc\xe0=A\x07\x06zWA\xdd6\xfe\xfe\xca\xff\xedqa\xdd\x18\xc6m\x90k\x07tO\x10\xca=.\x88\xbb\xb1\xca\x9b\x87\xe1\xc8\xc0m\xc5\xe8\x9a\x023\"D\xbb3\xfe\xd8\x11\x96\xed\x0d\xc8n\xc7&\x86\x07a\xb7\xdf\xfd\x87m\xac\x83B\xaeC\x06\xeb\x0b\xb3v\x8f\xcd\x1bZ\xdd#\xa8\xba\x198\xea\n\xa4\x1e\x1fB=\xbb\xdep__\xa0\xaf\x96\xd2%`b0j*\x10\x90\xe1\x81@\xf1\x12\x8f\xa1\x91'\x1aee\x10\xab\"\xae\x0c\xff\xb2\x05\x8f\xf1\x8d\x1e\x9fj\xfbNA\x7f\xd9\xd3\xd4\xcc5oU\x96\x1ca nUE\xd3-\x11\x15\xfa\xdfZ!\x8ad \xcb\x89Zp\xb5\xd1\xd7Dq\x19R\x12\xc9\xb0c\xde\xa87\x80\\\x91\xa7\x19\x81m|G\xe5\x1a\xcdiQh\xff\x80P#\x0d\x82\xf5@\xc9,\x97qwb\xe3$\xe4\x88Q\x97\xdf\x94:i\x8fV\xa9\x8c\xbf\x8d)\xab\xb0*r\x8a\x9c 6\xce\xb2\x17 \xbd\xa3\x1a[\xdf\x85`\xbb\x8ew\xfb\x84p\x1d\xfc\x13ln6s\xb4\x06\xaeWg\xe1\x87\xdaz\xe5\x07=\xa1f\x0d\x03\xb1\xdcTO\xed\x81l\x0b\xb8\xa6\xe9Zz\xc2\xf9A9\xc3\x1b1l\xfc\xb0\x94\x7f\x0f\\\x88nTZ\xa3\xbfK\xf55u\xfa\x8a\x1e\x98\x99m\x8dg\xad\x8e\xaa\xdfu.\x85\xda\xecTAK\xf8On\x8bY\xd2\xef(\x12\xbe\x80\xa5\xea\x13=\x0b\x84lI\xd1\x90[\xb51\xe8\x9fu\x9f\xcdPb\xb2b{.\xf3\x01K\x0b\x8c\xbaX\xa9 \xae\xa5\x03n\xf5\xc3\xde\x17\xe8\xc8\xab\xec5\xcdXB\xec\xba\x8d3?\x92\xe2g\xf9\xa1\xd2\x8bH\x0e\xf1n\xbf\x83}*\xc1E\x1b\xb8g\xf97\xb8WvL4\xc4\xf1C;\xfa0\xa3\xb9\xe8\xc4\xa21\x8av*\xe6\xd1c\xf8\x91\x14_\x8a\xaa\xc3\xa4\x96\x94\x99D\x1c\xad\xf6:;\xb3\xee\x10\x9a[\x1d\x13\x8c?VKR\xfe\xab\xbc\xc6M\x9c\x05C4\xd0\xcd\xdf\xc4\xbbx\xd2\x01\xb5\xe8bsy\x1c\xd64e\xadD\xafN\x9b@\xb3G\x9d\x8f\xbbA7\x00\xe7,6\x13_s\xf6\x8d\xa6\xea|\xc0.\xe9<\xd8B\x1a\x08=]~\xb8qO\xfc\xf0\xf1\xe6\xf2T\x9ek\n\x10Q\xfa\xcdI\nW)W\xdb\xb6\xb4\x96\xd4\xf6.NR\x8d^\x11oS\xc2\xf79-t\xda\x06y\x9b\xd9\xb2-\x93{\xc5\x00C RO}\xb6\x85\xca\x90\xe7T\x9c\xfdJ?\x9ce4oNc\x83]:_\xb2|\xb6\xa4\x88@\xb5\x06$\x0e2r\x94\xe7\x90\xb2+\xe9/\xd9\xf9}\x13g%\"+\xce*+\xd9\x8er\xf2\xc2\xf4\xe5\x95\xccu\xee\x1b\x1b&,x1\xaf\xd8\xda\x920\x8d\xad\xcb\x04\xe0*9\xbd4\x12J\xe3\xbf\xc1\xcb\xaa\x9b\x0d.\x06\xe1Qt\x9e\xfb\xd9\x97\xc7g_\xde\xec\xcb\x9b}y\xb3/o\xf6\xe5\xcd\xbe\xbcz\x9b}y\xb3/\xcf\x7f\xe3\x98}y\xb3/\xaf\xd6f_\x9ej\xb3/o\xf6\xe5\xcd\xbe\xbc\xd9\x97\x07\xb3/o\xf6\xe5\xcd\xbe\xbc\xd9\x97g\xb6\xb1~\x9a\xd9\x977\xfb\xf2|k\xe4\x9f\xe7\xcbS\xe6u\x8c\x9f\xd2\x95R\xcb\xbf\xa2\xd5\x03#m0\xc2\x91\x96\xee\x95\x06\xa5\xaa\xa0D\x93EX\x85\xb7\xa4\x89\x9e#9?*\xfe_\xac4\x8c\xced\x1bY\xc5D\x15\xf1m\xd09\xdb\xf3[\x99t\xa1U\x05\xcf\xc8\xbd\x8du{o\x0eO\x0b\xc3%\xb4\x80K\x12\xddV\x8e!\x9dlA\xb9hZ\x85\xcd\x88\\\xa4\xed\x18,^V\x93\x15\xa7\x94<\xa1\xc4\xbe\x95\xd5\xce!\xe6\xc0\xa2h\x9f\xb7cD\xdf\xc8\xf0\xde;\x9a\xea\x1d\xa2\xdfkv\xe8\x996\xf2\x96\x85\x85\xe5s\xf69k\xd9\x82dV\xeb\x0d\xcds4\xbd\x11\xed\x9a\x89wR\xaf\xae\x12Ld\xe4\x88\xbfmh\xd3%\xaa\xdb\xfd-K\xda\x85\xf6\xcc\xd8\xfa\xea\xcf;\xbac6\xf7L\xef\xf0RAHG\x06W\x06\x81\x94q\xfa2b;\xe9P\xc0\x05\xa9\xe7\x07\x1a\x0e\xa6\x16\xe7\x7f>\xfb\xfc\xe1\xea\xc3\x8f\xa7B8DI\x8cE\x98\x05y\xcc\xe7\x90\x1c\x81\x1eT\xb6xz\xe0\xda\xf0\x9f2\xde\xae\xb5\x17\x91$\x91\x02s\xc7\xac%\xac\x8cB\x15\xf8\xe4W\xd1\xf1\xaf:\x9e\x17\x9e\x15\xb4IR\xa75\xdf\xc6\xfcv\xbf\x92\"\x01\xddt/+\xff\xdd\xcb\xb8(\xf6\xb4x\xf9\x87W\xaf_?7\xb9.\xd6\x1c\xdb\xf3%\x16\xe5\x0f\xe4\xbf\xbf\xb4m\xab\xd6\xaf\xfa\x8e\xf6\xf4\xadd\xd0!~T\xdd\xc2P(c\xa4\xbd\x917B\n\xfd\x945W\xef\xaa\xf4\x16\xe2\x1dU\x8a\xf1[R\xdb\xed\xf4\xc0iZ\xc4,]\xa2\xd9\x7f\xf6\xfe\xcd\xde\xbf\xd9\xfb7{\xfff\xef\xdf\xec\xfd\x9b\xbd\x7f\xcd6{\xfff\xef\x9f\xff\xc61{\xfff\xef_\xad\xcd\xde?\xd5f\xef\xdf\xec\xfd\x9b\xbd\x7f\xb3\xf7\x0ff\xef\xdf\xec\xfd\x9b\xbd\x7f\xb3\xf7\xcflc=;\xb3\xf7o\xf6\xfe\xf9\xd6\xc8\x03z\xff\x94U\xbf\xa5\x85\xb5,\xech\xba)\xf50\xfdW9\x9f\x11I+\xaf\xcb\xaa\xa9aH\xe3}\xcb%w\x7fKS%\x8e\xb0\xda\x84\xf9\x9d\x94q(\xf6\xd2\xce@S\xbe\x10\xebR\xdc\x97P\x80\x15T\xd6\xc8\xae\x93sX\x87\xc5*\x8dH\xfaTj\xb6\x18x\xb8F\x07[\xcb\x13!\xab\xdbb\xc1h\x83H\xca\xd2e\x94\xc7<\x8eH\xb2\x9c\xdd\x0e\xb3\xdb\xa1\xd6f\xb7\xc3\xecv\x98\xdd\x0e\xb3\xdbav;X\xda\xecv\x98\xdd\x0e\xfe\x1b\xc7\xecv\x98\xdd\x0e\xb56\xbb\x1dT\x9b\xdd\x0e\xb3\xdbav;\xccn\x07\x98\xdd\x0e\xb3\xdbav;\xccn\x07\xb3\x8d5)\xcfn\x87\xd9\xed\xe0[#\xb3\xdbar\xb7\xc3\xb1\\u\xf16ef\x90TM;\xbd9\xbc1\x92\xa7\xc9Dj\xb2\x88h\xad\xec\xa6`\x01I\x922\xb0J\xfc\x17\xd8\x1d-Mbd\xcfo\x87\x95\xaf-#\xa9\xca\x17m\xd1\x1f%\xfd2\xa5\xdd\x9e\xdf\xb2<\xfe;\xee\xaf\x9c\xca\xbav\x1d\xf9\xde\xcc\x15\xa5\xcd\x14hL\xc5!\x9d\xe8\xa0\xa4\x1d\x13\n\xad\xe0\xea\xa6\x0c\x92\xa9\xa2\xb7\x06%Ql\xd94\xfc\xb5E\xeb%n\xab|\x82\xb5\xd08\xe3\xef\xca\xa8\xcb\xa3[ub\xaa\xa2\x83e8\x9bA\xae\x1e\x15WE\xb2\xd5C\xd78Se+#\x96\xa64\xe2B\\\x95\x1f\x94Y\xff\xcc\"a\x06\xc1$\xfeV\xbb)t\x95\xab\x15W4V\xc8\xb5\x81+\xa9\xb14\xf5l\x0b%gMru\x01*\x0dl\xab\x9c\x91uD\n\xd9\xb9z\x0eB{\x96\xc17e\xf2@\xee\xcf4\xa8\xa3\x04\x07\xcdyp\xe2L\xee\xf0\xb2u\x98\xc3|\xd6\xa5I=k]^\xb5)=j\x13z\xd3:M\xe2y\x1a\xe7uj\xed\x92\xf6\x81;\xa5\xb7\x89[\xf6\x81^\xa4\xb0\xc1\xfb\xbdG]#\x0d\xf0\x1a\xf5\xf2\x18\xb5\xed\xe2nO\xd1\x14^\xa21\x1e\"\xc7l\x0d\xf6\x0cy\xbcB]\x1e\xa1no\x90\x83y\xe1^ \xbf\x07\xa8\xe5\xfd\x19\xe5\xf9 \xf2\xfa\xf4\xf1\xf8\x04x{\xacn\x13\xcbg\xad\xcf\xf9\xbd;c=;\x8e\xee\xd5\xfe6\xca\x9b\xd3\xf6\xde\x8c\xf1\xdcX=5\xa3\xbc4m\xaf\xcc\xb4\x1e\x19\xb77\xc6\xe2\x89\x99\xca\x0b3\xa1\x07fj\xefK\xa8\xe7%\xc0\xeb\x12\xecq \xf3\xb6X\x1c\x13\xb6\xaf\x86Z\xcf}\x1e\x96`\xefJ\x90g\xa5\xd1\xf9i=*\xa3\xbc)6\xef\xc9\x94\x9e\x93)\xbd&c\xe6;\xc0[\xe2\xf7\x94T\x12\xde\xad'h\x13\xe8\x80\x94l\x8e$l\x83\x13\xb09R\xaeM\x99n\xcd\x96j\x8d\xf7O\xb36a\x8a5\xc5\xa7\x9a\xcd`Tj\xb5v25K\"\xb5z\x125\xab\xf6\xdb\xb5d\xa6L\x9c6&i\x9aJ~\xd6\xe8[-a\xda\x80di\x83\x13\xa5\xb9\x92\xa4Y\xf9\xebH\x8efs\x8dM\x99\x14\xcd\x97\x10\xad#*\x89\xcf\xbe\x91Z\x9b}#\xb3od\xf6\x8d\xcc\xbe\x91\xd972\xfbFf\xdfH\xe3'\xdf)=\xfbF\xf8\xec\x1b\x99}#\xb3od\xf6\x8d\xc0\xec\x1b\x99}#\xb2\xcd\xbe\x91\xd972\xfbFt\x0b\xb5\x95\xcf\xbe\x91\xd97\xd2$\xd5\xc37b\x8b\x1e\x19\x139b\x89\x15\x990N\xc4b\xdb\x1b\x95\x96*4%\xd5l\xfc\xad\xb7\xd9\xf8;\x1b\x7fg\xe3\xefl\xfc\x9d\x8d\xbf\xb3\xf1w6\xfe6~\xf2\x9d\xd2\xb3\xf1w6\xfe\xce\xc6\xdf\xd9\xf8;\x1b\x7f\xf5o\xb3\xf1w6\xfe\xce\xc6\xdf\xd9\xf8;\x1b\x7fU\x0b5\x06\xce\xc6\xdf\xd9\xf8\xdb$5\x1b\x7f\x9d\xc9\x81&N\x0cd\xcb\xc0rA#\xb6\xa6g\xbb8e\x9f\xe9/{Z\xf0\xe0|,D\xbc\xb4D\xfbE |\xba\xd4>k#+\xe1\xd3\xb6\xee\xe8\x01\xe7\xea\x9fr\xb7j\xf4\xfc5\xcd\xef\xe2\x88\xd6\xc7\xa1\x88}\xfet\xaeN\xc1\xf2\xbat\x1d\xa7\x11=\x85\n\x18\x0e\xbf]|\xf7\xef!\x9c)2\x96\x16\xb4'k\xfeV\xb0\xb4\x831A<\xc0\x0fWLP\xff~d.\xf4]\x1a\xfc\xb0\x14S\xdd\xf2H\xf8\x96E\x8b-\x9aP\xc9\x00r\xdf\x8e\x90\xe8f\xe4\x90u41\xf3z\xae\x1e~\xa8\xf8\x16\x98\xb5\xeb\xe6\xf0\xd4\xc5@=\xf0\xb5\xec\xcc\xba?\xfb\x02\x96\xa0fN\x83\x8d\xa3\x98w\x99\x8e\x94L\x03\xb7_\xfb\xbb\x81K\xc7xq\xa2\xf5S\xebJ\xcfE\xf4\x10\xd2\xd9\xd2\x9fP\xc9\xf4P\xcc\xe9\xbb4\x1efo\xd5\xce`\x06Tv\xad{w\xd5\xba\xdfk\x85M\xcc\xbf\x9e\xeb\xea\xc1D;2\xad&\x9f\xe4\xdbE\x18\x1f\x03\x96\xa3\xe6R\x83\x9f\xc1\\\xe44]\xd3|\x17\xa7|AVQ\xbc\xb8\xbc\xa3i\x8f\x95'\x1e\xe9b\x1a\xe1<\x8fW{\x0bo\xa7u\xe4\x7f\xa3\xc7`\xc7A?7C\x9c\xae\xe9\xc1\xfe\xf4\x8a\xb1\x84\x123/amB%+\xcf4\x030\xbc\xb5\x88\xd3mBEw_\xa0~\x9f\x918?\x01R\x14,\x8a\xa5\x8d[)\xe7@\xc5\xdb]\xcbD\x92G?`\x01\xa4\xf2\x0f\xc2\x9a\xde\xd1D\xb0 \x13,rN\xa2[S\xbd7R*\x02/%\x97Z\\o\xe3T\x1a\x0e\xde\xc8\x10?q\xb7\xd7\xbf\x9c\xdf\xd2\xe8\xdb\xcdA\x9b\x91\xde\x11N\xf3\x93ZFD\xd8\x91\xa3\xb8\xee\xff\xb2\xa7yL\xd7\xb0/d\xceD\xa9F\xc8\xe1\xc8eo]q%\x9b\x82\x97^m\xc6-\xb3\xd7\x98e\xcb\x13\x8d\x99m\xcf\xe9\xf4\xb3\xf9\xff\x02\x00\x00\xff\xffPK\x07\x08\xd9\x92?_%l\x02\x00\x91\x81#\x00PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(\xd4`4t\xc7\x01\x00\x00\xbd\x01\x00\x00\x11\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x00\x00\x00\x00favicon-16x16.pngUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(6B\xc8\xd7\x7f\x04\x00\x00u\x04\x00\x00\x11\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x0f\x02\x00\x00favicon-32x32.pngUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(R\xb2\xb0\x8fo\x02\x00\x00\xb6\x05\x00\x00\n\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\xd6\x06\x00\x00index.htmlUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(\xd9\x92?_%l\x02\x00\x91\x81#\x00\x0c\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x86 \x00\x00swagger.yamlUT\x05\x00\x01\x80Cm8PK\x05\x06\x00\x00\x00\x00\x04\x00\x04\x00\x14\x01\x00\x00\xeeu\x02\x00\x00\x00" + data := "PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00 \x00favicon-16x16.pngUT\x05\x00\x01\x80Cm8\x00\xbd\x01B\xfe\x89PNG\x0d\n\x1a\n\x00\x00\x00\x0dIHDR\x00\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xffa\x00\x00\x01\x84IDATx\x01\x95S\x03Luq\x1c\xfd\x8c\xf1\xc3\xec0\xa7)\xcda\xb6k6\xb2\x9b\xf9\xb2k\xc85/\xdb\x8dqx\xc6\x94m\xcc{\xef\x7fO\xff\xf3l\xdc\xed\xf2\xe0\xfe\xf8\xc9\xffP\x14\x11/\x14[\xa3P\xc4\xa1\xbc?\xf1t>7\x12s\x13\x03\x85\xca7IR a\xb5j\x8f\xa71\xbe]\x88\xf6\xb9L\xf0\x1c\x93\xcf\xda\xe3)\x10\x93f\x8d\xe4\x06\x13\xcf\xde<\x9b\xd14\x95\x8a\x92\x81OA\xcfF\x89\xdd<\x9b M\xe6}L\xe4\x07\x15\xc5\xf5\xe3\xffI\x0c{\xd6\x8d\xffs\x994\xbasfh\xae?\xafk\x1aprw\x10 <\xb9\xdb\xc7\x86\xa6\xd1\x19I\n\xa8\xb1\xd7\x84y3g\x171T$\xb5c\x7fq\xfbbq\xbfk\x8e'\x1dQ\xb0\xc2,\x92\x0bx|;F\xe5\xf0\xef\x00\x83\xf2\xa1\x1fx|?q\xbd\xcb\xc2\x16\x80ZF\xf0\xc4J\xf3\xe3\xe4n1\xcc\x17k`:}\xcby\xe8\x98\xcbB\xc7|6z\x97r\xd14\x9d\x06\xd3\xf9\x8a\xe4\x94\x90\x8b\xb6\xd9\x0cP\xebc@\xd0|\xbe*\xc94\xc8\xa7\x98'\xcdh\x00\xe3\xd92\xa6vK}\x0cB\xa4\xf0+D\n\xc7\x81)\xb0\x10\x9a\xe3\xa9\xd8\x8bx\xe4(\xa2\xbb\x8dl\x0d\x01\xb6\x8a-\xf378\xbe\xdd\xc7\xa6\xb6\xc9\xd9\xc6d\xd8\\m\xf4\x0c\x92 uQ\x0e\xd2\xf5\xb3\xd1\xf1w\xdfQ\x16\xb34a$\xa1\xc4\xc4(V\xbcF\xd9\xdf\xa4\x91\xe9\xb0&,\x12+\xcd\x93\xcf\x1c\x1cb\xdc\xca\x00qt\xeb\xcc-\x14\x89\xfe\xfc\x0fm2j\x88\xec\xccs\x18\x00\x00\x00\x00IEND\xaeB`\x82\x01\x00\x00\xff\xffPK\x07\x08\xd4`4t\xc7\x01\x00\x00\xbd\x01\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00 \x00favicon-32x32.pngUT\x05\x00\x01\x80Cm8\x00u\x04\x8a\xfb\x89PNG\x0d\n\x1a\n\x00\x00\x00\x0dIHDR\x00\x00\x00 \x00\x00\x00 \x08\x06\x00\x00\x00szz\xf4\x00\x00\x04|ID\xc4\xcf\xd0@\x04&%\xad\x1e\x16\x0f\xf7\x8d\x97AR\xfa\xca\xe7l\x87\x05\xf8\xd2\xfb\x0c\x84\x1d\x0dLVY\xdc/ju\x13\x1a\x88\xd2\xa0\xaaa\x82|nzp_\xf4\x03\xc8 \xd4;^\x8a9}\xeeu\x9a\x91 `\x04\x14s\xec\xe1\x0c\xc6]\xa3\x05``\xd1w\x12*~ \x00\xf3\xae\xd3\xa0\x9cb\x82\xa2bx(\xb3n\x1fqx\xd2\xf2\xda4\x1d\x8a}\x1ck\xd4>\x9cI+\xeb\xb3\xf4k\xc8u`L\x93\xf3]4\xb5\xd0\xc3\xe33\xd9\xee\xd7\xf2\xd9\x19\xea\x18\xc9\xc1Y:\x18\xfb(-\xadN\x82\x06e\xd5\x1f0\xa2\x1dV\xf8\xbe0\xc1\x985\x01\xf8\xd2~\\\xa6\xa5\xb5)&\xf6\x98V\x80l\xe4\x03\xf8\x03\x04\x00s\x9a^\xec\x85\x00\xf4+\x0b\x00\xe1:G\xf2p\x96\x0e\xc4,\xe46\x1e5\xbbP\xdd\x15J\x80}\xce\xa4\xe2\xc8{m\xa4\xe2\xc3\xc2\x01\x07\xc0\xdb\xa4\x18-\xa1\x931\xba\x10S\xfa%\xb6P`\x10\x19v\x99#|Gg\x9b \x10W\xf6\x8dI1\xba\x92\xd66\x17E\x12\xfa\xd9\xa8\xf3UTe\n\x1b\x95\x9d\x81f\xe5\x18\xa5umc\x81\x86\xa6\xeb\xec \x804\xcbg\x17\xa19\xfa\xc6\xf7<\xa3\xbd\xf2\x0e\x7f\x02\x80\x97Y\xc7\xac\x184$h\xa3v\xba! \xcc{\xcd\xb4!\xb1\xd8\x92%h\xe3\x93\xdc\xd3_\xda1\xe6\xaei\xcf\x83\xa6p\xbc$\xf0\xb2\xda\x94\xa2q\x14B@\x13\xdb\xff\xf3\xd7\x0d\xfaA\xb9\xc5n{\x8e\xd6Y\x08\x01u\xc1'~\x16\x8e\xe9\x04\xa2\xfbA+\xc74\x0c\x98\xab\xd7:\xfc0\xd1v\xaf$\xa2#\xb7\xf1\x08\xfdm!OXh8\x10j|g\xd1\xe0a\xb2\x99\x04\x9a[y\x9a\xbdk\xf24C$\xa0\x9e#\x9f\xa3\xa8\x001\xc6\x1a\"\xc0\xe4i\xa6\xcc0\xf3\xf7\xb7\xf5XE\xb8\xe0\xa1\xc9\xc2\x0c\x90\x83\x80$\x838\xdf\xd6\xe3\xd4\x82FNG\x0f\x876\x8a\xbf1\xa8d(\xa7@\x8cQX\x90\xdb\x19\x9f\xc5YG\xe9\x9e\x00\xa5y3]\x9aJ\xe1\"\x00\x00\x00\x00IEND\xaeB`\x82\x01\x00\x00\xff\xffPK\x07\x086B\xc8\xd7\x7f\x04\x00\x00u\x04\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\n\x00 \x00index.htmlUT\x05\x00\x01\x80Cm8\xacTmk\xdbH\x10\xfe\xee_1\xd9|Hrd\xa5\xbc\xdc\x85C'\x99#\x97+\x0d\xa44\x90\xf8C)\xa5\xac\xb4#y\xea\xd5\xae\xd8]\xf9%!\xff\xbd\xe8\xcdJ\xeb\xd0\x96P\x0c\xd6\xe8y\xc6\xcf\xcc>;\xe3x\x8fsx{\xff\xee\x06rc\xc1y\xe1)\x03I\xce[JkOFCZk\xa9\x10\xd2\x9a\x94\x04\xce\xa7\x93x\xef\xea\xfd\x7f\xf7\x1fn\xff\x87\xb9/\xd5t\x127\x0fPB\x17 C\xcd\xa6\x13\x80x\x8eB6\x01@\\\xa2\x17\x90\xcd\x85u\xe8\x136\xbb\x7f\xc3\xfff=\xe5\xc9+\x9c\xde\xadDQ\xa0\x85\xd9u\x1cvH\xc7*\xd2\x0b\xb0\xa8\x12\xe6\xfcF\xa1\x9b#z\x06s\x8by\xc2\xe6\xdeW.\n\xc3ZW\x8b\"\xc8L\x19\xbaN\x85\xd7\xc4\x9b\xf6\xff\xfd3\xf8+8y\x86\x06\x99s\x0c\xc2\x1dm\xca\x8cf\xe07\x15&\x8cJQ`X\xe9b(\x93\x8be\xc3\xf3\xf3\xb3\xf5\xf9Y\xd0\x12\x8e\x1e\xd0%\xacE^\xadwz\xb1>\xbd\xf8F\xafEF\xbd\xf6\xc4]\x0c\xad\xcd}\xf8\xd8?\x01R\xb3\xe6\x8e\x1eH\x17\x11\xa4\xc6J\xb4<5\xeb\x7f\xb6\xbcY\xa2\xcd\x95YE\xc0K\xf3\xc0]f\x8dR\xa9\xb0\x8e/\xd1z\xca\x84\xda\xcd\xe5\x9b\x08\xba\xc4\x81{\x9a\xf4\xc1\x1f\xc7C\x10\xa5\x98\x1b\x8b\xe3\xbb\xc8=\xda\x1f\xf6Gz\x8e\x96\xfc\x8ehj\xe4f\xe7\x87\xa5\xb0\x05\xe9\xe8dl/\x15\xd9\xa2\xb0\xa6\xd62\x82\xfd\\4\x9fQ\xaa\xf9\x8e\xc3\xad_q\xd8\x8d^\x136\xf2\xbd\x9f\x92\x96@2a\xe3<\xb0i\x1cJZ\x0e~g\x96*\x0f\xcef\xaf\x99-\xde\xedH\xf0\xc51\xc8\xacq\xceX*HO\xe3\xb0\xd3\xfd=E\x9c\x17Z\ne4\xf2\xca\xa2C\xffk\xf5\xba\x97\x15iiV\x81\xd1\xca\x08 \xe4\xb5\xce\x9a\xf5><\x82\xc7\xe1:\xc2\x10.\xdb-\x17\xe06\xcec\xd9\xe3\x99\xd1\xceCM\x90@\xbf\xab\xb3\xeb\xcb\xf6\xc4\x87\xe3\xb5\xd5VE\xc0\x82\xa1\xe1`#J\xc5\x8e\xb7\xb44\xe5g\x92\x11\x1c\xec\x8f':xF#V7\xa4\x17\xed\xb8x[\xe3Hugu\x11|\xdcB\xf0}\x1fA\x9f\x14\x88\x8a\xdc\xf1Kyw[\xf3n\xdb\xd4m\xce\xa7g\x95T]\x90\xfeY\xa5.)\xb82\xab\xd6\xcb\x99U/i)\xb11\xb5\x8f\x80\x8d\x85oZ\x88\x0d\x93{4\xd8\xde_M\xeboM-\xf8\xd4N\xf2x\x7fq\xd8\xcdr\x1cv\x7f\xb9_\x03\x00\x00\xff\xffPK\x07\x08R\xb2\xb0\x8fo\x02\x00\x00\xb6\x05\x00\x00PK\x03\x04\x14\x00\x08\x00\x08\x00\x00\x00!(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00 \x00swagger.yamlUT\x05\x00\x01\x80Cm8\xec\xbd\xfb\x93\xdc6\xb6\xe7\xf9\xbb\xfe\n\xac#v$\xdf\x91\xaad\xbb\xed\xbe\xa3\xdd\xeeXI\x96\xdd5a[5\x92\xdcw6n\xdcM#Id&\xbb\x98d\x9a\x00\xeb\xd1\xee\xfe\xdf7\xf0\xe0\x9bx\x90\xc9,\x95[\xdf\x13\xe1\xb0*I\x82\xc0!\x08\x82\xe7\xf3\xc5!\xbf\xa1\xdb-+^\x90\xc7_\x9e=\x7f\xfc(\xc96\xf9\x8bG\x84\x88D\xa4\xec\x05\xb9,\xb38!//\xbe\xfb\xdf\xe4\xdd\x9b\xf7\x1f\x08\xcdb\xb2}w\xf9\x9a|O\x05\xbb\xa1w$\xce#\xfe\x88\x90\x98\xf1\xa8H\x0e\"\xc9\xb3\x17\xe4\xa5\xde7\xc9\x04+64bd\x93\x17\x84\x0b*\x18\xf9\xb5dE\xc2\xf8S\x92\xb2-\x8d\xee\x88(h\xc6i$\x8f\x93\xc5\\\xb3\x82\xab\"\x9e\x9f\xfd\xe1\xec\xf9\xa3]\xce\xc5\x0b\xb2\xb9}V0.\xce6e\xa6v\xbc=K\xf2G<\xda\xb1=\xe3\xb2\xaa\xcf\xc8N\x88\x03\x7ft\xa0b\xa7~8gb\xc7\x8a}\x92\x89\xf3\x0dc{Z\\1q~\xfd\xc5\xf9\x9ar\xb6\xda0&\xf7!d\xcb\x84\xfe\x07!\xbc\xdc\xefiq\xf7\x82\xbc\xa2\x9c}\xc7\xeaj\x12\xb1cD\x1eE6\x8c\x91|\xa3\xfe>\xd0\x82e\x82\xac\xd3<\xba\xaa~\x8b\xca\xa2\xf9\xf1\xcc\x94\x9a\x1fXAe\x85/\xe2\xbad\xb3\xa9`\xfc\x90g\\\xd7_\xdb\xe3/\x9f?\x7f\xdc\xfc9p)/\xa3\x88q\xbe)\xd3\xfa\xe8\xb3\xd6\xde\xca\x1f\xb4}\x8f\xcb\x94\x8dNl\xbe\xabv\xd2\x05\x9a]\x1e\xec\x18\xd4vK\xdb:\x95\xd1;\xc9\x1b;\xc9\x98r\x0d\xbb\xde\x1b'\xb4\xbctf\xe9\xac\x96~\xe7\xeeuY\xbe\xb2O\xbeH]\xf6:\xcfSF\xb3\xf1=\xf4x\xf8\xe7g\x96^\xd5:\x85\xeca\x11\xab\xa7V\xcf:s+\"r\xf2\x9c<\xc9\x18\x8b\xf5\xd0g)\xef99\x14I\xc4HD\xd3\x94\x7f>\xb2Su\xb6U\xb4\xa3\xd9\x96\xadb\x96\xe5\xfb$\xa3bl\x80\"\xde1\x87x\x9f\x08\xa4\x7f%\xad\xbepT\x8d\xac\xf32\x8b\xb5o\xe8>/3\xd1y\x0f\xb0\x14\x18\xd1\x8c\xe8\xb2\x1e\xd9N\xc9\xc4\x0d\xab\x1e\xe7#\x9d\x87\x10\x96R.\x92(\x11w\xab}\x99\x8a\xe4\x90&\xec\xa3{j\xb4Rm\x1f\xed\xe9m\xb2/\xf7\xeaa\x99&\xfbD\x10K\xff$\xad\xae\xa6\x1e\xaf{zgs\xd6\x8e^\xb3Q\x17et\x9d\xb2\x95~\x06\xbb\\\xe3\x18_\x17\xf3L\xbb.f\xb4\xe0r\xe2v\xb3K\xa2]g\xda\x16\xd6\x83\xd2\xa8L\xd5\xc0*\xe73\xba\xf4x\xcc !\x03\x85\xa3\xfd\x9d\xd6\xb5G\x84\xde\xf5\x19\xed\xa3\xfb$\x93\xd3\xda\x95\xba\xf5gV\xc07Pu\xceQ;V\xf5\xb5$\xab\xfb\x9a\xde\xaa\x1e\xb5\x8eA*\xca\xf9>\xe7*p\xc1\xc4\xae\x1fp\xe8[u\xe6\xb0\xdbo\x81&Zn\xa9V3\xd5\xfcS\xe4dm\xed7;ZlYl\xbb\x93DN8\xcbb\xf9T\x97\xd7:&y\xd6\xdc\xaa\x83c\xaa\xb8O\xfb h\x1e\x13\x7f\xfdq\xf8\x08\xec\x1c\xef\xbek\xd4\x84E\x97[\xcf\xb6\xdb\xe5W\x0f}\xe5[\xd5\x1b\xe5\xdc\xe4.\xc9\xb6\xe4\xf6\x9c]\xef{\xc5\x8d=\x861\x13\xefm\xc5L\xfc\xe3\xcc\xc4\xd9\xf5^\xce\xc1i\x14\xc9\xe9\xc3\xf9o4\x8e\x0b\xc6\xf9?\xed\xd3\xf1\x97z\xd7z>N3\xf2F\x16\xc7\xca=1\xc5\x8cN\xbf\xdf\x88\x9d9\xd4l}\xb03\xef5Mi6\xf6\xc8p^\x85\xde\xb3J\x15Q\xbd\xedW\x7f\x9a \xac\x1c\xa0\xeai\\\x92g\xfd\xa7\x97\xbc\xb9V;\xcaw\xc7T\xa1.\xa4\xaa\xc4\x8e\xdd>\xd3\x9dD\x8e)r\xb3\xea+\x9cl\x8a|\xaf\xeb\xf5\xf6e\xbf*Y>\xdd\x13UO,\xc7\xa7-\x9dZ\xaa\xf2\xab\x1a\x9a\xee\xf3\x98\x13\xce~-\x99\xdc\x92\x95\xfb5+\xba\xb5\n\x18\xbdMO\xab\x87\xef\xc46r\xcb_\xd5\x11\xe7\xdd\xceY\xd9\xbb\xcb\xd7d\xcf\xc4.\x8f1xc\xf0v\x0c\xbfa\x13qB^\x92\x9f\xdf\xfdp^0\x9e\x97\x85\xec\xdft/\xdf\xdb\xa9 e\x96\xfcZ\xb2\xf4\x8e$1\xcbD\xb2\xa9b\x1d\xaa\xab\xe6\x1bk\x81r\x1f\xce\x8a\x84\xa6\xc9\xdf\xeds+\xe5\x03\x91GyJ\xd6\xe5f\xc3\x8a\xea\xa2\x9d\x91\x0f\xbb\x84\x9b\xb6\x91}\xc9\x05\x89\xf2L\xd0$#t\xcc\x95\xdaRF\xb9\xb0\x9f+\xcf\x18\xf9\xec\xfc35\xe1\xa3\x91`\x85<\x0b#\xf2\xfd\x8cp\xb6\xdd\xb3LTc\xe1\xcf\xef~x\xcc\xc9\x81\x8a\x9d\xb54U\xa9\x82\x1d\n\xc6Y\xe68\xab,nS\xa6\xe9\x1d\xf9\xb5\xa4\xa9\xf4`\xac\xfdkN\xa5<\xf9\x84r\x92d\xf6B~\x91U9\xdf\xe6\xf96eg\xcag\xebrs\xf6m\xa9\x1fd\xbf|\xae[\xa2\x8a\xe5\xbb\xbcLc\xb2f\xb2@[yT\xbeo\xe7Y\x12\xd1T\xddC\xf63?ag\xdb\xb3\xa7\xd2\xb5\xb1\xbc\x14\x9f\x9d}&\x87\xad,\x17r\\d\x07\xc1\xe2\xcf\xcf\x1e\xd9\x0f\xbf\xc8\xc8A:;\x89\xd8S\"\x98\x9c\x14\x97\xbc\xa4\xd2\x1d\x87\x82E\xf9\xfe\x90\xa4\xb2\xa6\"\xd7\x8f\xa4$\xa3\xc5\xf0\x0e\xab\x8c\xa6\xa9\xf2\x17\xd7\x9dS\xec\x98\xf5\x05\x98\x10=\xd6\x91D\xc8)|)\x87\xdbL\xc3\xc6<\x13\xecV]\xea\x97\xd9\xdd\x19\xf9K~\xc3\xaeY\xf1\xd4\xf1\x12Dd\x87\xe0\xe6\xbdT\x16%v\xd60\x85\x19A\x19\xf9e'\xc4\xe1\x97\xa7\xfa\xff\xfc\x97\xa7$/H\x96\x9b\xadOUo\x8chFruwJ\x8f\xd8\x0bd\x82\x94\x07BU\xdb\x1d\xe7e\xc55+\xb4k\xf6\xf4\xc0u\xd7R5\x17yug\xe9w\x86D\xbd\xc0\x11:\xf6\x0e\xa7m\x93\xa7i~\xc3_8\xae\xed\xbf\x91\x8bM\xd3\"\xd9-\x0eE~\x9d\xc4,\xae\x1b-\x7f\xa4\x9c\x97{\xf9\"\xee(\xe8eF\xfe\xf2\xe1\xc3%\xf9\xfe\xcd\x07\xf9~enA}\x8f\xdd%,\x8d \xb5\x1e\xfd\x9f\xfd\xdb\xe2\xc3\xdd\x81\xfd\xd7\x7f\xfe\x97\xf5\x003\xab\x95\xfdA\xf77\xf3\x18QW\xe8P\xe4q\x1919\x81T\x8f\xb0\xb1wxm\xffF^\x1e\x0ei\x12Q\xe3\xcb\x82\xc9\xfe\x99\xdf\xe8\xd7\xcd\x88Frl\xc9\xf3\xab\xf2 \x9f\xb3e*\xcc\x0b\xa4c|R\xfd\xca\xb6YuBU\xc7\x1d\xbdV]p\xdf\xba\x87b}\x13\xd1\xaaI\xf2\xdf\xd7y\x12\x13\x9a\xd9;\x161\x15T\xc3G\xc16y\xc1\x9eV\x05\xc8r\xa9H\xd6I\x9a\x88;\x921\x16s\xfd\x1aM\xd4\x90W\\;Z\xa2\xda\xa2\xa3y\xea u\xcf\x9e\x91'?sVi\x14\xa4\x97d\xf7\x94c\x96\xee\x9f4\xa3[W\xeb\xd7\x05\xa3Wr\x0c2\x05\x9f}n\xefQ?\xe5\x82\xbd B>C*\xd9\x03U\xed0c\x97\x11\x1c\xa4w\x84^\xd3$\xa5\xeb\xd49\\\xca\xfe\x98o6I\x94\xd0\xd4\xf3,[\x97\x1bR0\xf9$bOU\xd4$\x11\xd5Ik\x12V\xdf\x97\xd6\xa2\xd6l\x9bd\x99l\xecM\"v\x8e\x87\xcb\xdd\x81\x9d\xe9\xfeO\x0f ?\x8b\xf2\xbdk4~\xafU\x1f$\x97\xafFr\xa0\xc8\xfa\xa3\x14yb\xa6\x9fl\x7f\x10w\xe6\xd6\x1e\x8bMk\xdb\xab\xe0\xdc\xda1(\xa9F\xcbF\x90d\x7fH\x99|\xc8\xea\x10\x1d?\xb0(\xd9$\x11\xe1lO3\x91D\xa3\xe1\xb2\x93\xbc\x81\xf6-t\x96\xf4\xa3\x1c\x8e\xd6\x8cPY\xa9$nMp\x06\xf3\x18\xf3p\xa7\xeb\xfc\xda\xde\xa7\x8d\x0b\xcc\xad0\xd6\xfc\x90\x9a\xfd\xf22\xbb\xfb\xa5\x9a\x1e\xa97_Z\xac\x13Q\xc8\x9b\xd8^\xc3\xd1\xa2\xaag\x04Ms\xd3\xf5\x08\x1d\xbf\xb4rtV\x0f\x1a]\xc3uwZ\xd8\x9b\xfe\xd5\xb3:K\xd7\xbc\xacn\x9c4Y\xabj\x9b\xe7\x08'\xbc<\x1c\xf2B=\xc1\x0f4\xba:/3\xf9?\xf9\xdc\xd6\xfdb\xfc\x0e2\x0fz\xfb\xc4&\xdf\x90R\xe8\x81\xad\x1a\x1e\xb8\x1cXi\x1c'z\xac [\x96\xb1\x82\nUy\xf9\xa2\xc5M\xb3F\xcb\x93\xf5\xd1\x97p\xfc|on\xa9\xec\xfc\xe4\x8b\x17\xe4R\xd6_\x8e\x0b\xa6)\xb4vz\x92\x91\xd7\xff\xfd\xbf;\x1e\x93\xdf\xe59\xd9\xe49\xf9\x139;;\xfb\xbf\xac\xbb\xc9\xca\xd0\xec\xce\xbe\x03\xcd\xee\xced5\xbe+\xf2\xfd\x93M\x9e\x7fn\xdf\xf5\xec\xcc\xfe\xfcK6\xe4\x89,\xeag\xd5\x90\x0f\xf9\x93\xff&\xcb\xfa\x9c\xfc\xe6\x18\xc3]\xe5\xfd\xd3\xed\xbb/=\xbe\xfb\x9f\xf4\x9a.\xe6<\xf2'57\x94gY\xc0C \x7f\xf2]\x9e\x9fE)\xe5\xdc\xe3 ]Ey\x90nc\xeb@{\x1d\xfei\xddr~.\xbbuX\x1d\xdf\xd3=\x93S\xa7\x97\xba\xb6[&\xbe\xd5!\x85\x8b\x8c\x0b\x9aE\xec\xc9\xe7s*?Z\x8e\xab-\xce^\xf0\x95\xa7\x17\\\xde\x89]\x9e9\xfa\x81\xae\xe3wy\xfe\xe4\xec\xec\xcc\xfe`\xab\xfb\xc0\x13\xe7>\xea>R=dn\x07\x91\x85\\h\x8f\x7f\xfb\xe6\xfd\xebw\x17\x97\x1f\xde\xbe\xfb\xdc\xf6\xbc#\xe6\xb4\xfa\x9es\x9fX\x9f\xda\xe9\xcd?x\xbc\xf9}nw\xa4\xf2\xe4\x8b?\x91\xffvX\x9f}\x97\xe7\xbf\x9d\x9d\x9d\xd9\xfb\xa1\xac\xf4S9\xa1\x96G\xd0\xec\xee\xb0>\xfb\x89\xddx\xea\x9fl\xd4\x11\xff\xc7\x9fH\x96\xa4\xce\x8e\xe7t\xb2\xe3\xf6p\x1f\xd7k\xa0\xa3\x18SS\xdd\xb6\xb3\x9f\xb3=-\xf8\x8e\xa6\x1fr=x,\xd5\x8c\xd1m\x1f\x94\xf2$\xba\xaa\x9fS\xd5K\x18Y\xdf5S\xd2\xea\xc9z\x93\xa4)Y\x8f\xbf\x11\x98\x08\xa2\x9c\xb2\x8d\x9f\xea\xf1\xc8t\xf3|S\xa6\xe9\x99\xda \xa7\xf2\x8f m\xcd\x04\xe4,A\xf6-\xdbsS\xf7\xb9\xf1\x93\xd5\x8f\xdd,\xbd\xab\xde\xb9\x07\x81\x94\xfa\x15\x82\xd0\x8dPS\xda\xf1\x13\xa9\x18\xcf\xe3\xf3\xc7\xe3\xa72\xf3\x85\xaa\xca*\x12@\x98\xb9G>\xdb\xe4\xf9\xd9\x9a\x16\xaa\xb1\xb7\xe7wg\x7f\xffL{Q\xbd\x97\x8e\x96g\x7fMWU\xfdL\x96a\x9b*\xfc\xcf\xf7o\x7f\xb2l\x92WZnn\xa2Nz&\x9d\xcbQ\xc4L\x03\xf5\x9bm\xc9k(\xb8-SZ\x8c\x977,F\x1e\x12\xb3f\xe2\xf6\x94\xb0\xfd\x9a\xc5q3\x85{\xaa_H\xc6\x8a\xa3\x96\xf8UkR\xb5Q\xaf\xf2\xbf\xfc?\xd2A\xbf\x98pJ=qm_\x82\xf1\xdb\xc0\x0c[/\x1c\xaf`4\xba\x92cW\x13\x12\xd8$)\xb3?m\xaa\xb1\xee\x92\x15<\xcf\x9c7\xa7\x89En\x92\x82\x8b\x95\xba\x8e\x7f\"_\xd8K\xae\x0f\x90]\xaf\xda\xff\xcb\xc9\xcf=i\xaeZ}\xa6|\xf9\xd9\x0b\xf2\xd9\xd8\xbd\xd9u\xc3\x99n\xe5gO]\xe5\xa9\xf6\xfdD\xf7\xb2\xcc\xff[7\xe1\xcf\xce\x03d\xfbz\xfbOm\xe4\xc5\xc6\xbcrv\xfb\x9a\xee\x0d '7,M\x9f]e\xf9M\xa6F\x93\x1d\xe5\x84\x92\xa8\xe4\"\xefSmm\xfa\x1e\x1a\xdb\xd2\xed\xf2O\xf5+L\xef>\xd0Cd\xab:\xb2\x03[^/\xa9\xee\xd2\xe3'\xfbE\xdd\x8cU?\xdf\xe5\xa9Q'\xe8\x9a\xeb[9\xc9\xea\xfb\x83\xe8\x18\xe8xQ\xfa\x96\x19?\x8f\xaa\xc2Y\xfdP\x7f\"G\xaf\xca\x85\x83\xe0X\x153\xfe\xaf\xff\xfc\xaf\xcf\x1d7\xd2\x12}\xae{Bw\xb7S\xae\x92E~q\xf6\xe5\x17_\xf2\xcf\x1c]H\xff\xbf\xd1/\xb4Y\xb2\xbc\xcf^\x10\x83\x8b[et\xde\xa3\xcd\xe6\n\xbf\xb1\x8a\x13\xef\xd8m\xbdM\xe4Z>AZ\x04P>\x16\xda\x03S\xa2\xa4\x8e\x9d\xd1\xb0`\xbf\x96I\xc1\xe2\x17D\x14e\xfbR\x8e\x04*\xc29\xb8\x01\xb5<\x04\x84\xff\xa3 \x12\xbc2|\xb7\xbb\x1a\xa7f\xbe\x94\x8cQ_#\xd5\xe6I\xb6M\x9b\x064\x98\xdcF\xd1\xcd\xc9\xccVP\xf4q\x8a\x1e\x00\x89\x8d#\xa7@\xe2\xae\xef+\x03$6\x06H\x0cH\xdc\x18 1 qc\x80\xc4\x02\x90x\xdc\x00\x89+\x03$\x06$\x06$\x0e\x9c%\x01\x12\xd7\x06H\xdc6@b@\xe2\x11\x03$\x06$\xf69\x1f\x90\xd8z\x0c q\xc7\x00\x89\x01\x89\x01\x89\x01\x89;\x16\n\xec\x00\x89\x95\x01\x12\x03\x12O\x87\xc4\x15\x07\xfcx\x90\xd8\x97\x9d\xf1\xcfm4\xbc@\xa2\xc6\xa7M\xcfH\xd4\xf2\xd8d\x9f\xa4\xb4\x90n\xe9\xa7>z\xcc\xcd\xa3\xfa)Y\x97\x82\xd0\x94\xe7$\xda\xb1\xe8\x8a\x934\xcf\xe2\xbc\x89\xaa\xedh\x11o\xf2\xe2J%\xbc,\xb9\x1d7#\x1f$\xf2A\x02\x11\x13 be@\xc4\x02\x88\x18\x88\x18\x88\x18\x88\x18\x88\x18\x88\xb82 \xe2\xda\x80\x88\x81\x88\x81\x88\xc9d\xca D\xdc\xb1i\xce\x03\"\x06\"\x06\"\x06\"\x06\"n\x1b\x101\x101\x101\x10q\xe7\x00 b \xe2\x8f\x80\x88\xc3\x01k\x94\xc7aKp_\xe7\xb1}\xd1m\x9a\x92(\x97\xc3T{\x9d\xad3E\xb5,\xce\xfc\xfe`9\xa7\x8b\xb9y\xf21\x8f\xc6S\x069\xa3\x9b\x9b\xcb\xf4\xfd^\xa2h\x9a5\x88\xde\\\xa1\xee\xd8\xdf)\xf1\x1f\xa3+o\xa5\xa3\xa7,\xbbU\xd7\xf9\xdd\xe5\xeb^YXs\x0b\xa0\xea\x8d&\x86\x04\xe4\x08\x80*\x80\xaauO\x00Ue\x00\xaaC\x03P\x05P\xb5\x19\x80*\x80\xaa2\x00U\x00U\x00U\x00Um\x00\xaas\x98$\x80*\x80jc\x00\xaaC\x03P\x05P\x05P\x05P\x05P\x05P\x05P\xfd\x14\x80\xea}\xae\xb9U\x14\xf0c-\xb8\xd5_F_M\xf8H\xf1kuD\xc0\xa7\x8a\x1fs\xb3/y\xd9e\x99=0\xdc*\xeeQ\xd5\xd4\x07K\x88\xb5\xb7t{&\xb1\xbf\x01\x0en\x97Tu\x96\xea;\xf5\xe6\xd7*\xcc\xd3\xe5\xea\x95U\x1f\xf2\x9dX\x8d)\x9f\x10\xae\xbf\x15<\xed+\xc2\xa4\xdaq\xa5\xb7.[C\xb3\xae\xb8{\x8a^\x0dM\xb5:\xc7\x06\xa4\xad\xeet\xc6 \x8a>V\xcay\xb7O\xf7vAFkc\xa0\xeb\xa0\xeb\x8d\x81\xae\x83\xae7\x06\xba.@\xd7\xc7\x0dt\xbd2\xd0u\xd0u\xd0\xf5\xc0Y\x12\xe8zm\xa0\xebm\x03]\x07]\x1f1\xd0u\xd0u\x9f\xf3A\xd7\xad\xc7\x80\xaew\x0ct\x1dt\x1dt\x1dt\xbdc\xa1\xa4\x13t]\x19\xe8:\xe8\xfat\xba\xfe\xb1?{\xcc\xb8H\xf6T\xb0\xd5\x96r;T\x7fc\xf6\xfa\x9e\xf2&\xd6\xa2\x9b\xf8\x0b\x13\xbb\x15k\xb6\xffB\x8aCD\xe8!1et\x93J7\xfb=\xaaZ\xf5@Yz\xed\x8f\xb69cBa\\xKy'It\xe5\xbaXn\xe9\x1dT01\xb3\x0e\xa3\x11)S\x83\xd1XO\xc1D\x03\x92e\xedXLb*\xa8^\xf9\xcd\xae\xf7u4\x83<\xd1!g\xf9\xf6'\xf7\x18)\x8c\x97\x87C\x9aT\xc1\xb9\x82]\xb3b\x94b\xe5\x87(\x8f\x07!\xc0\xeb\xfdj:\xe1\xad[W\x1d]\xdf\x82\x86F\x9b6\xad\xef\xc8\xf5\x9e\xb0[\x16\x95\xb21\x8fFJhu\xd2\x9a\xb1+\xb2\xc1x\xe7F\xa8:_]\x060yo+0yX\x98\x95\x00\x93\x03\x93[\xf7\x04&W\x06L>4`r`r\x9b\x01\x93\x03\x93+\x03&\x07&\x07&\x07&\xd7\x06L>\x874\x03\x93\x03\x937\x06L>4`r`r`r`r`r`r`\xf2O\x1e\x93\x17[;#/\xb6\xbc\x19\x1f\xb9\xbc/\xff&o}\x1d&\xa8\x9e^\xea'\x83\x92\xfbd\xfcW\x83\xb3+k\xd0\xf8\x86\xa6\xdc\xc3\xc6\x89-\"Q\xd5}K\xf9*\xa2\x07[\xf5\xcd\xe6\x1a \xea\x11[?\xb7\xb7\x94\x13\xb9MG\xe9J\xce\xe2\x93U\xbdG\x99\xab\xca\x1f\x8a\xfc\x90sV\xac\xb0,\xd6\x97\x95\xf0\x1d\xfd\xf2\xebo:5h\x9fX}&\xe0\x8c\xbcg\xa3\xe5\xa8\xc8\xf6\x8b\xf3\xf3m\"v\xe5Z=\xa4D]t\xfb\x9f \xe7%\xe3\xe7\xdf|\xfd\xd5\xff\xb0\xc0\xc0\x82mX\xc1\xb2\xa8\xff\x94N\xf3\xed\x03\x11\x0dX\xd3oh\x0b\x08\x98W)$\xbaC\xb3\x9c\xa6\x174\x12z\xca\xd4DGUg\xb8f\xd98\x95\x17\xf9!\x89<\x95\x19\xf7\x8f6\xab\x97\xb4\x05\xb4\xa6s\xe3\xe9\xea((I\xd2\x84k\xdc\xaf\x7fk\xbf5\xb7\xdb;\xfe&\x12SA\x8fpq\x00\x93p\xdd\x88\xda\x94@J\xcf-\x13\xde\xa8\x9ez\xf5\x7fZ\xf1vk9/_]<3\x83\xf9\xe8>\xea\x01eMV\xa2mB\x9b-\x025m\xfeV\xb7kS\xf5\xcdz\xb2\xa0\xbd\xd1\x1f\x1dn\x1c\x98;\xc9\xa2\xb4\xb4\xb5\\\xdc\xae\xc6\x87P\xb3\xd9\xdfh\xd3\x1eSP59hW\xce2>\xaa\x93'Y\xccn\x8f8\xfb\x14\x97W\xa7\x1b\x1b^M|d8S\xa9L_\x94e|\xe5\xbd\xf6\xed\x87\xc0\xa9\xae\xfc}z\xbe\xe3\xf64\xdf\xfa\xdd]\xb0}~\xcdbw\xfd\xd6y\x9e2jc\xda!`\x914\xa7R=\xb7(\x19I6\x9a\xaa\xcbz\xde(\x19\xe25+\xe4s .\x99\xd2\x1c\xe8)\xaf\xfd\xc5\xb2`y\xb1\xa5Y\xc2\xd5d\xea\x8c\xfc\xbfy\xa9e\x1e\x07zG\xa8\x10,k\xde\x85\x13n\"F\x89]hv\x97\x97\xa4`\x11K\xae\x95\xf3\xb8\xfd\xccbW\xe4\xe5v\xa7\xde\xd9S\xc1\n=E\x9dK]\x7f\xc8\xb7\xed/\x16\xd1\xac\x89\xb5V\xca\x89\x945i\xbf\xe4\xee\xf2\xc99ZV\xf52G\xebQ{\xbc\x15\xd2\xe9\xeaY\xab\xf4\x1a\xdc2RZ5\xb9\x1ek\xb96\x02\x07y\xdd\xad\xd1\x1f\xf5{u\xc6Z3\xc2\xc9.\xbf!\xfb2\xda\xa9\xb8\x8f\x1c\x8be\x0f.\xf7\xf5\x080RJ\xabS\xf6\xb6\xba\x9e\xe0Amr\xf5$\xf3\xa8m=\xb1\xd5\x1d\xb1\xc9\x0b\x15:x&\xdf\xb4\xb5F\xb3SB\xe7\xb6\xfb\x91o\xab\xc1\xf4\xc3\xed@\x19/K\xfe\x91o\xcf\x9b]\xba\x19\xe9\x9a;\x062\xf9\xdeV\xc8\xe4C\x06xm\x90\xc9C&?n\x90\xc9+\x83L~h\x90\xc9C&o3\xc8\xe4!\x93W\x06\x99\xb1\xb5\x15\x9c\xaaz\xfa\xcd\x8e\x19\xaej$\xba\x15\xbe\xe2\xc4\xa1,\x91\xf3\n9\x19\xd6wJ\xc7S\xb6\x81P\xce-\x9f\xdf\xdb\xd5\xed\x9cN\x0e'_|\xfd\xbc\xbf\xba\xf0{\xca\xc9\xa1H\"V\xc1yG\xdc\x98<\x19Y\xb7V)\x83\xcf\xe5pU\xadW\xfb\xe2\xeb\xe7\x9f\x9b\x13:\x8a\xfb\xcbw\x13:\x8ci\x8ckE\xc7\xf2\xaeSg\xab<\xf7\x97\xef\xb4H\xf4I\xc6Xl\x04\x01z\xc6\xafB\x9d\x8e\xd2\xa24\xd1\xaax\x13\x14\xdd\x1a\xa77\x9a\x08\xeb\x90\xa0_G\x96\xec2\x8f;E\xea\xc6}\xfdJ]\x87\xea\x82\xef\xb8\xc0Q\xa0u*\xe8\xef\xd8kV\xa4IvoM\xef\x9c\x8e\xbcR\x7f\x8d\\\xe8?uZ\xe3(\xaf=\x82\xa9\xc2l\xedL\xf3,\xce\xef\xaf\x9d\x9d\xd3\x91\x1f\xd4_\x0b\xb5S\x17mk'-\x8a\xfc\xe6\xde{\xf4\xd8YU\x97\xfe\xc3W\x7f\xf8z\xacK\xbb\xba\x88\xcd=\xe1\x9dz[\xd0\xbb{\xf7\xc1\xc8I\xe5l\xe2\xd9\xd7_|\xf5\xd5\xfc\xbbz\xae\x0b\xf6\xac\xd8\xb2U\xc6\x04?\xa4\x89\xb87'\x8c\x9e\x96\xfc5)D\xa9\x97\x0b\\\x19\xda\xfea\xc7\xc8\x8frg\"rGy%\x97\x0f5BI\xc6\xc4\x8dz\x01\x94\xe5\n\x8b\x06\x91\x10.\xe7\xb2;\x9a\xacD\xb2\xb7*?\x17lou\xbe\xea\x9a\xca\xd3:/\x9c5r\xd1.\xcd:\x07\xa3YTf\xf7\xd56}\xb6eZ\xa6\xcb\xb2\xce\xae\n\xba-\xd9}\xb5K\x9fm\x99v\xe9\xb2\xc6\xdb\x15\x16d~\xbd\xa3I\xf6z$\xeeU\xad\x92n\xef\xe0 o\xc9\xfbE\xbe\xd1\xfd\x1b\x8f\xaf\xf6T\xec\xce.2Q\x89]-\x07$\x99\x8a\x07\x91|C\xfem\x9dl\xe5\x11c\x81g\xb5:aUf\x87\"\x17j\x15\xe0J\xdc:\xe3\x9b\xaehI\x98cFOY\xbb(\xd9\x90\x82\x1dRz\xf7\xac\xdeN\x9e$g\x8cd\xd6\xeb\xa5\xdf3m\x8e\xe0\xc96c\xf1\xe7\xed\xe5\xa0\\-\xb2Y3\xb3\xe4\x95\xc5\xd5\xfa\x12\x1d:\xde\xd3h\x97d\xa3\xdak\xfdR\xae^\xdeWY9\x97R\x04$L\xe8\xb8\xb2w\xd6\x8a'6yAL\xac@\xc5\x10DN\x0e\xac\xe0 \x1f\xb9\xde\xe6.\xbal\x93\x9d&\x1a;@;\x8f\xac5\x1a\\\\\x85\xddt\xb9\xa3\xebU;\x0bTU|C\xc1@\xd9\xa9\x15V\xeb\x157\x86\x97\xb0\x98\xb5\xb7\x15\x8bY}\xbd\xb21,f\xc5b\xd6q\xc3bVeX\xcc:4,f\xc5bV\x9ba1+\x16\xb3*\xc3bV,f\xc5bV,f\xd5\x86\xc5\xacs\xd6\x83b1+\x16\xb36\x86\xc5\xacC\xc3bV,f\xc5bV,f\xc5bV,f\xc5b\xd6Oa1k\xf8\xc26.\xf2\x82n\xd9\xf9of\xe5\xe4?\xcf\x7f\xbbbw\xff\xd4\x07\x8f\xadt{\xaf\x0f\xe8,u[\xd3TN]\xd5X\x9b\xa6$\xca\xe5\x88%\x1dM O\xb2m\xca\x08\x8d\xa2\xbcl(rg\xe5\x9b)\xd1lz\xb0\xeb\xde,\xa1\x16g\x90\xc5\x1f\xa1\xd0\x8f\xa46\xed4W\xc4\xf0d\xbd]\xe7\xc5\xe6<\x8f\x12\xf5\xd6\xad\x82\x0f\xe3\xb7\xc36\xb9f\x19\xb9b\xbd|\xed\x01\x04\xd6\\\x87\x1a\xc1&6\xfa*\x7fUG\x9cw/]e\xef._\xf7\xef\x1d=_\x01\x8f\x05\x8f\x05\x8f5\x06\x1e\x0b\x1e\xdb\x18x\xac\x00\x8f\x1d7\xf0\xd8\xca\xc0c\xc1c\xc1c\x03gI\xe0\xb1\xb5\x81\xc7\xb6\x0d<\x16H\xfc\xda\x03\x05M\"UQ\x94\xde<\xaaU\xad\xaf\xd8\x9d\xad\xc6W\xec\xae\x034\xe5\xdf\xd5[v\xbbn\xcbU+\x1cw\x8b\x82F\x9d\x83\xab\xbe\x93\xdc\xc7\xcf\xad\x08\x8d\xfar\xb5\xe8\xc5S\xcc\xb1\xea\xda7\x1e\x1c,(n]\xd1\xaa\xe8\xba\x18P\xe9\xdeVP\xe9\xb0\xa8&\x01\x95\x06\x95\xb6\xee *\xad\x0cTzh\xa0\xd2\xa0\xd26\x03\x95\x06\x95V\x06*\x0d*\x0d*\x0d*\xad\x0dTz\x0e\xd8\x05\x95\x06\x95n\x0cTzh\xa0\xd2\xa0\xd2\xa0\xd2\xa0\xd2\xa0\xd2\xa0\xd2\xa0\xd2\x9f:\x95\xd6\xa0T\x7f]\xedL\xfd\xd1~\xdd\xed\xbcS\xeb\xad*LY]\x97\xbf\xd1k\xaa\xf70[\xfb\x0c\xfa\xc8\xafy\x8e\xd72\xd9\xb3\xbc\x14\xb6j\xf6^\xfd\xcd\xde\xad\x0f\x90\x8a\xd6\xa7o\xeb\xad\x1b\xf25\xe1,R\xdf\x1e\xeb\x07\xb7\xe5\xeb\xd2{u\x82g**\xa9\xaa#\xab\xd9\xd9+\xa2i\xca\xef\xa3\xfd\x05c\xb7,\nl\xbe\xde\xb9\xc3\xe9\x9b\x94\xd0\x8a\x8f\x9b\xa7I}q\xe5=-\x07c\x91\x93m7;\xff\x9aFW\x0b7\xd0\xfbe\xe0N\xcb\xe3\x84\xabO9rA;\x1fO\xe88\xa0\xb3\x93I\xf4\xae\xbf\xf8\x18]\x91\x88\x1eDY\xb0c[\xd1Op\xee\xa9m\x7f\xf1\xb4\xa5\xbeF3\xd1\xd4X\xffp\xafuf\xebrk\xad\xa9\xdcX\xa5E\xaf\xbeyz(\x92L\x90\xbc\x14\x87R\x90\xb8T\xcfqSc\xc2\xb2\xa3\xbf$\x1dT\xeb4\xd9'\xa1\xe3\x81\xda\xb7s?\xec\xe9m\xb2/\xf7$e\xd9V\xec\xe4}\xa1[\xf3\x94\xacKA\xfe\xce\x8a\x9c\xec\x19\xcd\xba\xf1\xb32S\x05\x1d\xff\xa9\xec!\xae\x1f\x07\xf5\xa3\x0d\xaf\x07\xb5\xb3\xdew\"m\xce\x98\xfa9\xc9\xd6G#\x8fmh\xc8\xd0\xd6\xb4\xa7\xfbi\xc8\xc0k;\xeb{\x92\xddoLu\xcaS\x1f\x04\xfcH\xed6\xe1\xdc\xa9-\x9f\xf4m\xc9\xf6\x17$;\xc5u\xfct\xac\x03\x82n\xe1\xc6\x03\xed\xcfF\x06\xb6~\x81/M\xce\xf9\xb6d\xf7\x0b\x92\x9d\xe2\xaa\xafI\x1e\xeb\xbbi\x9d\xa7\xf5\xd9\xc8i\x9e\x9b\xf2\xa1\xc9\xfe\xe7$;\xe5\x8d}Z\xf2#\xf8\xe0kw\xf7 \xf8\x06\xe5\xd9\xe3\xfb\xaf\xf5\xbf\x87\xd4\xda\xf6\xb1\xca{\xaep\xef\x8b\x94\x81\xddm\xd6w,]\x1f\xe4i\xbe\\y\xbf\xbdl\xec\xcb\x94\x81>\x98\xf7QK\xfb\xb7\xe2\x86_\x05\xbb_W\xf4?U\x19\xe8\x86\x05\xbep\xd9\xfb\xa6\xe5\xfd6\xbb\xfb\xe5\xca\xc0F\xcf\xfa\xdc\xa5\xbd\xf7\xd7\x1f\xb8\xbc\xdf\xa6\x0f?a\x19\xd8\xfcy\xdf\xbet|\xd5v\xfc\xabx\xf7\xeb\x8d\xf6W-\x03\xfd0\xebC\x98\xd6!P\x7f\xfa\xf2~\x1b\xdd\xfe\xc4e`\xa3g}\x15\xd3\xd6h\xf3\x1d\xcc\xfbm\xf4\xc8\x87.\x03\xdb>\xf9\x13\x99}\x8ftJs}\x11\xf2~=2\xfc\xece\xa0C\xe6}/\xf3\xc1\xfbc\xec\x0b\x98\x81\x1e\x99\xf5\xf1\xcc\xfa\x13\x99\x9d\xa2\xfa\x9f\xcb\xbc_\x1ft\xbe\xc2ik\xfc\x8cOg6\x1f\xc8\xbc\xdf\xf6\xb4\xbe\xbbik\xcd\xe4\x8feV\x9f\xc4\xbc\xdf\x96\xb4\xbe\xb4ik\xc9\xe4\xcfcV\x1f\xc1\xbc\x8f\x96\xb0L\x05J\xf7l\x9fw\xca\xee\xb4\xa0\xb3S\x13L5\x7f\xdfg,\xd5\xd4\xa4`\xa2,\xb2UL\x05\xf5\xd4\xb9\xb5gSqE\xc1L<5\xdf\x10\xbd\x8fZ9u/\x8d\xd0\\`\xf57\x9eg\xe6'[#\x86{\x12\xfd\xbf\xb2`\x1d\xc6\xa0?SJ5\xd4\xd3\xd7\xfd\xd8\xa6\x84\xf4\x1e\xb5\x16qU\xdf\x0d\xb6f\xf4\xf1\x11\xdb\x1fr\xad\x0f\xd5\xdf\xfd\xcc\xe3dS\x0b\xd9EN\xbegbG\x92\x8c\xe4E\xcc\n\xf9\x03O\xf6e*w\xed\x07\xd5\xd8f\xc3\"\xa1\xc4\x91L\xecV\x11M\xd3\x85\xdbmQ\xf0\x8e\xbaC=`\xfc\xee\xd0\xcf\xdd\x06\x9e\xe9\xbf\xabu!\n\xa7r\xc2\xb2(W\xf4\x97\x13y\xf9\xef\xb7U\xba!\x1aj9[\xb1j\xc0W\xdd\x1bc\x13<9U\x8d\xc7\xa1\x96\xae\x8e+L\xd7\xecA\x9e\xec\xd8\xed\xe7\xf7P\xe9n\xe5\\\x0f\x89f\x8f{\xa8V\xe3\xcb\x98\n\xf6\xacS\xaf\xaa\xca\x87\"?\xe4\x9c\x15+\xcf\x1a\xeb\xfe~\xd5\xda\xd3\xeaO\xd3\x1aYC\xc6\xc5\xc9\x1b4\xda\x9d\xa3\x1dM\xb2U\x12\xdb\xda\xd0\x8f&\x99\xdd\xebu\xe3*\xb2\xa9\x7f&IL\x0e\xb4PK)\x8a|?\xd6\xb6NY:\xc8{\xb2\xe6\xb6\xef\x85\xa9+\xb9\xe5`i_\xc8\xad\xd6\xfa\xbe\xa6i\xeaZ\xbc-\xb7\xfb\x97c\xcb\xbd\x1eU\x0d\xc5j\xec\xe9\xab\xb1\xa5\x03\xc7\x17c\xb7\xb7\xd4e`)vo+\x96b\xbb\x07\xbc\xb6a)6\x96b\x8f\x1b\x96b+\xc3R\xec\xa1a)6\x96b\xdb\x0cK\xb1\xb1\x14[\x19\x96b\xdb\xfb4\x96bk\xc3Rl,\xc5\xf6.\xc2\xc5Rl\x87\xe7l[\xb0\x14\xbboX\x8a\x8d\xa5\xd8\x8da)v\xcb\xb0\x14\x1bK\xb1\xb1\x14\xdbf&\x16\x89\xa5\xd8\xbd\x03\xb0\x14\x1bK\xb1\x1f\xd8RlZl\xed\xd9\xc1\x8b-o\xc6G%\x86\xff\x9b\xbc\xf5u\x98\xa0zz\xa9\x9f\x0c\xe1<\x19\xc6\x1d\xa5\xd6[\xcaW\x11=\xd8\xaao6w\x96]V\xcf\xed-\xe5Dn\xd3Q\xba\x92\x1f\xbf\xa4\xd2Zu\xcb\x1a\xe3\xd9\xf2\x81q\xbd\x80\xbc;v\xec\xd6\x9c\xf5d\x8d\xf1K|\xb4\xde\xca\xd6\x1a\xa3\xc6\xc2r~U\x9d\x04\xcb\xf9\x17h\xa0\xf7V\xeb\xb4\x1c\xcb\xf9\x8d\x9d\xae\xceX\xce\x8f\xe5\xfcX\xceo\xec#\xac\xc8\xc6r~,\xe7W6\xa7\xf3`9?\x96\xf3+;}\x85\xb1\x9c\x1f\xcb\xf9\xb1\x9c\x1f\xcb\xf9'5\x1f\xcb\xf9\xb5a9?\x96\xf3c9?\x96\xf3\x93\x96a9\xbfo\xe18\x96\xf3\x1f\xd9\x12,\xe7\xbf\xd7X*\x96\xf3\xeb\xffa9\xbf6,\xe77\xb6l\xabtC\xa6-\xe7/j\x00+\n\x9aq\xaa\xa4\xd1'\xab\xf6\x02k\xfa\xef\xa9\xce\xdd\xba\x85/\xe9\xbf\x8f\xba\x85\xac\xeb?r-\xbc\xf8\xd7]\x0f/n=\xab\xe1?\xdc\xba\xd6\xc2\x7fh.\xab\x7fI\xfc\x87\xdbGUK\xb1 ~\xfa\x82\xf8\x0f\xb7\xe3\xcb\xe1?\xdc\xe2\xc3\xe4\xca\xb0\x1a\xde\xd6I\xb5\xb9\x86\xbc\xb6a5\x83@\xcc\xa2\x0e=\xba\xd0wO\x8f4\xcc\xa1\x0b=\x8a\xd0?C\xf7\x04s)BM\x0b\xba\xc5\x0f\xa6$sh\x81\x8d\n\x1cE\x02\x82\xa2\xff\xa1Q\xfe\xd9\x91\xfd\xb9\xd1\xfc\xf1\xa8\xfdB\x91\xfa%\xa3\xf3\x0bE\xe4}Q\xf8y\x91wG\x84}zT\xdd\x19=\x0f\x88\x98\xcf\x8d\x92[\xa2\xe13#\xe0\x0b\xe8\x85\x06\xcfCuw\xb4\x8er=\x0cg\x06\xbb\x9b\xa0\xf6\xd0\xed\xcb\xb6\xce#\x06\x94\x8d\xe6\xc9\xdf\xad\xcd\x95\xdb\xea/\x9f\x18\xd5b\x9dxAnk\xbeOS\xe9\x9d\xc8\x93o\xdf\\\xbe{\xf3\xfa\xe5\x877\xdf\x1e-s\x1e\xc8\x14kM[^\xae\xd3\xf1\xf6\xc4\xf2\xe1\x1dQ\xc1b\xa7Z\xb0\xd2 \xf6\xab\x7f\xca\xe42\x96jn\x8a\xce\x1c}\xe1\x13\xf5Jwug\xa5\xda3\x97[)\xaf\x8c\xf8V-\xeb&<\xd9f\xac\xa8>\xe6c\xe6cU\xaa\x1e\xf3L\xe9\xb2\x86h\xc7\xa2\xab\xfe\xfc\x8en\xe5\x9b\xac\xd0w\x839:fEr\xdd\x96\x0d\xcasQ%\xe2~\xf2\xd7\xa7\xe4\xddS\xf2\xfes#\x84\x1e\xce\x01Xt\xf8\xf2\xebo\xae\xbe ,Me\xc3\"9~^\x7f\x84;\xa9\xa076G\x17\xf4\xa6V\xba\xd1\x9b\xc6\xb9\xea\xc6\xaa\x1c|\x1fbP\xbf\xd2Y\xcb\xcem\x0d1\xa2td5R\xd5I\x90\xd5h\x81\x06\"\xab\x11\xb2\x1a\x1d_kd5BV#\xb5\x0dY\x8d\x90\xd5\x08Y\x8d\x90\xd5\x08Y\x8dN]ad5BV#d5BV\xa3I\xcdGV#m\xc8j\x84\xacF\xc8j\x84\xacF\xa4e\xc8j\xe4\xcb\x9f\x83\xacFG\xb6\x04Y\x8d\xee5\x96\x8a\xacF\xfa\x7f\xc8j\xa4\x0dY\x8d\x8c-\xdb*\xdd\x10d5Z\xa2\xce\xdd\xba\xfd\xfe\xb2\x1a\xcd\xfe\xdc\x90\x01\xf4\xd5\xefd\xfc\xf3C'k\xd1h\xc7>2E\xd3\xef$=S\xab\xd3Q\xceV\x1bf\xedr\xfd\x97h\xb3{\xadZ\xa1\x9c\x11\xf9w[wh\xbf\xf3;e\x9d\xaa\xd7\x86\xe7\x9eR\"2*\xf2bE\xa3(/3q\xfe[\x94g\xbc\xea\xa0\xff\xb4\xe7\xa4j\xb9\xe5\xafU!/u\x19\xaa\xf2 S\x8b\x9e\xdfTR\x13S\xfec\xae\xbb\x82\xd1\xaf\xc9\xa3\xear\xe4\x99Y\xc6\xcb\x16#yi\xa4?\xe6\x87N*\xab\xfei\xcd>\x0f6\xa7\x95\xf1@\xe5\xdbI\x19\x90\xdc}R[\xaf\xfc\xaa\x83F9\xdf\xe7\x8dl\xaaR\x05\x9aK\x95dd\xcd\xa2\xdd M\x13\xa9\xef\x9b\xb3\xde\x16.\xbbr\x16M\xcb\xe0d\x15\\T\xd6}M3\xa7\xa8\x9a\xd0\xf4\x9dz\x8b\xbe\xb5\xfau\xab\\\xa0\xb7.[C\x93\x06\xac{\x8a^\x0d\x87\xf2\xc1^\xcb\xfe\xd1\xbfp\xea\xd6\xec\xf7\xe4:\xbdX?U\x99\xac\xbf\x02cCm\xb3*\xe8|p+\xbe\xbb|m\xd6\xec5\xbeBN\xb2\xdeV\xe4$\x0b\x19_\xb4\xcd]\x8dc-P '\x9911w\xb5O\xdbf\xae\xfc\xb1\x96\x87\x9cd\xc8I\x86\x9cd\xd3W.\xb5m\xee*&\xc7\xf842\x03h\xdbB+\x9d\xda\xb6\xe4\xaa\xa7\xb6-\xb4\x02\xaam\xbe\xd5Pm\x9b\xb72\xca9\x86#'\xd9\x88!'Y\xc02-\xfb\x80\x8d\x9cd\xca\x90\x93\x0c9\xc9\xbc\xd9\xa8\x90\x93\xcc\xe19\xdb\x16\xe4$\xeb\x1br\x92!'Yc\xc8I\xd62\xe4$CN2\xe4$\xb3\x99\x89E\"'Y\xef\x00\xe4$CN\xb2\x07\x96\x93\xac\x0d\xbb[\x05ue\x96\xad}*\"W\xc3k\xb5\xb5\x86\xab\"\xd7\xe0\x9e\xb4\x99\xe0&\x1fH\x1az\xb8\xa0\x81\xfb\xa2(\xe7\xb2\xfd\xcd\xed9+\xa2/\x9f\x9f_\x7fq\xae\x9a\xcc\xed\xf0\xfeRm'\x05\x13E\xc2\xae\xcd\x13@\x1dM\xf6y\\\xa6L;\xadrI\x07\xbb\xbfy\xf7\xfa\xcb\xe7\x97\xed\xcd\x0f\x96\xb8\xb7\xdd\xd06'ms\xb36\xa3\x99T\xbe\xb2\xb3\xb8\xa1\xca\xb1\xde\xaa)\xb2\xb9\x00\xed\xf5\xe0v\xf7k\x0b\xe0\xc8\xba\xd4 zlx\xb1\xa9\xc7\xbb\xcb\xd7\xbd\xf2\xc0\x8c\xc1\x8c=\x01\xd3\x13\x84[\x83\x067\x91_\xb1lu\xa0I\xe1\x18\xe1\x1e\x7f[g;zA>\xc8#.\xe5\x01\xe4]=\xe4\x15l\x9bp\xc1\n\x05a\xaeXFT\x89\xd5r\xd6\xeeG\xf3\xea\xe3\xcd\xd6\x07;\xe2)'\xadT{\x1eH7\xd35\xb2j\x9e\xb4\x05\xf4\x96J~\xd3\xc8\x98\xd4\x83H\xbd\x14\x144\x12\xfa\"\x8e\x1e\x1c\xb3,\xdf\x1f\x7fj#\xa4R\x82?Ud\x92\xd1j6\xb6fdO\x0f\x07\xd5\x97\xc6\xdd\xa0\x9e\x1b\xb1\xbb\x16\xb6\x87\x86\xd9GW\x83\xef\xf2\x1bn\xba\xac<\xa7|s\xd0\xa5+\xadx9\x1e\xe8\xae\xdc\xb4\xcao\xb21e\x946s\n\x07\xd8\xd0NW\x85\xd4\xd7\xe2\xcdO?\xffH\x9e<'I\xa6\xa6EO\xc9\x17\xd5c\xccL\x81\x9e\x921y\x996v+X!\xdf\xf8Li\xb6(O\xc0ubYi\xbd\xccr4y\xfb\x1f?\xbdy\xb7\xfa\xf9\xa7\xf7\x97o^_|w\xf1\xe6[\xef\xbe?\xbe\xfd\xf6\xe7\x1f\xdexw{\xf3\xbf?\xbcy\xf7\xd3\xcb\x1f,;V\xcf\xce\xe0\n\xb8\x1f\xf5\x8d\xa9\x8b\xf1V]\x0b\xd9vE!\xf43_] \xbeK\x0e\xea\x95\xbfw\xab8b\x9ec^\x1a\xa9w=q\xa1Yu\xd5\xcf\xcbL\xff\x18\xeb\x93;\xc2S]\xef\xbe\xe8\xfce\xa6A W\xa5\xa8\xc8\xd4`rdzU\xc0\x19\xaa\x0b\xf3\x82T\xff\x1a)\x9ff\x83N8\x17\xb0)?\xab\xa7E\xd7C:\x9a]\xbdCFy\x11s\xf5\xb8\xb1\xf5e\xf9R\x91p!omy\xfd\xc6\xaf\xd7k=\x1e\xc9A\xe8\x9a\x91\xd7y\xa2\xdfyif.\xb7\x1e\",-:\xd0\xad\x19\xbe\x86wLW\xb3^\xef\xd8\x99\xad\xb6~61\xb1\xb1\xa7\x9a\xb6#\xa6\xdb\x19\xbb\x15\xab+v\xe7\x9aj;\xc6\x04/\xd1\x0d\xbb\xd3\xaaZT3j\xf9O#p\xa0\xdc$\xa4\xba\xa4[\xf6N\xab\xbc\xcf\xf4vKa\xcd\x0b\xa2,V:\x92\x91}\xce\x05aJ6\xa0\xb4\x06g\xe4B\xb4\xa2\x0b\x07qG\x12\x9b\x82N \xac\x95\xa6$\xcb\xc9>/X\xa5!\x19\xeb\xc4\"\x17\xd42\xe3\x0bv\xa6E\x1fK\x02\x9e\x1f\xea\xf4\xca\x8b\xea\x1fm}\xbc\x96\xbd\xb44\x16\xb6\xf6\xb6\x1d\xad\xa5\xb8\xaa0\xdb\x98vC9\xe1L<%\x89hrF\x92\xd6`%\xfdw\x93\xf0n\xffp\xdf\xec\xfaS\xc0\xf5\xa40\xe8\x85k\xac\x88\xf3\xf6\xc4\xf4\xf2u\xbf x\x07\xc3;\xd8\xfd\xbf\x83\xb9\xc2e\xcd\xa8/\xc78[?\xec\x8d\xa3f\xe0\xa4\xe6\xee\xd3KI\xf5\xc7\xb6\xf5\xbdlzh=\xca\xaa\xa1u\xdb\x13Y\xa9a\xd3\xa4cu\x8e\x9co\xb3\xf4NI&\xf3\x0d\xc97\x1b\xce\x04\xc9\x0b\xd2\xad.ii_9[:\xe9\xaeg\x81U\xcb\x89\xba~6?\xf6\xc6\x1d\xd3\x18\xe5J5\xdbK\xa2\xea75\xb1hgH\xbc\xd9\xb1\xacr|\x99\xd5\xa3jo\xe6w\xa1JK\xe5\x1c\xbev\xa1\xd6z\xe9\xc5\xb2Wl\xa2?\xbb\xc5\x9f\xd8\xb9\x96\xd4\x9d-\xf7NO\xd0hFp\xdb\xe3I?\xf4\xdb=\xd8\x8c\xf7e\xda\x1b5\xb5\x86\xa9\xfd\xd3\xc5\x86\xa4l#\xaa\xc7\xb9y\xbe\xd7\x19a\xf3\xfa\x06\xd1'\x91~^\xdf\x11F\xa3\x1d\xa1\x87\xc3G\xf4b\xfb!\xdb\x1c\xef\\\x13\xd8\x1c!=\xaazh\xaeb\xdbr\n@\x92,N\"\xbdTYK\xb3\x8d\x07\xd5\x8e\xa6#\xb5\x8bK\xb2(-\xe3\x1e'\xa5\xfa,\xb56\xbew\xc5\xd4\x88\xdd\x9aN\xc8\xa7pg\xce\xda)\xec\xe7\x0b\xde\xbbZ\xbd&(\xb4,\x9f\xa5\xfa\xd9\xaan\xaf\xe6~\x94\xb7\xdc\x99\xb9\x9b\x92m\x96\x17=\xc1ku7vO\xa1=s\xec\x85\xb5-\xa7o]\xc0\x82]\xb3\x82\x87.p4{\xf7/\\\xd2\x9a\xa4\x15l\xfcN\xe8\x94#\xcf\xc12\xb5\x14@-R\x1f\xe4\xf3O\xb2\xa8\x8e\xaa<\xe3\xf1\x15y~\xf6\x87\xaf\x16\xf5\xc6\xd4p\xe2\xf9o\xea\x0f\xc7\xaa\xc7\xf1\xb0b+\xaaH\xc7\xe3\x8a\xee\xb0\xe2\xa3\xaaq\x0f?\xaah\x9b7\xcdz\xbb\x0b\x88\x0dz\xe70\xb3\xe3\x82\x8e\xa8`\xe8I\x8f\x88\x08:\xe3\x81\xfeh\xe0\x11\xb1\xc0\x90H\xa0\xef=n\xe1(`X\x0c\xd0{U\\\xf1\xbf\xf0\xe8_P\xec/(\xf271\xee\x17\x16\x8bX<\xe6w\xfa\x88\xdf\xa9\xe3}\xcbG\xfb\xfc\xb1\xbe\x19\x91\xbeVTo\xa4@[\x9c\xef\x88(\xdf\x94 \xc6\x021\x0c\x840\x10\xc2\x18\xdf\xfe\x90B\x18\xfd\xe9\x80\xeb&\xd1\xf7V\xbd\x9e\xb9\xa8^\xb1YR'7\xdf\xb1\xdbf\xaa\xd1\xcb\xb1\xa0n\xd0N\x81\xe66\xea\xfc\xf6\xda2\x89h\xedtB\xc9\xd0>\xd9\xca'\x88\x9c\x08\xabo\xe7\x9c\x9b\xc1v0\x05\xee\xcc\\\x7f\xd4G\xbd\x96G<\x98\xec\x1b\x18[z[1\xb6\xdc\xf3\xd8\xe2\xfa\xf0\x95\xb9\xd1L\xf6\x9b\xe1\xe3z\xce\xdbn\xaf\xee\xcd\x10\xe7\xab\x84\xc8OR\x85\xc0\x81F\xcf\x8b\xce\x7f\xf3'\x19\xfaV\x8e\x87\x1f\n\x1a\xb1&\xa7P\xefMKmL2}\xa5Z\x89\x94\xc6\xc6\xabw\xea\xc4\x8f\xaa\x96}\xb4\x91\x8a8\xfb\xfe&/\xb3\x91\x17C\xf7Ka\xa7\xa6;\xca\x9bK]\x94\xec\xd9\x9f\xab?\xe3\xa7\xfa:>\xfb\xb3Zg\\\xfd\xda\x9f\x01\x9b\xdfW\xfaJ\x0d\xeb2\xd6\xa9\xb4s;\x90X\xfeW\xd5C\x17\xb5(\x1c\x96\xb7\x92}\xe0p\xdc\xda\"\x9fu\xd8\x8e%\xdb\x9d\x98u\xa8- \x19\x9eY\xfd\x9e\x87g\xd6\xfd>\xb3\x86\xe2\xf7\x13\xce6\xa3\"\xe7\\\xa5\x06\x94\xcf\x815\x15\xd1\xee\\%\x06-\xf6\x83\x87@g\x00\x7f%w}\xad\xf7|T\xd5\xe9\x81\x8e\xdf\x9d\x06\xb5\xed\x88\xa1.\xcbG3\xae\x91\x90.\xe1\xd5m\xe8\x08x\xf5\x163\xeb,\xeb\"\x89\xb7Mb\xcbYeTa\x99\xa3\n\xa9?\xe39\xebh\x9d\xccR\xdd\x18\xe1\x87c\x0c\xefm\xc5\x18\xee\x8b\xbd5\x86tjH\xa76nH\xa7\xa6\x0c\xe9\xd4\x86\x86tjH\xa7f3\xa4SC:5eH\xa7\x86tjH\xa7\x86tj\xda\x90NmNF2\xa4SC:\xb5\xc6\x90NmhH\xa7\x86tjH\xa7\x86tjH\xa7\x86tjH\xa7\xf6\xc9\xa7S\xab\xf9Y\xab\x98\xa3eE=\xf1fM*Os\x8e\x1e\xca<\xcdI\x14\xcf]\xb6h\x0b\xe8\x9d\x89\xe3y8\x8f\x7f\xf0I\x91\xbaMj\x9b\xf8\x08p\xd1\x81\xf2'\x85\xd5\\i\x18\x02\x80~\xc0\xb9\x82\xa0~@9a`?\xa0 \x0f\xdc\x0f(\xc1\x07\xf8\x81\xf8\x1b\x03\xe2\x07\xe2o\x0c\x88\x1f\x88\xbf1 ~\x01\xc4?n@\xfc\x95\x01\xf1\x03\xf1\x03\xf1\x07\xce\x92\x80\xf8k\x03\xe2o\x1b\x10?\x10\xff\x88\x01\xf1\x03\xf1\xfb\x9c\x0f\xc4o=\x06\x88\xbfc@\xfc@\xfc@\xfc@\xfc\x1d\x0b\xc5\xad@\xfc\xca\x80\xf8\x81\xf8[\xbfM\xc4\xd7\xf7\x89\xf8\x1f.}\x977\xbc\x9b\xbc\xff@\xb9\xb8\xd4yU\x15\x847\xa9\xf0_\xdd\xbd\x8c\xe3\x07\x9fHT5\xd2\x06\x00g-\x8cW%\xaeN\xba<^\x9fB${\x96\x97\xf3V\xc7\x07\x9cD\x144\xe3TGK\\\xe7\x18\xa7\xa4\xc4EJ\x89\xcf\xc3\xda|\xc4TZb\xfd\x80\x11 \xf1\x826\xaf/\xb4q\x96\xc5\xf6/\x15\x91\xd0\xf3\xc5\x8c\x0b\x9f\xf0\x80\x84\x16fI\x81\xdb\xda\xc1\xefg\x12\xe8k\xd2\xca\xd5\xea\xde+\xb0\xf2\xd2\xe8\xbeI\xeef\xb7\xc0\xe2B\x02\xa8\x95\xb5\xf2ej\xec\xddN\xab'\x1f\xaa4#o\xd4\xa7L\xca\xfdH\xe2\xbc\xbe\xa9\x0ba\x7f\x9f\xdb0kT\x9b\xe0*\xd9\xed>\xaf\x92/\xc70!oK\xb1\xcd\x93l\xfbA\x8e\x8d\x1bV|\xb8m\xa6\x93&\xddj\x9c\\'qIS5Z\xf4\xf3\xafum[\xd0\xebD(x\xf7\xe6\xc3_Fv\x0bQMy|\xbeN\xf3\xe8j\xd6\x91\x01\xc3\xe2\x86\xa9\x84\\,\xb9\x9e\xf3\xa8s\xb9\xbbv\xf4\xad\x9aRt\xbc\xac\x1f\x7f\xea\x05\xb6\xf5\x88\"j\x7f\x9b\xc3-\xae\x86\x8a\xaa\xb7\x15*\xaa\xf0\xe1 **\xa8\xa8\xc6\x0d**ePQ\x0d\x0d**\xa8\xa8l\x06\x15\x15TT\xca\xa0\xa2\x82\x8a\n**\xa8\xa8\xb4AE5G\x88\x04\x15\x15TT\x8dAE54\xa8\xa8\xa0\xa2\x82\x8a\n**\xa8\xa8\xa0\xa2\x82\x8a\n*\xaa\xd3\xaa\xa8N\x98\xc4d\xaa\xa4)7pq%n\xf5a6eS\x8fB>\xaa\xea\x06-Se\xdeX\x92\x97!C\xcbT\x1b\xb4L\xd025\x16\x12\xc6\xac\xec>U2\xd02\xb5\xed\xa1^%h\x99\xba\xe6\x1d\x16\xa1e2\xb6\xd0d\x04Z&\xefH\xe8\x1b\x01\x05\xb4L\xd02i\x83\x96I\x19\xb4L\xd02\x0d\x0cZ&h\x99\xfa\x06-\xd3\xa8A\xcb4j\xa1\xb3$h\x99j\x83\x96\xa9m\xd02A\xcb4b\xd02A\xcb\xe4s>\xb4L\xd6c\xa0e\xea\x18\xb4L\xd02A\xcb\x04-S\xc7Bu%\xd02)\x83\x96 Z\xa6\xd6o\x93dF\xc8\x085\x90O\x99\xe3\x02\xf5S\xec\xc1\x7f\x97i\xad\xab\xf90\xf0\x9fW|5)\xfc\xe5\xd0\x03\x05H\xb0\x96:\x95_\x88\xe5\xf6\xb56\xa7\x18\xcb\xebwm>\xefksK\xb2\x82\xbc\xa2-\xc07\xda\xfc\xc2\xac\xe0\xb3\x86\x8a\xb3\x82\x0b\xf4\n\xb4\x02}O\x82\xfdO&\x08\x80\x82\x9bA\x82E@\x13\x8a\x0c\x89\xd46\xb6\xb0\x14\xc8+\xd9\xf2\x8a\xb6p\xe5\x1e\xe8\x95\xf3\x0b\xb9\x96\x96r\x05\x88\xb9\xc2\xe4\\\x01\xd7\xc0!\xe9\n8:hX\xf5\n\xbb\xbc'r_\x82\xb9\xf2\xae\xf1\xca\x16\xf9\x1e\x02\xaf\x96A\xe0\x05\x81Wc\x10xA\xe0\xd5\x18\x04^\x02\x02\xafq\x83\xc0\xab2\x08\xbc \xf0\x82\xc0+p\x96\x04\x81Wm\x10x\xb5\x0d\x02/\x08\xbcF\x0c\x02/\x08\xbc|\xce\x87\xc0\xcbz\x0c\x04^\x1d\x83\xc0\x0b\x02/\x08\xbc \xf0\xeaX\xa8\xd8\x06\x02/e\x10xA\xe0\xd5\xfam\x92Bj\x82\x10J%\xb3ZE4MW\xeb\xbb\xb6F\xc7&\x85z\xa5\x8exM\xd3\xf4\xd5\xddO-i\xd7\xc3\x95B5M\xb4\xc1\xb2Y)\xa5\\\xfa\x16O\xb0\xa7`\x9b2\xb3\x08r<\x87*\\\xed\xa0p\x1f;\xf5\x93\x0f\xa4\x13\x7f\x13\xb5\xf9\xd5\x11\x01\xc5\x84\x04\xa5\xc8\xb2Z\x08\xab\nB\xe4\xb3.xL\x05\x9du\xe0\x9e\xed\xe7\x9d\xf1\xa4Y\xd2N\x9c\x1fM\xc90V;\x96lw';\xc7\x96\xf2U\x9a\xec\x93\x93\x9d\x80]\xb3L\x9c\"Y\x1d\x84\x17\xbd\xad\x10^\x84\x8f\x91\x10^@x1n\x10^(\x83\xf0bh\x10^@xa3\x08/ \xbcP\x06\xe1\x05\x84\x17\x10^@x\xa1\x0d\xc2\x8b9\xda\x05\x08/ \xbch\x0c\xc2\x8b\xa1Ax\x01\xe1\x05\x84\x17\x10^@x\x01\xe1\x05\x84\x17\x10^\x9cBx\xf1\xc0\xb3\xdet\xc5\x1em\x01C\x88\xda\xe3\xbd\xda\xffQU\xf7\x87/\xf7x \x8c\xce\x9d\x08\xc5\x1b\x9er\x89E\x02\x0ew F\xfc\x92\x91\xfbLQ\x13\"\x1d h\xb06\xbf|$\xb0\xa8\x90\xf0\x9a\xb6\x05E$\xced\x1a6!I@\x83\xecb\x92\x80\x83\xed\x82\x92\x80\x83\xef!\xfb\xd3\xbd\xe4}\xf2\x0bL\x96:\x93Gf\xb2\xd4i\xbcb\x93cN\x04\xc1Io+\x04'\xe1#*\x04'\x10\x9c\x8c\x1b\x04'\xca 8\x19\x1a\x04'\x10\x9c\xd8\x0c\x82\x13\x08N\x94Ap\x02\xc1 \x04'\x10\x9ch\x83\xe0d\x8ef\x03\x82\x13\x08N\x1a\x83\xe0dh\x10\x9c@p\x02\xc1 \x04'\x10\x9c@p\x02\xc1 \x04'\xa7\x15\x9ch\x95A\xf5\x95\x94%\xcf1O`\x12\xe5\xd9&)\xf6\x93\xb3\x8a\xbc\xd6\xc7\xfdN\x92\x8b\x98V>\x108\xd7\xf4\xb1\xd9\xb1)} \x0b\xdf\xd7v\xbc\xe5\xb0[\xc1\x8a\x8c\xa6G\x17t\"2\xdd6\x9el3*\xcab\xceiX\x96\x97\xdb\xdd\xea\x90\xdf\x8cI|\xf4\x81\xeb\x00\xdf\x1d\x18X\xc0iN\xfa\xdd\x01m\x07\xbaM2\xf5,\xb1\x0d\xc8\xb3\x94G\x19\xbb\x15\xab+v\xac&\xc6\x1a\xe4\xef\xdc\xf9\xff\xb0\xdd\xf9U-\xe4\xa4S\xce\xd4\xe4?\x0d\xf3\xa2\x9ck\xb0wI\xb7\xec\x1d\xfb\xb5d\\\x9c\xe9\xed\x96\xc2\xd4\x8c@\x15#\x8b\x95\x8ecd\x9fsA\x98\"I\n?\x9d\x91\x0b\xd1\x9ap\x1e\xc4\x1dIl\xa2\n5\xda(\xcc\x98\xe5d\x9f\x17\xac\xc2\x8ac#\x8b\xc8\x05\xb5\x08G\x82\x9d\xe9\xbc=E\xca\x1cC\xa8:\xbd\xf2\xa2\xfaGV\xee\xd7\x1a\x8aT$\xb4\x85\xddl\xedm;:\x92\x0f\x80\x95*\xcc6g\xbd\xa1\x9cp&\x9e\x92D\xf0\n\xf0rRf\x8aw\xb3X3\xaf\x9b\x84\x0f\xfb\x87\xff\xa9\xa0\xab\xa2\xa79\xbaU\x9d\x17\x84$#\xdbw\x97\xaf\xeb\x99P5\xfb\xe6\xe4F^\xb3\xb1\xcb3\xae\x1f\x88\xf2B\x97\xa1\xb4\x16\x85n|=\x97\x97\xef=\n\xa7\xb5=3\xea\x8e\xea\x88\xf7\xf9\xbe\xa9\xb73\xf2T\xb0\x03S\xb4\xe3\x15-\xea\x8b\xe4y\xc1\xed\xbaE\xf5o\xdb+n\x13;\x83L\xad\xb7\x152\xb5\x90;P\x1bdj\x90\xa9\x8d\x1bdj\xca S\x1b\x1adj\x90\xa9\xd9\x0c25\xc8\xd4\x94A\xa6\x06\x99\x1adj\x90\xa9i\x83Lm\x8e\xd2\x0b25\xc8\xd4\x1a\x83Lmh\x90\xa9A\xa6\x06\x99\x1adj\x90\xa9A\xa6\x06\x99\x1adj\xa7\x95\xa95\xa8\xfe\xec\x8a\xb5\xcbs\xc1pC\xbf\xa9\x19\xa2\x0b&\xca\"\xd3\x8c\xb3\x8d\xfb\xcejT\xae\x82m\xdb^TJ\xb5@\x0e+>\xfc\xfdV>6\xf3L\xbd\x8d\xe7\x9b\x0dgB\xbe t\xabKZ\xb0\x803q\xb6\xac\xb7,\xa1\x97\x11'\xea\xfa\xd9\xfc\xd8\x0b{\x98\xc6(Wf\xe5\x9e\x15IT\xfd\xa6\xee\xe6\x88f\xb2=:\xee\xb4cY\xe5\xf82\xabC}\xbdY\xf1\x85*-e\x9c7.\xd4\xc1\xb1\x92KW_\xb1\x89\xfe\xec\x16\x7fb\xe7\xf6\xc4\x04#\xeeU\xfa\x98@\xef\xaa}+\x95\x86Mc\xa0\xc3\xc0\xed\x1e\xac\xe7\x1ark\xa7\xb4\x83\x0e\xfa\xb4\x7f\xba\xd8\x90\x94mD\xa5\xc90\"\x8dj\xea\xa9\"\xd8\xfa\x06\xd1'\x91~^\xdf\x11F\xa3\x1d\xa1\x87\xc3G\xf4b[)\xd1\x1c\xef\xf2e\xeb\x08\xe9Q\xd5Cs\"\x8a\x92\x11\xf9\x8f$\x8b\x93\x88\nV\xb3,\xe3A\xb5\xa3\xe9H\xed\xe2\x92,J\xcb\xb87\xb1\xa4\xfa,5L\xec]1\x85\xa6[1n\xf9hh\xda\xd4\x0fy\xff|\xc1{W\xab\xd7\x045\x17/\x187\"\x02u{5\xf7\xa3\xbc\xe5\xce\xcc\xdd\x94l\xb3\xbc\xe8\x11\x82\xean\xec\x9eB{\xe6\xd8\x0b\xdb\xffj\xcd\xc8\x05,\xd85+:\x87\xba.\x9e\xd9\xbb\x7f\xe1\x92\x96\xd2\xa6`\xe3wB\xa7\x1cy\x0e\xa6e'y\x11\xb3\xa2?\xef\x7f\x9fd\x91|d\xe5|\x9f\xf3g<\xbe\"\xcf\xcf\xfe\xf0\xd5\xa2\xde\x98\xa7u^\xad\xefV\x1b\xc6V\x05\x8bXr]Is\x03\xb4\xcf\xaf\xee\xbec\xec\x9d9\xeaQUa\x08\xa1\x8d\xf9T\x1f\x10B\xfb<\xa4\x0dB\xe8\x96A\x08\xdd\xb5 \xa5%\x84\xd0=\x0b8\x0d\x84\xd0\x10B\x9b\x9d!\x84\x86\x10\x1aBhc\x10B\x9fpJ, \x84\x86\x10Z\x1b\x84\xd0\xca \x84\x86\x10z`\x10BC\x08\xdd7\x08\xa1G\x0dB\xe8Q\x0b\x9d%A\x08]\x1b\x84\xd0m\x83\x10\x1aB\xe8\x11\x83\x10\x1aBh\x9f\xf3!\x84\xb6\x1e\x03!t\xc7 \x84\x86\x10\x1aBh\x08\xa1;\x16*J\x85\x10Z\x19\x84\xd0\x10B\xb7~\xf3 \xca,B\xe8\xb6>\xec4g\x80\xd4:\xc4[\x90Zk;\xb1s\xfd\"aH\xad\x97\xf0\"\xa4\xd6\x90Z\x7f*Rk\xf5\x84N\x13n\xf4*\x1e}\xb5\xdc\xfb\x87\x84W\xb7\xfe\x83\x95U7\x13\x8fe%$\xbdA\x05R\x9f\xdeVH}\xc2P\x11\x81\xd4\x07R\x1f\xeb\x9e\x90\xfa(\x83\xd4gh\x90\xfa@\xeac3H} \xf5Q\x06\xa9\x0f\xa4>\x90\xfa@\xea\xa3\x0dR\x9f9j\x19H} \xf5i\x0cR\x9f\xa1A\xea\x03\xa9\x0f\xa4>\x90\xfa@\xea\x03\xa9\x0f\xa4>\x9f\x82\xd4g:]\xcc\x93l\xb5\xbe[\xc5,\xcb\xf7A\x801O\xb2Ww\xdf\xca\xdd\xcdN\x0f\x171\xe6\xc9\xb2 BZN\xea\x9b'\xe4\xe2\xca\x1e\xe4<\xd4\x1f\xea\x90\x17D\x87\xaf\x99\x1c\x00T\x9e\x1f\x13\xa4\xd0\x15\xae\xf4\x05r\x90\xa0\x99\xa9\xca\xf8\x83\xf6\xa7\xb7\x1f\xde\xbcPOT\xbd\x97y4%*~r\x91 s\xd3\xd61\xab\xf6\x9d;R\x9c\x9e\xac\x8c\x9d\x88'\xdb\x8c\x8a\xb2`\xbc\xc6\xe7rb\xb6\xcd\xb7\xb9\xbaE\x9a\xde\x00\x80\xdb\xdb\n\x80\x1brWh\x03\xc0\x05\xc0\x1d7\x00\\e\x00\xb8C\x03\xc0\x05\xc0\xb5\x19\x00.\x00\xae2\x00\\\x00\\\x00\\\x00\\m\x00\xb8s\x18(\x00.\x00nc\x00\xb8C\x03\xc0\x05\xc0\x05\xc0\x05\xc0\x05\xc0\x05\xc0\x05\xc0\xfd\x14\x00\xee\xc7\xcc\xd5\x10\xb7\xa0\xee\"EO\xa6\xd1\xedo\xcb\xb81\xb4\xfa,J\xf5\x9a\xfc` \xf4H\xb3\xda&>\x06}\x93u\x99\x1dwr\x10p\xcb\xd1\xe0\xb7\xbd\xad\xe0\xb7a\xf1?\x02~\x0b~k\xdd\x13\xfcV\x19\xf8\xed\xd0\xc0o\xc1om\x06~\x0b~\xab\x0c\xfc\x16\xfc\x16\xfc\x16\xfcV\x1b\xf8\xed\x1c\x04\n~\x0b~\xdb\x18\xf8\xed\xd0\xc0o\xc1o\xc1o\xc1o\xc1o\xc1o\xc1o\xc1oO\xc1o\xc3!k\xc0\x1a_\x85U?\xe4\xbf\x8b\xe5\xbd\x16\x169\x1a{\x01\x85\xecm\x05\x85\x0c\x8bb\x11PHPH\xeb\x9e\xa0\x90\xca@!\x87\x06\n \ni3PHPHe\xa0\x90\xa0\x90\xa0\x90\xa0\x90\xda@!\xe7\x80\x10<\xc7Y\x16\xb3\x11\xc4\xa9\xcd\x1b\x99*\xd8\xa6\xcc\xe2\xd9\x87\xdb\x16\xdc\x9a\xad\x0e\x7fh\xb3zE\x9b\xc77\xda|\x1e\xd2&\x1f\xf0\x05\x8d,\xa9\xa1+\xf36X\x9b+\xcbteAE\x85D\xd6\xb4\xbdy\xf7\xfa\xcb\xe7J5`hh\xc3B\x0b5S\xa4\x19y#v\xac`\xe5^\xef\xec(L]\xb6\xf1\xd9\x8d\xc8gw\x86\x98\n:\xfb\xe0=\xdb\xcf?s\x96g\xd1\x12\xd1\xd9\xde\xf7\xd0\xdb&\x92=\xcbK\xeb5_\xe6$\xeb4\x8f\xaeV;\x96lw'>\xd3\x96\xf2\x95\xfa\xea\xfdiO\xc3\xaeY&V'\xba<\xd0\x9a\xf4\xb6Bk\x12>\xa2Bk\x02\xad\xc9\xb8Ak\xa2\x0cZ\x93\xa1Ak\x02\xad\x89\xcd\xa05\x81\xd6D\x19\xb4&\xd0\x9a@k\x02\xad\x896hM\xe6\xc85\xa05\x81\xd6\xa41hM\x86\x06\xad \xb4&\xd0\x9a@k\x02\xad \xb4&\xd0\x9a@krZ\xad\x89\xd6=\x14J\xdc\xc18_\xf2$\xe1\xaa\x93|\xad\x83p\xe7CL\xea\x92\x9a\xbc5\x87\xbd\x92G\xfdE\x1d\xf4\xa8\xaa\xe7\x03\x95\x99\xb0[\xc1\x8a\x8c\xa6+7\x10v\xc6\x82\x9ctv\xf9r\x01c{[\x01c\xc3\x82y\x040\x160\xd6\xba'`\xac2\xc0\xd8\xa1\x01\xc6\x02\xc6\xda\x0c0\x160V\x19`,`,`,`\xac6\xc0\xd89<\x130\x160\xb61\xc0\xd8\xa1\x01\xc6\x02\xc6\x02\xc6\x02\xc6\x02\xc6\x02\xc6\x02\xc6\x02\xc6\x9e\x02\xc6N\xe0\xa4\x05\x8dRv\xae\xd6^Nd\xa5o\xe41-P\xfa;Y\x95\x0f\x9a \x9a \x9a \x9a \x9a \x9a \x9a \x9a \x9a \x9a\xd9\x18hfm\xa0\x99\xa0\x99\xa0\x99d2\x90\x03\xcd\xec\xd84\xe7\x81f\x82f\x82f\x82f\x82f\xb6\x0d4\x134\x134\x134\xb3s\x00h&h\xe6'A3\x1f\xda\xd2\xd2\x162m\xa7\xab\xf5\xb2\xd2\x9f\xe4\xbe\xbf\x0fJ\xea\xcc\xc5\xeb\x8c\xfd\x00\x926\x06H\nH\xda\x18 ) ic\x80\xa4\x02\x90t\xdc\x00I+\x03$\x05$\x05$\x0d\x9c%\x01\x92\xd6\x06H\xda6@R@\xd2\x11\x03$\x05$\xf59\x1f\x90\xd4z\x0c i\xc7\x00I\x01I\x01I\x01I;\x16\n\xac\x00I\x95\x01\x92\x02\x92\xb6~\x9b\xc4/\x1f$$\x0d\xfb\xc6\xf3\xf7L\xbcU\xbb\xff>\xd8\xa8n\x9a\x0d\xc2Yx\x9a\x9b\xa6\x19o\x99+f\xe7m\x8e`R\xef\xaa\xcf*\xa3N%|L!1K\xd9\x96\n\xb6r}\xf8\xd8S\x06\x17\xb4\x10\xceo\xdbzCk-\xf6j\xfdJ\xafHU\x19\xb4\x10\xe6\n\x90];\xe5s\xdb\xf2,M2K\xa0O\xd7e\x9d\xe7)\xa3cQ\xda\xda#*.G\xc5\x18y&\xfe6\xf1\x94\xf2\xddJ${\x17\x91\x9d\xe1\x13\xa0\xf9\xdeV\xa0\xf9\xb0\xd0.\x01\x9a\x07\x9a\xb7\xee 4\xaf\x0ch~h@\xf3@\xf36\x03\x9a\x07\x9aW\x064\x0f4\x0f4\x0f4\xaf\x0dh~\x0e\xdd\x06\x9a\x07\x9ao\x0ch~h@\xf3@\xf3@\xf3@\xf3@\xf3@\xf3@\xf3@\xf3\xa7E\xf3]\xce\xbb\xe49\xe6\x90\xf962\x0e&\xf4\xaf\xf4A\x00\xf5s\xf98@}\xd7\x00\xea\x87\x06P_\x1b@=@}c\x00\xf5\x00\xf5\x8d\x01\xd4\x0b\x80\xfaq\x03\xa8\xaf\x0c\xa0\x1e\xa0\x1e\xa0>p\x96\x04P_\x1b@}\xdb\x00\xea\x01\xeaG\x0c\xa0\x1e\xa0\xde\xe7|\x80z\xeb1\x00\xf5\x1d\x03\xa8\x07\xa8\x07\xa8\x07\xa8\xefX(4\x05\xa8W\x06P\x0fP\xdf\xfam\x12D\x7f\xb0k\xe8;\xbc7\x18\xd5\xbf1G\x81\xd5\xcfE\xe4`\xf5]\x03\xab\x1f\x1aX}m`\xf5`\xf5\x8d\x81\xd5\x83\xd57\x06V/\xc0\xea\xc7\x0d\xac\xbe2\xb0z\xb0z\xb0\xfa\xc0Y\x12X}m`\xf5m\x03\xab\x07\xab\x1f1\xb0z\xb0z\x9f\xf3\xc1\xea\xad\xc7\x80\xd5w\x0c\xac\x1e\xac\x1e\xac\x1e\xac\xbec\xa1\xdc\x14\xac^\x19X=X}\xeb\xb7I\x18\xbd)\xbf\x0fX\x97<\xcbdX\xcf\x998\x8f\xf2l\x93\x14{7\xa7\xd7\x90\xfe=\x13\xaf\xf5\xde\x8f\xaa\xda=P@\xdfiT\xdb\xace\x11/T\xb3|_\x9c\x84\x84\x92,\xdf\x19o\xec\xc1\xb0{\x9el3*\xcab^K\x9b\xbbg\xc2\xe1\xa0\xcf\xbd\xad\xa0\xcfa\xd1K\x02\xfa\x0c\xfal\xdd\x13\xf4Y\x19\xe8\xf3\xd0@\x9fA\x9fm\x06\xfa\x0c\xfa\xac\x0c\xf4\x19\xf4\x19\xf4\x19\xf4Y\x1b\xe8\xf3\x1c\x80\x0b\xfa\x0c\xfa\xdc\x18\xe8\xf3\xd0@\x9fA\x9fA\x9fA\x9fA\x9fA\x9fA\x9fA\x9fOK\x9fO\xb8R\xbc9\x89\x02\xa5\xcb\x16m!\xa8\xc7\x00o>\x8dx\xf3Ww?\xb5\xda\xf5\xd0\xc9\xf7\x03\x01\x81\x0ef>)\x04f\xe5\xe6\x81\xe4<\xe0da\xf4<\xa0 \x0fA\x0f(\xc1G\xd1\xc1\xd1\x1b\x03G\x07Go\x0c\x1c\x1d\x1c\xbd1pt\x01\x8e>n\xe0\xe8\x95\x81\xa3\x83\xa3\x83\xa3\x07\xce\x92\xc0\xd1k\x03Go\x1b8:8\xfa\x88\x81\xa3\x83\xa3\xfb\x9c\x0f\x8en=\x06\x1c\xbdc\xe0\xe8\xe0\xe8\xe0\xe8\xe0\xe8\x1d\x0be\x9a\xe0\xe8\xca\xc0\xd1\xc1\xd1[\xbfM\xe4\xd0\xbf\x17\xc4\xad\x83[n\xc2\xfdZ\xefT\x83\xeeGU\xb5\x1f(\xd9n\xdag\x83s\x0foY\xf7^\x0e!\x85s%\xf68Q$.\xaaH|-\xd6\xe6\xa3\x8bj\x9f\xfc\x86Yr\x91k\xf3\xfa@\x9b\xd7\x13\xdaB!; ;\xb3\xc9\xdf\xee\x08\xd8\xbdR\xea\x80\xbfVY\xd7\x9b\x91\x9eW1<\xf9\xf3c^\xd7\xccZ\x92\xa9\xb1\x89\xe8r\xed\xb9\x91\xbd\x17IYoq\xa3\xab\xbd\xf5},\x9f\x97\xeaajZD^\xcb\x11\xc2x\x82\xfcX\xa6\x82'[\xf2\x9e\x89\xa7\x84\xd1hl&\xb7-\xe8u\"\xee\x1a\xff\x8c=%h\xcas\xb2\xa7I\x13t\xacOx\xc5\x14}\xe0\xc96\xab\x1eC\\>i\x19g\x84\x16c\xcf7\x15#\x169\x89vl\xfcm\xa0\x16U\xc8\xd7\x81\xe6Lk\x16Q\xf9fP\x05\x1c\x93m\x96l\x92\x88f\x82l)'\x9c^'\xd9\xb6 \x11B!\xd1\xdb\n\x85DX\x84\x9d@!\x01\x85\x84uO($\x94A!14($\xa0\x90\xb0\x19\x14\x12PH(\x83B\x02\n ($\xa0\x90\xd0\x06\x85\xc4\x1c\x91\x01\x14\x12PH4\x06\x85\xc4\xd0\xa0\x90\x80B\x02\n ($\xa0\x90\x80B\x02\n ($N\xa1\x90\x98\xa5V\x90w\x87[\xaa\xf0\x03\xe5\xe2\x92e\xb2\x8b\xd5\x98\xf3\x1d\xfb\xb5d\\\xbc\xba\xfb\xfd|0^\xb6\xf6\x81p\xb3{X\x98\xef\xd4>\xf8\xd5\x0f\x1e\xfd\x83\xd7\x03\xda|~0{\xf9T\x10A>\xd1\x16\xe0\x19mS\xb4\x10\x81\xe7\xf7\xeb!\x96TD\x84k\"\xdc\xaa\x88\xa0\xc6y\xdd\xean\xfb\x82\xea\x88@}\xc4\xc2\n\x89\x00\x8d\xc4L\x95\xc4xIPN@9\xe1\xbb'C\"\xef\x04\xca ('\xac{B9\xa1\x0c\xca\x89\xa1A9\x01\xe5\x84\xcd\xa0\x9c\x80rB\x19\x94\x13PN@9\x01\xe5\x846('\xe6\x88\x0f\xa0\x9c\x80r\xa21('\x86\x06\xe5\x04\x94\x13PN@9\x01\xe5\x04\x94\x13PN@9q\n\xe5\xc4\xbd|\xa3a\x96<\xa3\xd0B\x0b\xb7B\xa3/\xcbxT\xd5\xee\xc1\x0b2l4\x0e\xc9$:\xe6\xc3\x89$DF\xe1\xf5\x816\xaf'\xb4M\x11P\x04\x9c\xd9/\x9eXN:\x11*\x9c@2\x89\x19R \xafPb\x96L\x02\x92\x08\x02I\x84w\x10 \xa9\x13H\" \x89\xb0\xee I\x842H\"\x86\x06I\x04$\x116\x83$\x02\x92\x08e\x90D@\x12\x01I\x04$\x11\xda \x89\x98\xa3*\x80$\x02\x92\x88\xc6 \x89\x18\x1a$\x11\x90D@\x12\x01I\x04$\x11\x90D@\x12\x01I\xc4i%\x11\x0f\xfcs\x1bF!\xc1\xdd\x12\x89\x1f(\x17}\x99D\xf5:\xfd;\xd0I<\x10F\x87\xc4\x15\x9d\xbd|\x8a\x8b \x9fh\x0b\xf0\x8c\xb6)\xba\x8b\xc0\xf3\xfb\xb5\x17K\xaa/\xc2\xf5\x17H\\q\xb4\x1a#@\x8f1S\x911^\x12T\x1aPi\xf8\xee\xc9\x90(?\x81J\x03*\x0d\xeb\x9ePi(\x83JchPi@\xa5a3\xa84\xa0\xd2P\x06\x95\x06T\x1aPi@\xa5\xa1\x0d*\x8d9B\x07\xa84\xa0\xd2h\x0c*\x8d\xa1A\xa5\x01\x95\x06T\x1aPi@\xa5\x01\x95\x06T\x1aPi\x9cB\xa51U11TI\xf0r\xbf\xa7\xc5\xdd\x0bR\xb3]\xae\xaa\x940\xaeB\xdb\xfa\xb8*\x80+\xa2\x9d\xea.\xdb\xe4\x9ae\x84\x0b*\xca:D2\x92\x92\xe2w\xa2\xb0x l\xcd\xc8=<`\xdf\x1b^\xea\xa50\x99]N\xa8\xd2\xc0[P\xccR\xb6\xa5\x82\xad\xe8>/\xb3\xf98\x9f\x0bZ\x88\xd5b\x9a\x00\x97\xd2\xc2\xc8\x02\xd4\x19\xab[@\x9fx\xfc\xcaei\x92y\x02\x82\xeb\x1funUs\x0b\xb5\x82}i\xaa\xc6\x08=\x8a\xc4\xd5\x0e\xcd\xdd\x0bU@o+T\x01aQe\x02U\x00T\x01\xd6=\xa1\nP\x06U\xc0\xd0\xa0\n\x80*\xc0fP\x05@\x15\xa0\x0c\xaa\x00\xa8\x02\xa0\n\x80*@\x1bT\x01s\xc0:T\x01P\x054\x06U\xc0\xd0\xa0\n\x80*\x00\xaa\x00\xa8\x02\xa0\n\x80*\x00\xaa\x00\xa8\x02>\xae*@\xd5\xcd!\n\xf8\x96\x1d\xd2\xfcn\xaf\xd6yW\xaa\x80\xb8\xf9\xcd\xec\xde!\xff\xaf\xeb\x13\\\xaa\xc2\x1fU\x0dx\xa0\x12\x80\xb6\x0b\xda\xe6Dbn fVz\xaf\x92\xd8\x8e\xcb\x1c\xb1 z\xcd\n\xbae\xabu\x9aGW\n\xe5\xce*&`\xf5{\x8d\xf8\xd7TD\x9a\x1a\xe7\xe5\x89\xbex\xd0\xb4\xab9\xeb\xc9\x1b\xc8\x93m\xc6\xe2\xd5M\x92\xc5\xf9\xcd\xc9N\xa2\x90\xfbF\xc1\xa3<;\xf2,\x96\xe0_\x93\ndU\x1eb*\xd8JeMX\xe9\x08\xf3\xea\xc0\x8a\x88\xd9\xa4\x15\xc7\x9e;YG+Q\xd0\x8coXQ\xf5\x11\xa7\x0c#\xf8\x84V\x97Zu9\xc4C\xb8\x89/\x03\x88\xb7nF\xfa\xf1\xf8[\xf9\xac\x8d\xa8\x90c\xae\x9e\xb2\xab\xeeJ\xbe\xfe\xe3\x17_=\x7f\xfe\xfc\xf1\xc8\xc1\xb5\x8cC\xec\n\xc6\xe5c\xd4\xd5\x00G\x0e\x12\x1fo\x97\xa7\xca\xf2\xbd\xfd\xdd\xdb\xdbJB\xdcb\x9c\x80\"B\"\xbe\x84\xbc\xce\x93L\x93<&\xe7B\"\xbfb\x99\x89\xd7\xeaF$\x99\x9e\xcc\xc8\xf9\x12\xcdL\xb5\xech\xe0\xa7\xb7\x1f\xde\xbcP/\x18zO3SOT8\xf9\"\x13f\x0eS\x87\xf0\xb9\x83T\x99\xe9\x8d~\x7f\xb3\x9d\xb0\x95\x1d\xa3z\x08\xcb\xf7\xd5m\xbe\xcd\xd5\xcca<\x18n:\xc2\xbeLE\xa2^\x04\xc6\x8a\xf6\xba\xd8'U\xd2R\xafUD\xd3\xf4\xd4\x83w\xfbT{z\xbb\xdaR\xbeJ\x93}r\xb2\x13\xb2\x8c\xae\xd5\x88\x97\xc5+\x917\x0f\x8d\x03\xcb\xe4$\xd7uZ\x97\xd4j\xec\xf6\x8e\xf3\x8az\x8d\xdd\xd5\xa6\"m\x07\xdcs\x1d\xfcw\xda\xc5Fg\xd11\xc4\x91\xac\x99\xb8a,kr\xcd((\xf0Z\xb3\xc4&\xab\x0d\xcd\xc6\xc2\x02)\x15\x8c\xd7\xb27\xceF%#&\xed\x96\xbc\xf1\xfeL\xbex\xfe\x7f\x0ev1\x8d\x0c{p\xd5GC\x1b\xd6\xdb\nmXH\xff\xd7\x06m\x18\xb4a\xe3\x06m\x982h\xc3\x86\x06m\x18\xb4a6\x836\x0c\xda0e\xd0\x86A\x1b\x06m\x18\xb4a\xda\xa0\x0d\x9b#\xaf\x826\x0c\xda\xb0\xc6\xa0\x0d\x1b\x1a\xb4a\xd0\x86A\x1b\x06m\x18\xb4a\xd0\x86A\x1b\x06m\xd8G\xd6\x86i\xc8\xb9b\xb7,*\x05[E)M\x8c\xe4\xc0\xf6\x95\x9dK}\xc8\x1b}\xc4ky\xc0\xa3\xaa\x8e\x0fT\xfe\xa5Z\x05T\x06T\x06T\xa6\x0d\xa8L\x19P\xd9\xd0\x80\xca\x80\xcal\x06T\x06T\xa6\x0c\xa8\x0c\xa8\x0c\xa8\x0c\xa8L\x1bP\xd9\x1c\xda\x04T\x06T\xd6\x18P\xd9\xd0\x80\xca\x80\xca\x80\xca\x80\xca\x80\xca\x80\xca\x80\xca>\x05TV\xd9\x81n\xcd\x92Q\x1b\xb4\x99\xb5f?c\xb7bu\xc5\xee\x8e\\\xceh\x0d:t^\xec\xffa\x0b9T\xb5\xa8\xbe7o\xbe\xf8\xbe\x96O|n\xbe\xe4~I\xb7\xec\x9d^}w\xa6\xb7[\nS\x9cP\x15#\x8b\x95\x8ecd\x9fsA\x98\x8al\xa9p\xd8\x19\xb9\x10\xad\x1b\xe0 \xeeHb\x83\xc9\"\xf9\xc8\xca\xf9>\xe7\xcfx|E\x9e\x9f\xfd\xe1\xabE\xbd1!5B\x91\xffM]\xda\xb1\x0f\xa7X\x93#T\x07\xbd\x92\xc7|\xd0\x87\xfcE}F\xe3QU\xdd\x07\x9a$\xc1\xf7\xd1\x0f'^\xb0\x0c\x1d\xd0\xe1\xf4\xb6B\x87\x13\xc6q\x08t8\xd0\xe1X\xf7\x84\x0eG\x19t8C\x83\x0e\x07:\x1c\x9bA\x87\x03\x1d\x8e2\xe8p\xa0\xc3\x81\x0e\x07:\x1cm\xd0\xe1\xcc\x91\xb2@\x87\x03\x1dNc\xd0\xe1\x0c\x0d:\x1c\xe8p\xa0\xc3\x81\x0e\x07:\x1c\xe8p\xa0\xc3\x81\x0e\xe7\x14:\x9cp\x9c\xa9>\xca\xee\x86\x97\xdf\xb2,\xdf\x7f\xc8?\xc8=\x1fU\x95y\xa8\xb4\xb2iN\xe7\xe7\xb1\xd8\x0b(do+(dX\x14\x8b\x80B\x82BZ\xf7\x04\x85T\x06\n94PHPH\x9b\x81B\x82B*\x03\x85\x04\x85\x04\x85\x04\x85\xd4\x06\n9\x07\xe4\x81B\x82B6\x06\n94PHPHPHPHPHPHPHP\xc8SP\xc8\xa6\xfc\x98e\x9d\x9ewt\xd1.\xc0IK\xb1;\xbf\xfe\xe2|\xcd\xa2\xddW_\x9e\xffF\xe3\xb8`\x9c\xff\xd3M9_\xe7\xd95+\xc4K\xbd\xf3\xa3\xaaN\x0f\x94s\x9a6\x05\xa2:\x90\xce\xdeV\x90\xce\x13\x04 ]\x03\x0c\xed\xdcV\xc4\x0c\x01=\\\xd8\x8c\x00\xa2(\x83\xc7\x96C\xc16\xc9m\xaf\xe4\x93\x0d.\xdb\xfcZ\x8e-\xfa\x89\xb4RM\xe6\xe7\xbf\xed\xf9V^\x0d\xdf\x10\xa3\x0e\xbaT\xc7<\xaa\xea\xf5@\x07\x18\xdd2[g\x9f\xf5\x99\x95\x98\x1dr\x9e\x88\x95r\x88\xbd[;;\x9e\xef\xdb\x1f\xdf\xe5\x05y\xf3\xfdw\xad\xbe\xf8\x94\xdc\xc8)\xcb\x81\x15\x91\x9c\xb0lU\xb4\xd5TEN\x95\xaa\x9ea\xbb\x15r\xc22\xfb\x8b\xd2u.\x92l\xbb:\xb0\"\xc9\xe3\x99m\xea\\\xdf\xea\xe1_\xbd\\\xe8\x13\x10}\x82\xb1I\xfe\xafe^\x94\xfb%Nmu\xea\x8fI\x96\xec\xcb}\xcf\x87:\xe3\x05\x17\xf4\x8a)\xd8\xa5)\xdeu.t\n\x0d\x1b~4 <\x14\x18\xb3\xcd\xa6\xa2<\xe3I\xcc\n\x16kn\xd0m\xb7\xbb\xd2\xeafm\xdfi\x9do\xa7\xe8\x0c\"\xfao5Y\xde\xe4c\x97V\x15r\xde.\x85\xbc\xbb|\xdd\xaf\xae~\xe1n*\x87\xc7\xec\xc0Ax\xcc\xde\xebc\xd6<\x87Z\x85\x1d\xf9\x98\x0dx\x14\xf2\x9bDD\xbbU\xfb\x81a{\x00\xbeW\xbb~\xba\x0f\xc0\x84\xd3u\xcaV\x8d\x06\xc1\xd1\xedl]\x9d\xb8\xba;\xf1\xf7\xaa\xaa\x12\xb2\xab\xc8]\xef\xb5\n\x01C\xf7\x9b\xef\xbf;v\xdc\xae\x8b\xc0\xa0\x8dA{|\xfb}\x0f\xda\xd6qT'\xb5\xaab\x16k&\xe8\x17\xe74\xd29\xc5\x92l\x93;\xc2\x17\xbc\xdc\xefiq\xf7\x82\xbc\xd4\xfb_d\x9b\\\xbd\xf8$\x8c\x13S\x06\x91e\x98xZ\xc2I\x94\xef\xf7:nF\xd3\xb4\xdeG\x0d\x03U_\xeet\xfe\xc7\xa3\xa9\xb7\xfe\xf8\xd8\xec\xdb\x19\xdc[\xb50\x9b\x1f\xec\xd8.\x9d2\xbc\xbe\x9d\xaa(\xbf\x99\x91g\xdc\x97u\x10T\x83\xa3W\x943\xe3\x82\xe14\xfd\x88\x87\x865\xd2C\xfc\x9d\xf1P\xae}\xdf\xb5\xb4\xdee\xbez\x91\x80;\xcd[Amao!d\xae\xea\xdaQ\xde@x\xe3\xa0\xb7\xcb*\xaf\xbd\xda\xeb\xa5\xd5\xd7\xe1\xfa\xeb\x85\x14\xd8\xf34\xd8\x8e\xe2\xa4C\x83U\xd8G\xeb\xb0\x97VbO\xd4b/\xac\xc6\x9e\xa6\xc7\x9e\xa8\xc8v\xf5\xe1Z\xab\x1d\xaa\xc9^X\x95\x1d\xa4\xcb^P\x99}\xac6{\x96:{!}\xf6\x1c\x85\xb6\xa30\xa5\xdd\xf6k\xb4O\xa2\xd2>\x9dN\xfb$J\xediZ\xed\xc5\xd5\xda\xa1z\xedE\x15\xdb\xe1\x9am=\x8d\x98\xa0\xda\x9e\xae\xdb\xf6\x0e\x85\x9f\x07(\xb7\x17\xd0n{^>\x02'T\x01\n\xee)\xb3\xae\xc9*n\xd7Cp\x9d_\xb3\x00\x1dwh\xfd\x16\xd4rOQs/\xac\xe7\x9e\xa7\xe8v\xf5 \xee\xd7t\xcfVu[J\x93g\xf3\xe9\xba\x97Rv\x07\xcb\x93\x03\xd4\xdd\x93\xf4\xdd\x1e\xc9\xe1,\x8d\xb7\xafL\xab\xd2i!\xa5\xf7tg\x86\xab\xbd}m\x9b\xa1\xf8\x9e\xa9\xf9v\xcaZ\x03t\xdf\xcb*\xbf\x97\xd1~\x07\xf4\x8d\xa3\xf5\xdf\xc1\n\xf00\x0dx\xa8\n<\xa0\xe3LW\x82O\xd1\x82;\xd4\xe0\x0b\xe9\xc1'*\xc2\xe7i\xc2'\xa9\xc2}Nw\xdeB\xbec\xc3\xd5\xe1\xcb\xe9\xc3\xbd\x95\xb2\xde?\xcb\xa9\xc4\x03t\xe2\xf3\x95\xe2\x96\xe2\xe4n.\xad\xf8\xc2jq\x9f^|\xa6b\xdcR\x96~\x87v\x85\x11\xfc\xaaq\xa7n|y\xe5\xf8\xe2\xdaq\xbbz|I\xfdx\x88\x82|\xba\x86|\x92\x8a|\x86\x8e|\xaa\x92\xdc\xa9%w+{\xc3\xb5\xbd\xa1z\xf2\x19\x8a\xf2\x89\x9arGs\xe7\xe8\xca-E\xb54\xdba\xb7D\x98\xb6\xdc\xd1\xe5\xb3\xad[]\xbe\xa8\xbe\xdc\xa30?\x8d\xc6|\xa9\xbe8Ag>Ei>>=\xa8h\xa6\xfe\xe2\xd2,\x8ee\xfd\x90Lc\x9c\xfdZ\xb2,\xb2DN\x8e)\xbf\x13\x87\xf8\xc7\xa8f\xa1\x85>\xfb\xaa\x05\xadHh\x13\xda\x8e\x8ea0\xc1\x1c\x07\xae\x8f\x9a\xca@\xad\xd01\xa8\x15B#e3\xe9)rV\x850\xd3E\x88\xe9\x1c^\x8a\x9cU\x0bR\xd2)\x8ct\x12!E\xce\xaac\xb9\xe8\x0c*\xba\x08\x13\x9dND\x91\xb3\xea\x18\x12:\x85\x83.LA\xc3\x18\xe8\x82\x044\x94\x7f\x8eL\xe6\x91\xb3\xaak\x01\xc43t\x964\x99v\"gU\x10\xe3\x9cC8\x91\xb3\xca\xb6\x9b\x97jN`\x9a!\xd9\x8e\xa6\xf0L\xe4\xac\x9a\x93\xf6\xc9\xc7/\x91\xb3*\x9cY\x06\x12\xcb\x10^\x19F+\x91\xb3\x8a\xcc\xe4\x93\x13\xe8$rV-@#\xbd,r.\x89\xb4>7\x91\xb3j`\xc8Y\x85\x9cU=[\"\x7fP(c\x9cL\x18'\xf1E\xe4\xac\x9a\xc9\x14\x91\xb3\xaa\xb2\x90\x9cU\xc3\x942\x9d\xf7h\xb3\xb9\xbf\x86\xaf\xfaYw\xe2\xf6\x08t\xaa\x95\xf2\x8e\x15\x9e\xc3\xe5\xf2\xfd5\x9d\x9c\x14L\x94\x85|\xe3OS}\xff\xdc&\\\xa5\x04\xa9\xca\x18]\xb8\xd9\x8a\"\xfc\xc7\x8ee$\xa2i\xcab\xb2)\xf2=\xa1\x99\x8e\x0c\xed\xf3\xb8L\xd9S\x1d@S sL\xa4'\xca3^\xca\xa7-\xd9%\xdb\x1d\xa1{y\x9e\xba\xbc|\xd3t\xa8-\xe5rZ$\xd4\xecd\x9bd\xfa\xde\xd2\x0f\x80\x84\x93$\x8b\xf2\xa2`\x91\xd0\xcb\x7f\xdaO\xc3Q\xce\xf9\x95\xd9<\xb6\xae\xf4\xc1'\x0c\xe8^\xd3\xb6 `E`\xc5\x8e\x01+\x02+\x8e\x1b\xb0\"\xb0\"\xb0\"\xb0\"\xb0\"\xb0\"\xb0\"\xb0\"\xb0bm\xc0\x8as\xc8\x1c\xb0\"\xb0bc\xc0\x8aC\x03V\x04V\x04V\x04V\x04V\x04V\x04V\xfc\x14\xb0bc\xe6{\x02\x15\xbbQ\x81\xb8Q\xca\xd6;\xb2\xa1]\xc3\xd9V\xe7\xbd\xbb\x85\xc5T\xf0\xd4\x8c\xad\xad\x9f\xcd\x03d\x8cLis\x92 7\x07\xca\xd8\xad\xf0e\x00\x0dX\x15i\x0d\x7f\xb8\xd7FVV\xd5\xa2b\xb1\xf2\x9f&\x1aH9\xd7!\xcfK\xbae\xef\xd8\xaf%\xe3\xe2Lo\xb7\x14\xa6A\xa5,F\x16+\x1d\xc9\xc8>\xe7\x820\x15cS\x81\xb93r!Z\xb7\xe2A\xdc\x91\xc4\x91\xb5\xa8`\xea\xbag9\xd9\xe7\x05\xab\x02\xaec\x8f\x11\xf5\xcd\x83#\x9di]\xc2\xea\xff\xba\x85\xfe\xe4\x82\xf4\xa2\xfa\x87^Q+\x9f\xbdU\x8c\xb8\x15\x90\xb4\xb5\xb7\xedh\xbd0W\x15f\xbb\x9bo('\x9c\x89\xa7$\x11\xbc\n}sRf\xba3\xc7:\x1ax\x93\xf0n\xff\x08\xc8\xf3]a\xdd\xa04\xdf\xdde\xb4\xfd\x9b\xf1\xdd\xe5\xeb:\xadw\xbf\x1dN\xce\x8c\xf5\xb4XO;b!\x81S\x02\xf0\x0d\xf0m\xdd\x13\xe0[\x19\xc0\xf7\xd0\x00\xbe\x01\xbem\x06\xf0\x0d\xf0\xad\x0c\xe0\x1b\xe0\x1b\xe0\x1b\xe0[\x1b\xc0\xf7\x1cv\x0c\xf0\x0d\xf0\xdd\x18\xc0\xf7\xd0\x00\xbe\x01\xbe\x01\xbe\x01\xbe\x01\xbe\x01\xbe\x01\xbe?\x05\xf0\xedZO\xdb \xe9\xb3+\xd6~\xd6\xb9 \xaf\xa1\xba\xd4\x0c\xa1z\xb1\xaa\n\xab\x19\xd0hPY\x8d\x80U0l\xdb\x8b\x1a)\xa6+o{\x1f\xd6}+\x1fky\xa6\xde\x96\xf3\xcd\x863!g\xea\xdd\xea\x92V0_-:m6$\xd9\x0b}\xae\xd6o\xcd\x1a\xdf\x0dM\xb9g\x91/\xb1\x85FF\x9c\xa8\xebg\xf3c/,a\x1a\xa3\\\x99\x95{V$Q\xf5\x9b\xba\xdb\"\x9a\xc9\xf6\xe8\xb8\xd0\x8ee\x95\xe3\xcb\xac\x0e\xc5\xf5f\xad\x17\xaa\xb4\x94q\xde\xb8P\x07\xafJ.]}\xc5&\xfa\xb3[\xfc\x89\x9d\xdb\x83\xe4#\xeeM\x93}\x12\xea]\xb5o\x05\x98m\xec\\\x87i\xdb=\xd8\xe0\xe82\xed\xe1[\x1d\x94i\xfft\xb1!)\xdb\x88Jk`\xc4\x07\xd5\xd4PE\x98\xf5\x0d\xa2O\"\xfd\xbc\xbe#\x8cF;B\x0f\x87\x8f\xe8\xc5\xb6\x02\xa09\xde\xe5\xcb\xd6\x11\xd2\xa3\xaa\x87\xe6j}<\x91\xffH\xb28\x89\xa8`5k2\x1eT;\x9a\x8e\xd4..\xc9\xa2\xb4\x8c{\x13?\xaa\xcfR\xc3\xbe\xde\x15S\xe8\xb8\x15\x83\x96CwGP\xd3)\xec\xe7\x0b\xde\xbbZ\xbd&\xa8\xb9r\xc1\xb8\x81\xfc\xea\xf6j\xeeGy\xcb\x9d\x99\xbb)\xd9fy\xd1\x8b\xe0Wwc\xf7\x14\xda3\xc7^\xd8u\x9e\xa7\xac\xf5}\xcd\x91\x0bX\xb0kVt\x0eu]<\xb3w\xff\xc2%-\x05I\xc1\xc6\xef\x84N9\xf2\x1c,Sl3/bV\xf4\xe7\xe5\x1e\xd5\xc5\x12\xde\x98\x95oa\xc2\xd7\xb4\x9b\xc4\x0b\xe6o\xa3rh>ki\x8a\xaa.\xf2X\xd2\x82GU\xcb\x1ev\xce\x02\x9brc\x96\xe6L8\x05\x18^\xf6\x10\x12\xbc_\\z\x11&\xbc\x98#\xbbp\xcb+f\x89+\xd4),\x05z\xa5\x15\x0b\x08+f\xca*\xec_\n \x12U\x1c%\xa9\x98%\xa8 \xd4\xfa\x05\"\x11&\xa7\x98#\xa6p!\xce )\xc5\xc2B\x8a \x19\xc5\x82\"\n\xaf\x84b!\x01\xc51\xf2\x89\xc9\xe2\x89\x05\xa4\x13\x0b\x0b'<\xb2\x89\xc5E\x13\xa7\x91L,.\x98\x08\x97K\xcc\x13K8\x9c\xee\x93J,&\x94\x08\x93I\x8cD)\xec\xe3\xeb\xc2\x12 \x9f@\xe2Hy\x84C\x1c\xe1\x9d\x9ex\x85\x11a\xf3\x97eE\x11>I\x84\xbfN\xf3\xe4\x10\xd5\xc8>R\xa0O\x0c\xb1\xa0\x14\xe2\x08!\xc4\xb8|\xc9%\x83XV\x04\xe1\x96@,!\x80\x08\"\xf8\x1e\xf1C\xb0\xf4\xc1N\xe2\xa6\xcb\x1e\xece\x8d\xc6\xc3\x17\x112V\xf1q\xa9\xc2\xb2B\x05\xdbk\xb0O\xa4`\x95(,+P\x98/O\xb0H\x11f \x11\xbc\xa2\x83i\x92\x83`\xc1\xc1D\xb9\xc1\x14\xb1\x81Uj`\xafM(\xf2\x0d\x93\x19L\x14\x19L\x90\x18\x8c6mYy\x81M\\p\x84\xb4`4:c\x15\x16\xcc\x93\x15\xb8$\x04\xcb\x0b\x08\x8e\xefI\xc1\xe2\x81P\xe9@\xf7 \x18\xbe\xacw\xc6\xaa\xde^i\xedE\xbd\xcd\xf9\xb1Z\xb7cX\xad\xeb\xeb\x94\x8d-\x8c\x8cB\xa1\xd1\x0c>l\xdd\x13|X\x19\xf8\xf0\xd0\xc0\x87\xc1\x87m\x06>\x0c>\xac\x0c|\x18|\x18|\x18|X\x1b\xf8\xf0\x1c\xc4\n>\x0c>\xdc\x18\xf8\xf0\xd0\xc0\x87\xc1\x87\xc1\x87\xc1\x87\xc1\x87\xc1\x87\xc1\x87?u>\x9c\xb4\x87eW\x06\xe7o\xe5\x95\x8f\xe4[\xdeS\xf5\x88\xa9\xb0a\x12\x93$\xe3\x82\xd1\xde\x95\x95\xbf\x1b\x9e\xdca\xac\xf5\xeb~C\x99\xd7L\x81\xe6\x84\xc5\x86el\x06\x8f\x0b\x13\xa9W\xd1\xbc5c\xb2s\x9b\xac\xb5\xe4I\x9a\\\xa9pb\xefD\xfcs\x1dT2}\xb4S\\y\x88\xd5\xfb\xaa\xc8\xabRd\xe7\"\x9bR\x94E\x1dv\xabkZ\x8a\x9d&\xe1\x0bRp\xd2%r#\xd9w\x1b\x07\x07^\xa1\xf6\x15\x99\xee\xf9\xee\xd5\x1b\x85\xb9\x7f\xec5\x7fjb\xd6\xb0\xfc\xc3\x93\xf4\x01k\x16\xed\xbe\xfa\xd2\xae x\xa5\xb6_\x16l\x93\xdc\x9a\xa6r\xb2n\xfdh\x0e\x08A\xd9\xa3\xbc\xff\xd5\xb0\xac\x07K\xfau\xbbW\x07U\xd9 \xac\xd7\x1dYk{\xc0\x8b\xeb\xbb\x17\xa48D\xbd\xc2&}\x9e\xf9\x9bz'\x00\xfd\x81\x1f\x01\xf4C\x02\xc2\x04@\x1f@\xdf\xba'\x80\xbe2\x00\xfd\xa1\x01\xe8\x03\xe8\xdb\x0c@\x1f@_\x19\x80>\x80>\x80>\x80\xbe6\x00\xfd9L\x1c@\x1f@\xbf1\x00\xfd\xa1\x01\xe8\x03\xe8\x03\xe8\x03\xe8\x03\xe8\x03\xe8\x03\xe8\x7f\n@\x7f\x06\"\xad\xbfh\xb9Z\xdf \xe6\xfc\xaee\xb5vV0\xfe!\x7f\xafo\xe4(\xcf\xaeY!x\xfd\xd5\xcb\x97\xd5Jj\xb9\x9b\xbcz\x9d8\xc4l\x9c:vr\xb3\xdf\x83\xc5\xaa\x95c\xb5\x07& 7w\x80c\xcc\x15^\xbe:^\x86\xb9\x88\xcdJh\x00\xd6\xf6\x01\x00\xac\x96\xed\x00\xac-\x03`\x05`m\x0c\x80U\x00\xb0\x8e\x1b\x00ke\x00\xac\x00\xac\x00\xac\x81\xb3$\x00\xd6\xda\x00X\xdb\x06\xc0\n\xc0:b\x00\xac\x00\xac>\xe7\x03\xb0Z\x8f\x01`\xed\x18\x00+\x00+\x00+\x00k\xc7Ba\x17\x00\xab2\x00\xd6\x7f\x15\xc0\x1a\x90Q[s\xd4VI\x0b.\x08nE\x13\x8eB\xbd\xfa\x04~\xd6\xab\xf9\xe0\x87\\\xb1\xc6\x16\xeb5\x8c\xd7\x8c5\"'\xed6\x1f\xcbx;'5\xfb=x\xc6\xab\x1c0 \xfa9bDA\xfc\xb7\xe3&/\xff\xedP\xe3^\x81\xc0\xbf\xe3\x07\x00\xffZ\xb6\x03\xff\xb6\x0c\xf8\x17\xf8\xb71\xe0_\x01\xfc;n\xc0\xbf\x95\x01\xff\x02\xff\x02\xff\x06\xce\x92\x80\x7fk\x03\xfem\x1b\xf0/\xf0\xef\x88\x01\xff\x02\xff\xfa\x9c\x0f\xfck=\x06\xf8\xb7c\xc0\xbf\xc0\xbf\xc0\xbf\xc0\xbf\x1d\x0bEq\xc0\xbf\xca\x80\x7f?%\xfc;\x88\x0b\x1c\xc9\x7f'\x81\xde}\x1e\x97)[\x99\xfc\xce\xdc\x0ex\x7fT;\x9aE\xbb\xbc\xf9\x1er\x9a\xea\xbb\xe26\xe1BQ\x10\xb5_\x950\xba\x8e\x96\xccf\xbc\xdd\xf3>\xaa\xdc\xf1P\xe9n\xc7\x8fm\x13@s@s\x1d\x03\x9a\x03\x9a\x1b7\xa09\xa09\xa09\xa09\xa09\xa09\xa09\xa09\xa0\xb9\xda\x80\xe6\xe6\xd0-\xa09\xa0\xb9\xc6\x80\xe6\x86\x064\x074\x074\x074\x074\x074\x074\xf7)\xa09m\xee\xf7c\x85\xce\xba\x04\xca\xbfpnx T1\xe7=\x82\xf6\xee\xf25\x16\xd1\x8d\x1c\x80Et\x96\xed u-\x03\xa9\x03\xa9k\x0c\xa4N\x80\xd4\x8d\x1bH]e u u u\x81\xb3$\x90\xba\xda@\xea\xda\x06R\x07R7b u u>\xe7\x83\xd4Y\x8f\x01\xa9\xeb\x18H\x1dH\x1dH\x1dH]\xc7B\xa9 H\x9d2\x90\xba\x7f\x15Rw\xcc\x82\xb6\xf3\xdf\xe4\xfd\xe8H\\\xda\xa1r\xaf\xeed\xf7\xae\x17\xb7\xc9+\xd8]\xcfF\x92l\x93\xcb\xa7\xad\xf9Y\x16nJ\xb4\xafZ\xd3\xa5\x9a\xdd\x1e\xfa\xd25\x1b\x0f\xb3\xa0-7\xd8rc-oD'$$\xb28\xd0\n\xc3Ys`\x96\x1bZ\xcdBV\xea\x14\x96\x02\xbd\xc0j\x01\\5\x13VYC\xfca\xa8\xea(P5\x0bS\x11\x9a\xa66/\x86A\xaa9\x88\xca\x158\x0e\x02T\x0b\xe3\xa9 8\xb5 \x9a\xf2\x82\xa9\x85\xb0\xd41Pj2\x92Z\x00H-\x8c\xa3<0jq\x14u\x1a\x10\xb58\x86\n\x87P\xf3\x10\x94\xc3\xe9>\x00\xb5\x18~\n\x83O\x93\xd0\xd3\xc2\xe0\xc9\x87\x9d\x8e\x84N\x0e\xe4\xe4\x9d\x9exqS\xd8\xfceY\xd4\xe4\x03M\xfe:\xcd\x83L\xd5\xc8>R\xa0\x0f1-\x08\x98\x8e\xc0K\xe3P\xd8\x05\x97\x96EKn\xb0\xb4\x04V\n\xe2\"\x1e\xa4\x14\x0c\x94\xec\xf1\xcd\xe90\xc9^\xd6h\x94a\x11\x8c4\xc5Y\xa1\x08\xc9\xef\x93`|4\x03\x1e\xd9\x82\xda>p\xb4\x1c6:\x1e\x1a9\xaf\xf7\x91\xc0(\x08\x17\xf9aQ\x08*r:{*&\n\x85D\x16D\xb4\x00 \x9a\x80\x87\xa6\xc3\xa1`4\xe4 *\xd6\xea8\x8e EB\xcb\x00!g\xe5G\xb6\xccBA\x15\xf6\x19)\xcf\x02\x82\x16\xc6@v\x084\x17\x01\xa9\xf8\xc8X\xc5\xc7\x01\xd0\xb2\xf8\xc7\xf6\x1a\xecC?V\xf0\xb3,\xf6\x99\x0f},\x80g\x16\xde\xf1\xa2\x9ci '\x18\xe3L\x848S\x10\x8e\x15\xe0\xd8k\x13\x1aH\x0f\x837\x13\xd1\xcd\x04p3\xda\xb4e\xa1\x8d\x0d\xd9\x1c\x01lF\xa33V\\3\x0f\xd6\xb8\xc0\xcc\xf2X\xe6\xf8\x9e\x14\x8cdB\x81\xccq\x0b\xa74\x04Yh\xf5\x94\xe14\xed%TM\xbd\xb06\xaacX\x1b\xe5\xeb\xac\x8d-\x8c\x92Ba\xd2<\x9cd-\x0ck\xa3\xb06\xaa\xb19\xe0\xc9Z\x18\xd6F\x0dm!\x08u\x1c\x86\x9a\x01\xa2\x16AQ\x8b\xc3(/\x8e:\x01\x90:\x15\x92:\x01\x94\x9a\x82\xa5\xe6\x82)\xe7\x18\xeeCS\x0b\xc2\xa9P<5\x11P-\x8e\xa8\xfc\x90\xeahL\x85\xb5Q\xde\x9a\xcd\xc3V\xa3Eam\xd4\x1c\x80\xe5CX\xcb@\xac@2\xe3\x05Y\x13P\x96wa\xc7D\x9c\x85\xb5QX\x1b\x85\xb5Q-\x9b\x01\xbd\xc2\xb1\x17\xd6F\x19\xc3\xda(\xac\x8d\xc2\xda\xa8\xa1\xcd\xc7d\xa3\xc5am\xd4\xe8\x01A`\x0dk\xa3\x96\xc3lX\x1bu4\x84[\xa6\xcf\x05\x83\xb8p\x14\x17\xf6\x81\xb1\xd6\xe2$B\xee\xf7\xb3b\xaaZ\x8e\xaf\x89]\xaa\xed\xe4\xd7\x92\x15 \xd3_\x11kZR\x8dz\x9d\x15U/K\xb1\xd3G=\xaa\xea\xfe@\x17R\xb5\xdb\xde\xb6Ne\xf4N:\nm\x1eR\x8d\x03\xaag\x90^d6|\x088\x81\x9a\x1b\xa7\xed\xe9\xedj\xcf\xf6\xf9\xaa\xa6?\x0e\xea\x16\xa4~.\x93L|\xf3\x87\x91]\xc4\xed\x8a'\xdbU\x9a\xec\x93\x91Ued\xb9s\xfc\x9d\xad\xa2\x9c\x8b\xd5\x81\x15\xab\xf5\x9d8V\xcem=\x99l\xcd5+\x92\xcd\x9d>\x1f\x8b\xbf\xfc\xfa\xeb/\xfe\xc7}\x9d\x8e\xb3\xe8\xf0\xe5\xd7\xdf\\}\xb1\xfc \x03`\xbe\xbe\xf7\x82\xf8\xbd!\xf6\xe6\x1e\x7fw\xf9\xbaW\x1e\x90=\x90\xbd7^\x1d\x12\xf2%@\xf6@\xf6\xd6=\x81\xec\x95\x01\xd9\x0f\x0d\xc8\x1e\xc8\xdef@\xf6@\xf6\xca\x80\xec\x81\xec\x81\xec\x81\xec\xb5\x01\xd9\xcf\xa1\xde@\xf6@\xf6\x8d\x01\xd9\x0f\x0d\xc8\x1e\xc8\x1e\xc8\x1e\xc8\x1e\xc8\x1e\xc8\x1e\xc8\xfeS@\xf6! \xfd\xef5I\xdf\x164\x13\x0e\x92\xfe\xce\xe4*M\x13\xae\x02\xc3\xbf\xbc,\xc5./\x92\xbf\xeb\xf8\xfaS\xa2\n\xd0\x91=y \xf5\x9fL>b\x9b?\x8bQ\xe4\xfe\xbd:\xb5\xd9\xf2`q{\xdbAm\xfb\x18\xdc\x8b\xb6}\xef\x8e\xfcX\xcfA\x02\xceC\x02\x18\x1b \x0b2\x91\xc0XMeSy\x9b\xb3\xb0\xf1\xa0\x8bc\xe6\xbe4w#~\xf6Ff\xf07w\x03\xaa\xbc\xad!\x0c\x8e,\xc5\xe1\xc8L\x16\xe7,P:7\x98\xc7\x91\xe3\x99\x1c\x99\xcc\xe5\x9cE5\xb9]\xc3\xd9\x1cY\x9a\xcf\x91\x89\x8c\x8eL\xe5t\xee\x9e]3\xbcPVG\x96\xe6u$\x8c\xd9\x91%\xb9\x1d9\x9a\xdd\x91y\xfc\x8e,\xc5\xf0\xc8,\x8e\xe7\xbe\x1d(g\xb1\x9f\xe5\x91\xd3\xf0\xe7\x820\x15\xa7W\x01\xfe3r!Z\x8f\x97\x83\xb8#\x89\xe3\xa3\xa4\xf2\x86/\x18\xc9r\xb2\xcf\x0bV\x01\x9d\xb1)\x95\xc8\x05\x9d\xfb\xc9U\xef\xaat\xff\xc0\xa5N\xaf\xbc\xa8\xfe\x91\x95\xfb\xb5\x0e#Wk\xc9Z\x0b\x97l\xedm;Ze|_\xa9\xc2l\x03\xc7\x0d\xe5\x843\xf1\x94$\x82Wx\x8d\x932\xd3\x9d9\xd6\x04\xe1&\xe1\xdd\xfe\x11\xb0\xea]K`\x82V\xbd\x8f\x1d~\xfe\xb2{\x93#a\xbd1\xac~\xc7\xea\xf7\xc6\xb0\xfa\x1d\xab\xdf\x1b[T]3EY3IU\x83\xd5\xef\xc7*hf\xa8g\x16Q\xceLW\xcd`\xf5\xfb1*\x99)\n\x99\x19\xea\x18\xac~\xc7\xeaw\xac~\x0fU\xb7,\xaal\x99\xa3j\xc1\xeaw\xdbn^\xf5\xca\x04\xe5J\xc8\xba\xe9)\x8a\x15\xac~\x9f\xb3\x80\xdc\xa7H\xc1\xea\xf7p\xe5I\xa0\xea$Dq\x12\xa66\xc1\xeaw2SQ2AM\x82\xd5\xef\x0b\xa8E\xbcJ\x91\xb9*\x11\xebs\x13\xab\xdf\x07\x86\xd5\xefX\xfd\xde\xb3%V\"\x87*8&\xab7&)7\xb0\xfa}\xa6B\x03\xab\xdf+\x0bIXo0v\xab\x8c${\xa1Yj\xeb\xb7&i\xfd\x86\xa6\x1d\xa47\x1aU\xe8\x16\xceNS\xf8\x9eoW\x15\xf6i\x1d\xe3\n\x03\xbc5\xf1\xe3\xa7\x9d\x83\x9fj\xc1\x87\x82\x99\xaaCk\x92\xac\x1e\xa6F\x15\xb0\xa7\"\xda\xf5;\xf66\xb9f\x99,i\x10\x92X\xb0\x95\x8d \xe0\xec\x8a\xdd\xd9\xda\xd9#\xec\x06\xa9S\xf3\x88+T\xbe\x02\x15\xf64\x94\xd7\xa0\xcc\x9a\xbf\xab`\xe5\xb6\x17\xd5S-\x90\xc3\xb2\x8f\xa9\xbf\x95\x9e\xca3\x15\xcd\xc87\x1b\xce\x84|\x93\xeaV\x97\xb4`\x0bgbaoYBW#N\xd4\xf5\x0b\xec/\xa61\xca\x95Y\xb9gE\x12U\xbf\xa9\xd10\xa2\x99l\x8f\x8e\xdb\xc9>d\x1c_fu\xa8\xb4\xf7Vq\xa1JK\x19\xe7\x8d\x0bup\xb1\xe4\xd2\xd5Wl\xa2?\xbb\xc5\x9f\xd8\xb9=\x85\xc2\x88{\xd5\x97\x07\x02\xbd\xab\xf6\xad\xf8\xbeM\xb8\xa0\xc3\xe8\xed\x1el\xd4\x00e\xda\xc3\xeb:h\xd6\xfe\xe9bCR\xb6\x11\x95\xd0\xc3(?\xaa\xa9\xbb\"\x00\xfa\x06\xd1'\x91~^\xdf\x11F\xa3\x1d\xa1\x87\xc3G\xf4b[~\xd1\x1c\xef\xf2e\xeb\x08\xe9Q\xd5Cs\xf5\x85\x11\xa2e]q\x12iQ\x97f\x81\xc6\x83jG\xd3\x91\xda\xc5%Y\x94\x96qobN\xf5Yj\x18\xdb\xbbb\n\xed\xb7\x18\x81|\xb4\xb6\xe4L\xbd\xc1\xe5\xe7\x0b\xde\xbbZ\xbd&\xa8\xe1\xb7`\xdc\x880\xd4\xed\xd5\xdc\x8f\xf2\x96;3wS\xb2\xcd\xf2\xa2GX\xaa\xbb\xb1{\n\xed\x99c/\xec:\xcfS\xd6Z\xe3?r\x01\x0bv\xcd\x8a\xce\xa1\xae\x8bg\xf6\xee_\xb8\xa4%\xdf)\xd8\xf8\x9d\xd0)G\x9e\x83e\x8a=\xe7E\xcc\x8a\xfe{\xd3\xfb$\x8b\xd8\x0b\xa2s\xde<\xe3\xf1\x15y~\xf6\x87\xaf\x16\xf5\xc6\x9cD;\xe7f\x9ap\xfe\x9b\xf9\xc7?u c\xa9w\xbe\xd7{h\x8d\x90qF[\xc5\xf7\x8b\xda\xd2\xcd\xc7#ojSru\xe9;W\xe3\xf1\xa8_\xbeyl\xf6\x1d\xe6\xe7\xa9\xce\xff\xa8\xf2\x10\xd2\xf4x\x05:f\x9e9\x1bN\x99\x0b8\xfbx\xa4 B\x9a \xa4 r\xd8\x91\xe2%2Y\xc0\xe4,\ni\x82\x90&h\xae\xc8\x89\xcc\x13:\x91\xa5\xc4Nd\x96\xe0\xc9}; M\xd04\x01\x14\x99(\x82\"\xf3\x84P\xbe!8L\x0cE\x96\x15D\x91 \xa2(2]\x18Ef\x88\xa3\x02\x86L\xa4 \xd26Y8\xe5,\x0di\x82\x90&\xa8g\xcb\x08\xacH\xb8N\x88\x84\x08\xad\xc84\xb1\x15\xf1)\x00f\x8a\xaeH@\xb9\x01I_\x8e\x14`\x91Y\xce\x0d\x17b\x91\x80V\xce\x10d\x91\xb9\xa2,\xe2\xcd_\xe2\x17g\x91\x85\x05Zd!\x91\x16 \xeb1G\x8b\xb5H\xb8`\x8b\x04\x8a\xb6H\xb0p\x8b\x84u\xa8\xe9\x02.2I\xc4E\x90&\xc8\x9fK\xc7\xb9\xd9{|\xb8\xd0\x8b,(\xf6\"!UC\x9a\xa0e\x85`\xc4+\x06#s\x05a\xd6\xd2\x90&\x08i\x82,6YTF&\x0b\xcb\x08\xd2\x04\x8d\xda\x1c\xd1\x99\xb50\xa4 \xaa\x0ci\x82F\xec#\xa7 rg\xda\x18\xd2e\xc2n\x05\xcbbNh\x9d-H\xec\xc8:\x17;\xd5uh\x1c\x17\x8cs\xcb\xe2+\xf3$\xa8\xf2\xcc\xc8{\xa7N+3z\xc0E-~\x90\x1dq\xcb2\xc6\x13\xae/\x89:Z\xc1{\xfd\xf7\xe0\xf8Nx\xc7\xe8\xda\\\x19p\xba\x1f\xaf\xe9? \x90\xe7F\x19\xf2\xdc4\x9bB\x9d\x89<7M\x9e\x9bJJ2?\xddMW\x11\x83l7\xc6\x90\xed\x06\xd9n\x1aC\xb6\x1bd\xbbilQ\x91\xc8\x14\x81\xc8$q\x08\xb2\xdd\x1c+\x04\x99!\x02YD\x002]\xfc\x81l7\xc7\x88=\xa6\x08=f\x88<\x90\xed\x06\xd9n\x90\xed&T\xa4\xb1\xa8@c\x8e8\x03\xd9nl\xbbyE\x18\x13\x04\x18!yR\xa6\x08/\x90\xedfN\xc2\x18\x9f\xb0\x02\xd9n\xc2\x05\x14\x81\xe2\x89\x10\xe1D\x98h\x02\xd9n\xc8La\xc4\x04Q\x04\xb2\xdd, z\xf0\n\x1e\xe6\x8a\x1d\xac\xcfMd\xbb\x19\x18\xb2\xdd \xdbM\xcf\x96\xc8<\x12*D\x98,B\x98$@@\xb6\x9b\x99B\x03d\xbb\xa9,<\xdbM\xdb\x93\x89B\xd4\x9d\x81\xabY\xf1.\x8a\xd2\x9b\xd7\x01\x89Z\xe6e\xc1@\xa2\x96\x13:\xd7\x9fb\x04\x89Z\x96\xf0\"\x12\xb5 Q\xcb'\x97\xa8\xa5\xa8\x12\xb5\x14\xdeD-E/Q\x8b+M\xcb\xd3ZyV\xe7k\xa9\x19\xdb\x91\xf9Z\n\xe4k\xe9\x9bOb\x82|-\xc3}\x02\x16\x04\x87`\x99\xca\xa6Jk\x9c\x85\x8d\xf3\x15G\x90ni\x89\x0d\xf1\xcbl\xc8\x0c\xa9\x8d\xbb\x01\xc8\xd72W~C&Kp\x9cE!_\x0b\xf2\xb5\xcc\x95\xe9\x90yR\x1d\xb2\x94\\\x87\xcc\x92\xec\xb8o\x07\xe4k\x99&\xe1!\x13e\x86=S6D\x02\xca\x0d\xc8\xbeq\xa4\x84\x88\xccrn\xb8\x94\x88\x04\xb4r\x86\xa4\x88\xcc\x95\x15\x11o\" \xbf\xbc\x88,,1\"\x0b\xc9\x8cHX\x8f9ZnD\xc2%G$PvD\x82\xa5G$\xacCM\x97 \x91I2$\x82|-\xfe\xa4&\xce\xcd\xde\xe3\xc3\xa5JdA\xb9\x12 \xa9\x1a\xf2\xb5,+e\"^9\x13\x99+i\xb2\x96\x86|-\xc8\xd7b\xb1\xc9\xb2(2Y\x1aE\x90\xafe\xd4\xe6\xc8\xa6\xac\x85!_Ke\xc8\xd72b\xc8\xd7\xf2@\xf2\xb5\xac\xefZ\x95\x1b\x84\xbb\x91\xafE\x19\xf2\xb54\x9bB\x9d\x89|-\xad|-\xc52\xf9Z\n\xe4k\xe9\x1a\xf2\xb5 _Kc\xc8\xd7\x82|-\x8d-*\x12\x99\"\x10\x99$\x0eA\xbe\x96c\x85 3D \x8b\x08@\xa6\x8b?\x90\xaf\xe5\x18\xb1\xc7\x14\xa1\xc7\x0c\x91\x07\xf2\xb5 _\x0b\xf2\xb5\x84\x8a4\x16\x15h\xcc\x11g _\x8bm7\xaf\x08c\x82\x00#$\xd3\xc7\x14\xe1\x05\xf2\xb5\xccIy\xe2\x13V _K\xb8\x80\"P<\x11\"\x9c\x08\x13M _\x0b\x99)\x8c\x98 \x8a@\xbe\x96\x05D\x0f^\xc1\xc3\\\xb1\x83\xf5\xb9\x89|-\x03C\xbe\x16\xe4k\xe9\xd9\x12\xb93B\x85\x08\x93E\x08\x93\x04\x08\xc8\xd72Sh\x80|-\x95\x85\xe7ki\xbf\xe2\"_\x0b\xf2\xb5 _\x0b\xf2\xb5\xcc\xf3\"\xf2\xb5 _\xcb\xbff\xbe\x965\xcd\xae\xeat-k\x9a\xd2,b\xfc\xfc7\xa3gs$jy\x99\xa6\xaf\xcc\xee\xaa\x8a\x95.\xc0\x94\xa1\xdeI\xd2\x94D\xb9\x9c\xd9\xcb\xaeG\x89\x1cPSFh\xa4zVu\xd5m\x17\xe2?d\x8f\x89h\x9a\xb2\x98l\x8a|Oh\xa6\xa9\xc5>\x8f\xcb\x94=\xd5pG\xab\xa44\x85\x88\xf2\x8c\x97\xf2M\x90\xec\x92\xed\x8e\xd0\xbdF3r\x91 \xf3jP\x93\xb1\xf6\xfb\xc1h\x81:(2~2\x9el3*\xca\x82\xf1z\x90P9\x91\xf2m\xae&\xe3\xc3w\xea\x8eC\xaanR\xcd\x00\xea\xbf\xcd\xad\xac\xa5\x13I6\xc0t\xc7hD{\xb7`3\x9d\x80F\x14\x1a\xd1OF#\xdaz\x98\xccW\x88\xb6\x9f\xc8\xef._\xf7\x1b\x01\xb9(\xe4\xa2\x9e\xbb\xf2\x04J\x0bW\x94\xc6L2m\x1d\xd0l\xaen\x84\xeaO\x91\x9ba\xaf~>m\xba\"-\x84z\x10\xeaA\xa8\x07\xa1\x9ey^D\xa8\x07\xa1\x9e\xdfg\xa8\xa7\xf1F\xc1x\x9e^\xb3\x95z_\x0dvD\xeb\x98jd\xd8\xa4t+\x1bo6\x1a<\xacv\xd0Z\xe3]\xb9\xa7\xd9\xb3\x82\xd1x\x90&M\xder:p#\x8f\xda3Ac*h\x88_\xbe~\xbe\xa8_\x8e\x0c\x81\x9d\xaf\xefV\xad\x98\xc5X,\xccL\xbb\xadq\xb0*\xf2%\xdf\x9e\x9d\xb1\xb0N\x84\xc9\x94\xfa\xa8j\xf3\xc3\x8e.\xd9\xa6\xc0\xb3^\xd5\x1d1\"\xcf4\xd4\x15\x1fr\x1e\xea\x8f\x0d-\x19\x19Z8.d\x8f\nM\x8b \x05\xbc\xaa\x9a^\x19\xf4\x9aj^L\xbb\x1d\xb92,a4\x86wR\xbc\x93z\xa7\xb0U\xfd\x9c\x8f\xf4\xce\xb3;\xd2\xc3\x95\xfc%\xa8zS\x1f\xb2\x9d\nNz\xc6\xaaJ\xad\xf2\x9b\x8c\x15\xfc\xfc7\xf5\x97\x034\xb5\x86\xa1o\xe5\xaeo\xd5q\xf5\xb3V=N\xd3\xb4z\x926\x99\x18\xf4|[I\x86\xe4\x15\x17I\xa4\x84pu#\xe4\xf0\xdd\x8c\x98\xed\x01\xfc\xf7D\xa6\x9a#\xc7\xbfn`6w&\x16-7\x9a\xcd\x0fvr\xd1\xee*\x0fc@3\xfd\xeb\x88\x11\xc9?\xd3\xd0V\x0d.mTR\x0f8\xa6o\xf3\xf1\xce\xdd\xb7\xb1\xde\xdd5\xeb,N\x9b\xc7i$\xc0q\xc4\xc7\xfeH\x98\xfb|\x0c\x90\x84\x15\x13z\x15\x96\x9c\xf5i\x9b5\xf7\xb3\x96f\xb4\x84..H&\xcf\x03\xb5\x85\xb8\xa8\x19Kj'qQ\x94\x91U\x06|\xdal\nu&\xf0\xa9\x9ah\xb6&4\xf5{i\xfb\x0e\x91\xaf\x9a\xf5\x0b\xaa\n\xc8\x0c\xa7@\x95\xc9}uz\xad\xc1=\xed\xb9\x9b\xf1\xf2\xda\xdb\x8a\x97\xd7{~y\x9d\x12\xef\xd5o\x86\xed\xbb\xa4ya\xac\x1e'\xf5{c\xfb\x05K>\x9b\xfb\xb7\xcd\xa9\xdevA`\xfd\xaf\xde\x04\x04\xd6\xd8\x89\x9d\xebg\x87 \xb0Kx\x11\x04\x16\x04\xf6\xf7I`\xa7GA\xf9\xaa\x02\xa3\xf6\x00\xe8?z\x01P\xfe\xa39\xa4\xc3\x1b\xa3T\x8d\xa6Uqu\\\xb4`\xdb\x84\x0b&\xdf\xf7\xe5\x03\xbe.\xaa\xfd\xa0\xe7\xa3\xfc\xb1{2\xb3\xc7\x83\x8d\x14V\x0d\x7f S\xc7\xb6\x0fFw\x08\x98\xff\xe9\xe0g\x99%c\x1fw\xd5\xe6j\x9a6k\x03\xb5\x05\x04\xf6\xfc\x8d\xd5\xe6\x0d\xee\x054\xb9\xb2\x90\xd0S{o9\x97\xad\xa3M\xfa\x86\xd0g\xe9dZ\xdc&\xd7\xcc\xfd1\xc6\xaa,\xe9t\x95\xf9\x90\x94T\xe4\xfb\xcf\xc7\x83\xa6\xda\xd8\xed!\xcf\x98; \xe9{\x8dj[\xeb\x95\xca\xf2n_\xd94/U\xf5l;\xea\x90\xdf\xe8\xe7\xd7\x17\xcf\x9b\xed:\xb8\x9c\xd9c\x8e\xda\xf6\xa5\xef\xa3\xad\x84\x1441\x89\x1b\xd6\x94W\xe2\x12\xf5H\xd6\x83\xb4\xfc7\xfb\xb5\xa4\xa93\xc6\xa9M]==*\xfd\x9c%\xe217\xef;\x9e\xc3\xbe0\x97\xf4O\xe4\x8b\xe7\xff_\xdd\xc6\xa6:\xbe\xe3U\xfe\xcb*\xe2\xdbjE\xbe\xd1}\xa3I\xe4\x18\x15L\xce2\xdc_\xac$M\x0bd\x11\x8fe\x11\x8f\x03\xbe\xde\xd7\xba~\x7f\"\xdf<%bW\xf2\x17\xe4\x0b\"\x8f\xd7m\xfb&\xa0\xaf\xd24\xa1\xdc}\x1b\x87\x0c*\xdaaQI\xd2\xb9\xac\xad\xfb\x8b\x9ahx?U\x1a\xf5V\xad\xf3\"^\x9a\xdebn\xa4$\xaa\xc2\xce\xe3\xc7\xfa]\xd9z\xb4\xf4\xc7\xcd\xca\xa5\xed\x1bMM&\xac\x85\xe9\x1b\xb33\xbbh\x9b\xbcgf?\x03\xc3\x079y\x9a~[\xd4o\xfav}\xd2\xbc\x81\xcb-u\xeb\xac\xe5\xa9;\xbeu\xcf=\xb7\xdcXq\xc2\x0f)\xb5\x84\xc5\xa7\xb7\xd0\xd1\xc7\xcc\x99\xea\xf7\x19\xf3\x9c+\xb7[\xc6\xe5[\x82\x19]eO\xf3\x7f<\xda\x14\xa6\xe7\xd2z\xf2h\xc9\xbf\xa8\xe6\xf7\x0b\xb5n\xfc\x1b\xfc_=vw\xe4\xc7\xea!\xde\x8eUu\xf2'+$\xf7\x84m_\x90\xd7\xaaX\xf2R\x0e\x83\xe3e\xf2\xbb\xfd:\x9f\x1f\xd0\x0b\xef\x8e\xfaD\xcd\x0b\xbe\xac\xa3\xf9\xad\xca\x7f\xccw\xf9MF\xd4\xb7%LFSki\xaau/?\xbc\xfd\xf1s\x93\x18;r}\x19\xc8\xf4q\xae\xd2\"\xe9\n\x98\xcb\xed\xcc\x0d\xea{Aj\xac,\x92{p\xe1\xcf\xef.t\x9c\"\xce\xa3R%\xe7~\x92\xcby\x83|\x13~\x16\xedh\x92}n\"Q\x06\xf8YKje J2=\xbf\x92/\xaa\xe4\xedA\xff:\xd9-}\x86\xa7\xad,\x92\xd5\x8e\xf2\xdd\xfd\xf8\xe6/\x94\xef\xf4S\x90\xef\xe8\x97_\x7fC\xe4\xa95\xde\xa8\x1dv\xc8\x93\xea#\x1f?\xbf\xbb\xb0\xcf\x0c.\xe4(_\x1a~v\xcd\x8ads\xa7)\xad\xf5\x08\xd5\xa9\xaa\xd3\xc4I\x9c=\x16&/\xef\xc2n\x0d\x19\x1d\xeb7b\xff\xa3w\xf4x\xea~\xaa\xfa/J\xfd\xda]'.m\xbd\x93\xb7\xba\\\xfdZ>>\xddm\xbd\xac\xab\xaa`\xa9-X\xb1\xda\x19\xacxQV\\G\xb5\x82d\xccc\xc5\x9c\xf7BqXp\x0b><\xba\xfd!\xf1a\xe0\xd4i\xac\n8\xf5\x84\xce\xf5\x83@\xe0\xd4%\xbc\x08\x9c\n\x9c\xfa\xe9\xe1T\xff\xba\x92 ,U\xbdS7Q\xceQ9\xfd\x10\x9d\xfe\xde\xc8\xa9mN5\xeb\x0d\xd0\xcb?=\xb3\x1b/\xfb\xf4A\n'\x9c\xf0\xcc\xfb\x88\xb7y\xda\xbc\xc43`\nG\xbc\xaf-\xfd}'\xb0N\x0f\xdc *\x03{(\xe9\x0c\xe1\x9c\xee\x97\x81\xc6B\x19\xe7\x14\xcf,\xcb7\xfdts\x12\xdb\xf4\xf2\x1e2\x95l\x1e\xc75\x17\xa6\x9a\xf3\x98\xe6\xf1D3\x80g\xfa\x06\nm\x01,3\xf0f\xf6\x05S\xb4-K1]\xb7yX\xacla~9\x9f^\xfa\xdc7\x87\\:+k\xe1\x96vj\xe9\xed\x07a\x83\xd6\xb2\xbc2\x8cV:Y\xe5\xb4vY{\xd2\x82\x942\x94Q\xda \xe5\xb46M\xa2\x93K\xb3I\x17\x99\x9c\xd6\x0ck\x97\x9b\xc5$U\xed-\x05\x06\x12\xc99<\xd2\xfb~Q\x99\x95E.\xe4\xb4\xa5(\xe4|\x06\x19\x8c\xca\xdc\xfcq9\x7f,G\x1e\xa7r\xc7\xe3\xa8c\xa0#\xfd\xe3\xdcq\xbc\xd1A\x1bC\x01\xc6B\xfc\x02\xf8\x02\xf8\xe2\xf7\x83/\xfa\xb3\xdcN\xf7\xd3\xd3\nG\xee\x13\xd1\xcaB\xb6\xf0\x82\xb5c\x02U\xab\xf5\xddJUp\xa5\x8b\xd4\xe5|\xd4\x80\xd5\xab;\xd5\x80\xf7\xed&\"z\xd51D\xaf\x1a\x0b\x9b6T\xfb\"z5n\x88^!z5b\xbe\x81B\x1b\xa2W\x88^u\x0c\xd1\xab\x81\x85\xf5$D\xaf\x10\xbd\xea\x19\xa2W\x88^\x8d\x17\x86\xe8\xd5q\xd1\xab\xce\x8b\xa67\x94\xd5+N\xd4\xf9\x85CCY\xe4\"f\x99H\"\x9a\xea\x07\x8e#\x9c\xb6.\xe5D\"b\xc9\xf5\xc0\x07\xfa @\xab\x04\x9ff\xd6\x93d*b\xc0\xb8@\xc4\x0c\x11\xb3O#b6U\xdd5?f\xa6\xdahv\x1f\x0b\x8d]\xaa\xed\x9d\x90X\xe3\x169\xb4\xdf\xaa\xf2L\x82\xde\xd1\x08\xd8+\x9a]\xe9b\x1eU\xady\xa0\x11\xaf\xb63\xda\xd6\xa9\x8c\xde\xa9\xbb\x1c\xa9\xeb\x12=c\x1f8\xa5\xb1#\xe2g\x9ce\xf1\x8aet\x9d\xb2\xd8\xf58\xffW\x08\x809\x9b\xa9M\x97\xd3\x97zv-l\xfaB\xc8{\x96\xc5o\xf4)\xc9\x9e\x1ex\xef\xce\xa5\x1d\xdf\x13.\xa8(\x1d\xcbJovLe\xae\xa6\xf5h`\x8fy\xc8\x82e\xa9\xb6u\xd0A\x0d\xf8VN9\xe4\x8bU\xfc\x82\xfc\xac\xb31\xb6[\x94dU\xcfM8\x89\xeb}\xcfl\xb5\xfa./\xc8\x96e\x8c'\xfc\xa9\x9c\x89\xe9W\x18v\x93\xde\xc9\x19\xabt@\xdb\x1b&\xd1\xeeP\xec\xda\x98)\xcct.\xeby\xdf\x8b\xbc\xa0[\xf6\x94\xa4y~U\x1e\x9e\xaa\x14\xb2{\x9a%\x872\xd5a\x03u\x87\xa9\x8c\xdd\xcd\xe2\xbf\xc4v%\xb2\xfc\xa6R\xa3_1v\x18\xaam\x1b{\xa9n\xde\xee$\xf0\x8f&\xe5\xb8\x929\xb3\xdb\x84\x0b\x1d:X\xd3\xe8\xea\x86\x16\xb1\xed\xb4Q\xbe?P\x91\xac\x934\x11w\xb2\xd8\xaa\xf5\x9b$e\xa3\xef\xaafJ\xb3\n\xbd\xc1\xc7\xfa|\xc0,Q\x0f\xc4\xa3\xb9<\x87\x84\xb3^Z\xa2\x07\xf9\xb1\xd1R\x0dz\x98\x98abv\x9f\x13\xb3I3\x9c\xe1\x0d56\xcfi\x0f\x95\xed\x0f \xb4\x7fg\x99\x90\xbfW\xfd\xd4v\xb7}h\xbeQ`VG\x88\xb2\xc8x'\xf6\xc9\xf5\xdb\xe0\x8e^3\xc2\x0f,J6I\xd4>W]\x18gB$\xd9\xb6\xbd\n\xe3ev\xd7\x8d\xa3\xea\x17\xcb\x9cq\x92\xe5\xa6L\xda\x94jJ\xd0\xabj\xcc@\xde\xbf_\x9b\xc2\xf53\xe2ll4\xd2C\xb1*F\x9e\xa7\xbd\xcaa}\xd7\xfa2\x83\xf7\xd3 \x7f4\x9b;\xb3\xc4a\xe3\x1f\xec4\xd1=D\x7f\x8c\x9b\xd49\xdf\xf2\xdec\x9ey\x96o\x8e\x152=Yln\x15<\xaf\xb2\xce\xa9\x82\x17\xfa\x8f6e\xfa\xea\x7f=\x1e\xa8 \xd2Hyfn1\xd6\x86C\xae\xa6\xfe\xefo\xe0V\xb7\xc6\xbd\x8a\xa4\xe4A~\x18k\xd8U\xa8D\x02H$2\x9fLd\xec\xfc>\xac^\xcbo\xden\xe55\xb8\x82[7|\x9f\xfb\xa5\x9f{\x12\x14\x0f}\xb2\xfe+9S>\x0d\xb3{\x9c\xef\xca|c\xa5\xe5u\xbb\xbbg\xea[*\x83n\xa8\xd4\xdfNn\xba\x9f<\xe4f\xca\x9e@\x9a+\x8dS\x8d.(\xa52\x900\x87XT3\xfa\xb9 \xfa\xb9&\xf5s\x0d7\x17\xa5\xb7k\xd5sw5\xd7\xc4\x0e\x1a\xec\x86t\x87\x1di\xef\x90=,\x15+\xdd\xd1=\x16\xafl\x8c\xee\xb1O\xc5=&\xac`\xdd\x04\x947\x14\x0be\xdb\\\xff-!z\x8a\xddn\xda\xd4\xd6\xe8\x9f\n=\xfcG\xff\xd4\x1d\n\xd7\xeeY\x89\xfe\xa9)\xa4\x18\xfdS\xd1?\xf5/\xee\x9f:\x99\xef.;\xa7\x7fOG\xd57<\xc1\xc4\xc1]%\x1cS\x03\xcc\xfe\x92\x14\x1dW\x95|\xe6\xf7\xe7\xb3R\xa3\xad\xd4\xc2\x14\x8f~\xea\x9e+\x9dA\x1ct\xf87\xf8\x9f,F\xa9\xc9\xf7d|\xd5\xeew\x9a\xd2\xeb4\xb1\xcfI\xefq\xf2\xf37\x05\x1c~\xc5,\xb5\x1f\x81\x07\x8d5\x07\xe2\xfe\xa2\xe7\xd4\x98\xc0\xe6#\xb0\xc8\x18\xefG\xce\x1d\x8f\xc5\x115\x12\x8f\xc5\xbf\x93c\xf1\x9d\x1f\x86\xc7%\xd6\x99\xd8\xf3\xb5zz\x0c\xfa\x19=\xf5v\x9b\xed\xf4V\xcd\x055\x80\xcf\xd9C=\xf3\x85\x1b\xc6\xfc\xed^\xa0\xeds2GD\x0b]k\xa3\xd3_\xf1\xf3'kat\x87\xaeK\x0f\xa1Zbd,\xdcJ\x99:2&b\x0ebm\xca\x88X\xb3R\x9b\x08\xd8\xe0E\xe7\x00\x982*\x14\x10\x15S\xb4b=\x12r\x1aaB\xc7\xf8Y\x8c\x9f\x0d\xe8^\xe2g\xba\x8e\xb0\xcd\xb9\xb3\xe9X\x0b`\xec\xb9Yd-\xd7\xeeN\xad-\x7f\xd1\xfc1Z\xf7{\xf2\x89\xd6\xfd\xbdZ\xf71\x94d7\xe5!\x86\x92\x04\xdd\xb1p\xedA\x90\x18J\x9aB\x8a1\x94\x14CI\xff\n\xa1$f\x869\x04\x8d\xb8\xbd\xf6n\xd9\x0f\x0d\xb5^\x15\x19\xeb\xa1\x07\xb6\xcf\xdc\xb3\"\xbb*~\xfbd\xdd*:g\xc4\x88Cg\x8c\xdb\xf8yD\xee3n#f\xa5\xd3\xb9K\x9c\xb4\x063Y\xd2\xfb\xb3\x17\xf1\xbe\x0c\x88\xc7\xacO\xeb\x98\xf5\xd9\x06)J|R\xe1|\x81\x8bM\x9aW\xcd\xce\x8a\xe6I\xca\xaf\xca\xd0o\xaa\x9d\x95\xfe\xfc\x9b\x17\xa7\xac\xe9\x8e\xa6\xe3=[\xa3|\x91\xe1BTq\xae\xb7[RT%{\xbe\xd9\x8b\x17\xa9\xd8\xd2:\xae7j\x994\xff\x07m\xb7\x19\xb5>S\x92\x1f\xc3|\xb7E%;\xea\\4l\xb3\xe2Z\x19\xae0=LR\xf5\xd8\xb4\xbf\xe3\xd5\xf9eK\xa2\xf0n\x17\xe5q\x83\xb2t\xc1\x94\xaf\xe0\x0e/X\xd8\xeaX\xd8\xb0,\x0e\xbc\xdd\x1e\x0b5z\x0c\xdb\xa7\xa2\x04YY\x91\x02+\xad\x05uu\xe8\xbf\xcaZ\xce\xbd\xfd\xba\x11\x9d\xf8\xf1\x93\xdd\xb0G\xaa\xa8=\xcfcF\x14\xc5\xa2\x0d\x0b3\xcd\x97\xc4\xf3\x85\x05\xfe\xe8\xf5\x86\x99a\xa5;\xdb\xa95\x85\x1b[\xa3\x9eB\x9b\xdb\x16\x84,/\xc9V\xab\xbd\x83\x0c*e{`\xd9\x11\xc0\xb4+\x80\x8d!N\xb6\xdd\x01d3\xda_\x9dt\xbcfL[rj\xc3!\\AI}qNK\xd3}\xcbn\x94r:\xa3\x93\xe6\xdd\xb6\xd5\xd9y\xab\x9a\xb8O\x8a\x1ad \xca\x12Vh1_\xc1\xf7\xb8\xb8\xde\xab\x96\xd2RAH\xc5\x150+c\x9b\xec\xfb\x97\xba4\xc7\x80\x8ayZ\x15\xa8\xd8\x89n\x1d\x8b\"\xaa\xec\x8a\x1aL\x95\x1a\xfdM\xd6\xc4\xd5\xb6\x84?\"\xaa\xff!\xc7\xe9j='u\xc1\xde'C\xffC\x97\xd6\xa8\\\xeb\x0b?\x02\xbc%\x15~\xc6\x0b51\xd3\x94\xb9\xf0\x165\xdf\x88\x9a\xa2\xfdR\x82\xcc(f\x0f\xea\x87_\xc4-\xd2\xbc\xb3q\xed\x87z\xecc'\xbe\xc9\x00\x19|<\xf8\xeao\xbe0\xe7Q*y\xc7\x85|^s\xa4\xf0\xe9gi\xee\xa8S\x17\xd7t\x8c\xb4\xe7\xbe\x00\xb5L\xf7\xa5r\x8b\xf4\x18@E\x9bf)7[\xb2\xb9(f\x0fC\xc6~\x1a\xee\xe5\x92\x18\x12\x8d\x99#\xfb\x83\xe06\x00\x92\x13ndiG\xa1\x1d\x81\xe1gT\x03\x12OM\x83_\xe3\xa9\xc9\xb64Zz\x0e\x1f\xde\xbf9)pI\xea\"\x11W\x990#\xbf\xce\xd3\x9fk\x9c\xed e7\x00,\x1b(\x13\x9d\xddD\x17\x1d\xe6w\x0c\x94\xb8HQ\x96\xfe\x82\x0d\xdb\x06\x9b\xfc \xc9`^/\x97\xb8\x90\x83&\xaa\xea\xf1\xbe1\xab_Z\xfb\x80tf\x06@\x86\x91\xe9\xf2.\x92c889\x80d\x8d\n\x94T\xb8\xe0\xbb[\x86\xca\nJ\xbcbwK\x88\x15\xfa\xe1\xfd\x9b\xc3r\x08x\xeb\x13c\xaa\xb9\x07B\xffU\xda\xdc\xb2\xce\x18\x14\x0ceT\x82\x8b\xfeU1T\x92G\xa8T,\xf3\x96\xae(+'+BV\x19\x9e1\x99\xcd\xeb\xe5\xece\xcd\xb7\xf7\xabG\xbc'\xac\xd96\xb0\xa6\xbc\xdf\x88\x13\x82\x04\xe5$g7:\xd05\xa4\xff2\xbb0\xec\x98\x8a\x96\xed\xe3\x07\xb3\x03\xaa\xd4rR\x01J\x12\xbc\xad\xf0\xe2\x91i\xe7=\xcdaK\x85\x9d&\xf8\x18*\x8c6es\xe5\xcc\xb6\xc0\xf4\xa4\x97f\x94S\xaa\x01\xd7\x18\xe6i\x8e\xf6\x14nK,\x19}\xb7\xc5e\x13\xb9PVV\xe4\xc4u\x1d\xa4\xcc\x85^\x97XF\x8b\xe8D\xc2\x1f\xd9P?\xcfw3\xf8\x8e\xdc\xe2\x1b\\\x1c\x1b\x8d\x92\x0f\xef\xdf\x94\xc2!'k\xacj\x9fe\x1a\x14\xc3\xd5\xba\xaa\xb6W\xc7\xfc\xbf\xe5\xd51\x90\x02r\"~m\xefY#luR\x89\xe8\x1b\xc4\x15\xd4[@|\x930v^\xd4\xf3\xf0\x9b\xf6\x97\x93\x13:\xad\xddx{M\xc8\xaf\xb3\xd9L?\x0f)\xd3\xc7\xd4\xa0\xa6o\xa0|\xb7\x9d\xcf\xde\xe2[\x0b\xff\xe9\x92\xbd\xf1o_C\x9ef\xc6\x89g\x14\xb2ay\x98\xdf\x1bt\xd0\xd0\x8c\xe0\x94\xf7m\xf6!\xdf\xa0\xa2\\\xa3\xec\x82p\xe51U7\x94\xbf]0xQr\xdd\xecS\xf2\x10\x06\xf3]k\x92\xca\x9d\x95\xa73\xa8O\x04\x12\nY\x97\x1a{\xeePan\x9e,\xeb,\x9b\xb1\x1f\xa8)\x7f(/z\x956.\x9b[\xba}\x93\xcf9\xf5\xc7\x9am7\xcfv\xcd\x05UCGJs\x84\x00\xb4\xac\xb0\n\xe7\xcf\x89\xf9x\x0eO\x0e\xd5\x9f\x12\xf6\x82d\x99y\x02\x9a0\xc4\xc1\x92\x90\xd9\x1c\x15\xac\xb3\x1fOv\xb3_\x0e\xb8\x14w\x9a+\x1f\xc0pLg\xac\x1e\xd06t\xa6\xc2?\xce\xdf\xbd\xd5\xfcDG\x9a\xfe\xdcz\x9d\xb8%M\xa8\x16\x11f ?\xd9\xd6e\xe3\xde^\xd5\x19\xda\xcb\x89\xe6\xb4\xdfL\xc5n\xa1h\x0d\xb7c\xc0\x9b9f\xd7\x81 \xadp\xcc\x0f$\xaa\xe6t\xf7\x00w\x8c*\x8ep\xba\xfa;\x15\xd0\x95p\xa74\x86kw\x08\xd4\xcb@\xa8\xadg\x86#\x18J\xae\xa9\xeej]\x02\xcb4\xc3\xfa\xddF\xea\xba3\\\x94$7.N\xe1\x8b\\\xa6EY]\xb2q\xfc\x1a\x9e\xe8[n^\xa0SO>\xff\xd4{\xdf\xa3d\xe2\xea\x80\xc9\xf2\xe0\x19\x1c\xa8\xd6f_\x0c3\xde\xcb\x83cS{\xac\x7fo\xd1\x86\xb6\xf9\x1f\xbc\x0b\xffi|\x81\xf6o\xf0\xbco'O\x97\xe2\xc8\xd9\x9fkM\x08\xe5\x16g\xd9\xe3\xeb\x9c\xdcr\\\xdd\x1a\x95\x80L\xa9\x81|\x0d\xa9~\xe9O\xf9c~\x84\x19\xac\x836\xe3K\xb0C'\xb0. S\\\xfc\xa2\xfc\xf1\x8a-F9\xcf\xd7$[t!||)\xa7y\xb3>\x80\xfb@\xd5M\xf1%\xa3\xfe\x0eca\xd6l\xeaGT{I\x11\xee9\xc7\xa4\xcf\xf8\xa7\x1f\x7fzdXHS\xcc\xb9\xfe\x07\xcd\xd3\x8e\x89\x8a6\xf9d\xf6\xf4\xc9\xd3\xf2\xc00\x85\xf8\x7f\x8d\xf0-Tu\xdd\x85\xa3qW`\xcf(\xe9\xe9\xc4 >([\xe6\x01\xd6i\xdb\xd6E`\x9b\xde\x14}\xa7E\xc8'\xcd8\xf0s\\\xdc\xa4 v\x80\xae\xcd3\x92\\\x97'\x19\xaap)b\x9b*\xf4\xda\xb7\xb8z\xc3\x1e\xf9\x86>\xdf\\\xc9\xc6\"\xe7\xec\xef\xc0\x1aRb\xac\xfb\xef~!\xfb\xf7\x89\x02\xb7X?.S\xed\xc5dA\xd0\xa0\x11\x97\xc7[\xdck[TT\x97%\xae.\xd7\x18-\xb0\" \x0c6\xce\xc1\xca=%CJ-X\xa3\xc8\x92L\xc0\x04IzQ\x81\x8b\xb8\xc0.\xb2&\xef\xf5\x0c\x15U\x89\xab\xef\x98\xe4\xf6\x87\x9b?\xc4&\xed\xe9K\xd5,QL\x11\xfe\xcea\xf7.\xd9-\xf3U3\x0b\xfb\xaa\\\\_\xb2W\xaf \xcd\xcb\n\xa3\xc5\xe1\xa4\xd3\xecn\xe7\x80\x88,\x18F\x87w\x9f\xdf\xc2\xcf\xfa\xc9p\x88\x96\xd14b\xdb\\\xf8\x02\xfd\x80t\xc9i\xee\x80[\n8'\xb4\xdd\xde\xef']\xdc\xd5\x9c^P\xf5\x98\x97u \xda\xf2\xdc\x04\x11\x9b\x15\x7f.\xeaL\\\xd1\xb9-\x08\xd5\xabf\x16Q3\x9e<\x8eL\xffO\xb2Fi~l\xf0`tA\xc1\xd4\xe6k^\xe2 \xb5\x06\x12T\xcaC,\xe7\xca\xd0\xa0t\xfb\xb7\x81\xc1C\xc3\xbd\xd0\xc0nB\xc4P\x15(/\xb9\x0d\xb8A\xc9:\xcd\x95\xb1\x00J\x8c;\xa5\xf6\x97\xe40\xa4:\xd0\x96$\x87&\xdcte\x95n\x0c\xa0N\xaf\xcf,P\x85\x1f\xd3\xf64O\xb2S\x96~o\x944\xe1\x8a6o\x04\xe0\xdaAp\xd9\x1089\xed\xa5\x92\x9cz\n\xce\xbd\x05\xfb\x1e\xdb<\xe6\xb4\xd7Jr\x99G\x92\xec\"\x07\x1f\xb1\x83\xbb\xe8\x1d\xf7\xe4\xc1\xc3\xea\xbdY\x12\x9b\xb2 \xd9l\xd2\xea\xf2>\xac\nh\x19\xa3\x9f\xe3\xd7;p\xad980u\x89\xfetO\xec\xb1\xa0*\xaaHQ\xde\xd3\x07\x87\xf2` \xa0B\x7f\x03\xa9\xabm]\xb5\x7f\xdb\x16\xf8\x86\x8bK\xd3\x1a+\x9fp\xef}hv\xcc{\xfa\x1e\xdan\xef\xe9Kl}\x08\xe4\xcc=}\x12\xdf\xa4\x0b\x9c'\xf8\x9e>\xd7\xcc\xbf\xd6\xec1\xd8\xa3TQ\x93\x12\x17\x97\xa2h\xdf]\xf3\xd73\xe6\xb8\xc2\xebA\xa7[\xc44K\xba\xe6\x9a\x84oMJ(\x836c\xc2\xbaU\xd9\xb7\xa8\xea\xa3U\x1c\xfa\xfc\x16\xb0\xe5\xb8\x80\xabL\x1d\xa4\n^f\xf2\xc5G\x01u\x94NIfY\xf2\xd8\x0e\xb7\x1d\xff.<\x1b\xdf1\xa3\xee\x8fO\x0c\xa1O\x99r\xcc\xc0\x9bYF\x85\x06M\xd9*\xa6\xb8f\x00\xff\x8d\x0f\x0b\x0c\xffS\x97\x15\xa0U\x81\xb1\xb9\xbb\x02\xab\xc7\xea\x0bp\xd7\xb8\xf1\xfb\x0c\xd4\xbb\xc1H\xde\x8f\xcfY\x7f\xbe\xdd~\x87\xcau{\xc5\xbd\xa87A\x9b\xde\xab\xf5\xda\xa5\xea\xa3\x063d\xab\x80\xf5\x92'\xb4t\x02\x0f\xac\xaa\xca\x92[\xe2H\x00B\x04\x1b\xca\xe2\n-\xe9\xb6\x04\xa9K\xeel\xce\x9b?\x00\xd3N|\xab!i\xe7\x97S\x93\x0cqyC*|i\xef\x04'G.\xc0\x83\x13J\x8c\x07c\"\x97$\x0f\x06\xc0\x93 \x90\xcd;=\xe9\xac\x8a\xba\x84\xf3Z[ir\x9f\x1e\xc3\xf9\xe9\xb7o_\xbd\xbc\xfc\xfe\xfc\xdb\xcb\x8b\xff{\xf6\xea\xf2\xc3\xdb\x7f\xbe}\xf7\xdfoG\xb4p\xf6\xfe\xd5\x0f\xef.^\x8dk\xe1\xc5\xbb\xef\xbf?\xbd\x18\xd5\xc6\xbb\xb3w\xe7\xcf\xdf86!sjF\xca\xc3]\xdf\xf7\xe9<]\xe5x\xf1}\xb9\xbahr\x89*\x01\xb0+\xd9O\xce-u0\x1d=7\x8bQ[\x0fH;\xa6\xcf\xe0\x07R\x19\xdd\"\x03\xd2\x8f\xcb38cV\x0e\xca\xdc\x9a\xb3\xb92\xfa\x14\xb0p|\x8e\xa7\x9c\nR\xe7\x06\x0fD\x9f\xfc\xce\xca\x9cL9Oj\xb2\xfbE\xfa\xe4\xa9\xeb @\xdf\x81\xf3q\xbe\xa5\x80\xe1\x03W\x93lH^\xbe\x96>\x05H\x0f\x02%H\xc9\xd1+\xd3\xa7\x90y'\xc9\x7fIH\xf2\x1dp\x08\x1ft\x08\x1dxOOO\x9f\x9c\xfc>}\xaa\xd2\x0d.+\xb4\xb1x\xea[\n\x10\x88\xab\x13\xb5O\x8d+\xc3~\xe0\xec\xd3\x08\x0e\x9d\x87\xaaeNS\x18BM!\xf3\xde_\xdf6\x05\x97\xfc\xd8\xba[\x89\x85\x9b!two\xfb$3\xd2\x9b\x11\x105\xceLYF}\xa2\xba5M\xd2-C\xd7\xa7y\xc7\xfb!K\xf5:7\x85\xca\x92$)k\xa8\x17\xe07\x13\xfeX\xe1\xdc\x1c*\xec\xd3g0>M\x9fz\xf8Os>Y\x9f:A+Qt\x94g\xb9\xf0\x18\x1c\xe6\x9ej\xf7\xa1\x11&\xa7\xe6\x84>\xa4\x86\xfd\xcb\xdf\xe3\xe2i\x07g\xb8\x8c\x9c\xdb\xd9[n\xc3e\xe4>2{\xebM\xb1\x8c\x9c\x1b\xd3M\x14\xaf\xf1\x0f\x11.\x13l\x03\xdd\xa3g\xa3m\x81\xe9y\x1ezl\xd0\xbf8\xb5\xc7\x1c\xfd\xad\xfb\x1e\x14W \xa9\xa9s\x98\xb2=\xca\xdc\x0ds\x97\x89\xediD\xfa\x1a\x8f\xd1\xdd0\xa0\xe8n\x88\xee\x06;Ew\x83\xedi\x88\xee\x06\x7f\xdb\"\xba\x1b\x0c\xe4\xbf$$\xf9\x0e8\x84\x0f:\x84\x0e|t7H\x8a\xee\x06N\xfe\xfa\xf6\xf7xb\x8a\xee\x86O{|\xa2\xbb\xe1\xb3\x18\x9c\xe8nPQ\x88p?Gw\x03\xb3\xd5.oH\x95\xe6\xab\xcb-\xb9u3,='\xb8\x9f}\xd6n\xa4\x9f\x06?^\xf6P '\xaev\x90\xef\xb4|)\xa14tn\xbe\x12@\x9a\x16\xd6$\xa15\x0c\x9egm\xac]\xf0\xfc\xac\x0f\xd5-\xa1m-\xb34a\xd5\x82\xe9\xcc\xb6\xcc\xb9\x8c\x9e\x8e/\x93,\xc5yu\x89\xaa\n%\xd7\x0f\x0d\xf0\xe9\xf4\xe0\xd2!\x07\x87\x93\x07/\xe0\xc9\x0f\x08{\x0d/<\x8fz\x9e\xb1\x9a\xee\xbf\xdfcN\xe7\x8e \xcc^m\xea\x93\x9d\xd5\xc4-\n\x1f9\x07\x9a\xc1\xa1\xe6\xefgt\xf0\xf4\xc2=I\x1ac\x99\xfb\xc7\xe5%\xc5\x13\xa7\x0b\x05\xea\x04N\xf1\xc4\x19<\xaf%\x85/EI\xa1\x13\x07\xc6O\x1e\x18;\x81\x1e\xfa\xc4\xd9\xde\xd1\xee+A.9s\x92\xbf\x9a\xac\xa9\xffj\x1a\xb5P\xc6-\x13\xa9I/\x97\x19R\xdc7\xecB\xa3'\x9a\x1f\xb6\xbdO\x8f\xe1\x9b7\xef^\xfc\xf3\xf2\xf4\xe5\xe5\xeb7\xcf\xbf\xf5\xc4u\x0fi\xd8\xda\xf3o\xce_\xbdu\x87\xab\xf7i\xd8\x98'\xf6\xbdO\xc3\xc6\xde\x9e\xbaB\xe0\xfb\xd4\x00\xe2\xa7\x13[\xf8\xd1\x9b\x13_\xdc\x8b\xd7\x19ZA\x9a/X\xfc]\xde\x0c'\x16~PP\x86S\x8b\xd7I9$\xc4\xf6\xc2>\x05\xe3(\xfb4z\x9d\x8cV\xc7\x1e\xc0\x8c}\x9a\x8c\xfd\xb0H\x03'olY\x9f&\xebC\xd0\x10\x8c9lqz\xc1\x8e;\xe7\xe9\x8a\xe7\x92P\x1bM\xc6\xf5\x18\x9aJ\xd6\xd7 h:\xcd\x01\x89\xf6\xdd\x8f_\xe3\xfa\xc4\xbf\xd6\xaf\x1a\xd4@lX5#?/+w\xce\xde\xa2R\x1c\x0b+\x0e\xa1D\xa2\x14\x91W[\xad\x17\xceM\x1a\xad\x8e(\xb1\xf3q/`\xdf\x0f\xd9\xed\xdb\xbe\xb8\xbf\x13j\x05\x05X@\x01R\xe0\x14\"\x0bN\xc1z|\x94\x02\x19\xa1<\xb6\xf5\xfc\xd2r\x17\xbf\x9a\x82\x85\x0b\xa3\x04L /\x9e\xfe\xe5/O\xfew\xc8\xab#\x05\x0d\xe3\x84\x0d\xec\xe6\xd7d\xfb\xf4/\x7f\xbd~\xf29\xb2?\xc6\";\xab\xe7Y\x9a\xfc\x13\xefz\x8e\xbdk\xbc+;\x17{\x86\xd9Qu\x89\xf9\x0d\x88?4\n\xc9\xb3\x15_\xe0m\x9fF\x0d\xca\x98\xc3|\xe3\x17\xde\x16))\xd2*x\x1d\xdf+\xef\x92k\x1ff\x03\xd5M\xa8\xa2 \xd4\xe3#\x84\x19\xbc.\x035x\xa0@a\x84Pa\x9c\xee\x1e!\\\x18#`\x18\xab\xb5\x1f\x8e\xf1p}}g\xdaz\xac\xae\x1e\xa3\xa9G\x0cD\x98\xa6\x83)t\xf4\xbds\x1d\x96\x8b\")\x90]?V\xe99\x8c\xe4\x97\xeeA0O\xae\xfc\xb8\x99\xef~Ay\x95\xe6\xf8\xd2\xefD\xe4w\x12\xf28\x01y+w\x7f\x95\xee\xbdCz\x8e\x00\xa7\x00\xdd\xe7\xbd\x1fz\x0b\x0b\x82\x04\x06\xa1\xbb_\x90\xe0 Lx\x10\xbe\xd7\xdd/\x9b!;\xdb\x1d\xeci\xe1\xbbY\x98z\x0d\x12\xb2\x9f2\xe34b\xd7\xba\x07\x1e\xc3v(O\xc6\xa6\x93k\xd0\x9c\x85\xc0\x1dZR\x07\x84\xdd8r\x08yk\xc2\xd8\x9a\x06\xd1\xbe\x117\xe4\xaf\xb9\x82v\x7f\x98\xe4\xed\xb5\xe7i\x9e0\xe8{\xb9!\xe5\xe3rq\x0d_\xcd\xfe\xfc\xb7xS\xadm\x93\xb1\xf3\x05n\xc5\x06\x9cW\x88\\\x1f\xd6\\|k\xa9\x80\xa9?\xe9\xb6\x00\xc09\xa5\x1f\xe2M\xb5}\xb2'\xcd;\x0c\xe9\xbd\x1d\x92\xe2M\xb5\xf6\x0e\x82\xfb\x86\x17\xcfJV\x91\x83\x8f\xd8\xc1]\xf4wqVrO\x87v\xea\x91SO\xfc\x93\x99\x1d\xd2\x96\xa7b\xcf9\xebu\xaa\x0f\x0e\xe5a\xcd\xff\x8d7\xd5:d\xcdN\xf5%\x8f\x9c\xd7\xa9>\xe9\x98\xb1:\xd5\xe7\xfc\xf2M\xdd3K\x9d\xf8s\xb7\xd5\x86\x1f\xa6g(~?i\xbaJs$\x0c\xa7\xe61CK\xa2\x81c!\x1cz\xaaA\xf4<\xf6\x0dN\xd6\x7fz*86\xd6\xad<\xcd\xe1\x02\xe7\x0b\\l\xd2\xbc:\x86jMy\x11\x85\xf5\xaf\xa8\xa8\xcb\xabc\x98\xd7\x954\x04\xcf_\xfe\xf3\xd8\xd0\xdc-39opQAZAE\x86\xbc\x98X\xa1\xb6\xe9\x1cW\x15.\xe0\xc3\xffq8\x10\xdase\xdb\x9e\xc5{\x7f\x199\xad!\xf7\x89\x1c\xef\xfd5\xd98\xf1\xde\xdfx\xef\xef>\xb9r\x02\xf1\xde_\x0d\xc5\x8bx\x04\xc5\x8bx:\x14/\xe2qz\xc7\xab \x85\x9f\xe7\x81\x93K\x0c\xbeOv/S\x9f\x15\x95\x81\xbcxX\xe0\n\xa5\x99BS\x9aL\x02\xad)`1\x01l[?}\xfd\xb2.\xb4\xc6\x9f\x83\xc2\xb2\xaf)N\xcf\xe1\xc3\xfb7'\x05.I]$\x18r\xb4\x11\x0b\xbd\xce\xd3\x9fk\x9c\xed\x80\xae\xfe*]\xa6\xc2\xd1Q\xf1\x02\xb1\xda\x06\xf9\xddZE\x8a\xb2\xf4\x17\xbc\xd0g\xf0o\x0bR\x91\x84d0\xaf\x97K\\\xc8A\x9b\xf1+\xc3x\xdf`S\x97\x8d6\x02\xa4\xb7\xa62\x8cJC\xe90\x92c889\x80d\x8d\n\x94T\xb8\xa0_\xc1\xec\xd4\x07%^mp\xde\xa8\xdc\x0f\xef\xdf\x1c\x96\xb0E\xd5Z\xdb\x1ac\xaa)\x0c\xa5\xff*mnYg\xd9\x0e~\xaeQF%\xb8\xe0\xf2\x15\x9fb\x92\xbc\x7f#\x0d6\xda\x94\xb1z \xd3\xa0\x18\xae\xd6U\xb5\xbd:\xe6\xff-\xaf\x8e\x81\x14\x90\x13\xf1\xeb1\x9b\x8d \xca\x81\xb0\xd5I%\xa2o\x10WPoEYf\xc3wqq\x83\x0b.\x9a\x0d\xda\x8a\xeb&\x19\xe7\x15ij33we\xcao\xbaCz\x07\xe3\x92d\x19\xb9-\x9f\x19\xc6\xf6K8]\xb6=\xa2\xd3B\xd6\x04l:\xcd\x8c\x99\xb2\xac7xa(\xf6\xf6%\xdd\x9c\xbe\xbb\xb88\x83o_]\xc8\xbb\x05?\xbc\x7f\xc3\xd7\xd8\x8e\xed\xc7z\x9b\xe7\xc7\xe1\xb2\xb8\xd8m\xf1O?\xfe\xa4}\x81\x99\xc65\x9b\x0f|\xbe\x89m\xe4\x98\x97t#\x8b:\xc1\x80r\xbe\x85\xe9\x81u_\xc2\xf3\xb6JI\xc9.SDTf\xdcdHPBu\x0b!\xd7\xf5\x16D^$\xccQi\x80=\x12[Y\x97\x0f\xef\xdf0\x1e\xd7\xe8\x86M\xc1Mg\x0d-\xf8\"B\xb2K\xf4\xdf7$]\x00\xcaM\xf1 \xce S\x1f\x05^\x92\x02\x1f\xcb\x06h\xbb\xa8J\xe7i\x96V;\xc81^\x94\xdc\x14\x02\xa6\xf2\x8a\x1b#\x80\x93\xe4T\xcd\xe6+\xcc^bkv\x06G\x1fJ,\x0b9Q)\xd1\xe9Iu\x16\x9f\x9f(G+S\xef\xe7\x05F\xd7T\x07\x89\x86g\x8f\xf43\xea-\xa9\xf03~\xe7\xea\xb2\xce\x13\xbe\xc2h?\x84\xeeJ\xea\xa2\xc0y\x95\xed:\xcez\x83\xbadw].\x97i\x92\xa2\xcc\xb2\x97\xcd\xeb%\x14\x98\xeeD\xf8\x98\xd5\xb6I+\xf9\xd1\xba\xc4\xbcza\xb3.\xb5M\xcd\xf1*\xcds\xdaYj\xd3\x1a6\x97\xdd\x16\xcf\xf8\xfcG\xdb\xb4\x9c%dc\xd2\xc6\xe7l\xa5\x96@\xaa5W\x14\xf9PK\xc1\x91\xa8\xd5\x887\xdbj'\x96\xf6#\xfd&\x98\xae\xd6\x15\xcc\x0dJ\x89u\x9a\x19\xe6\xe9f\x9ba\xba\xc9\xb2\x05\x03\xe5\x16'\xe92M\xa0\xc4\x1b\x94Wi\xa2\xc1\xb0\xb2\xb5:\xc2\x04r8\xab\xb9ZI\xdfSu4\xc7\x80D%\xca\xd6\xc0\xd9\xb3cd\x1d\xa39\xb9\xd1\xcfi!\x02\xb1\x14\x94\x97\xe7:pv\xf5<\xdf]\xb5\x875\x94\x03*\xe6iU\xd0E\xac\xe7P\xd9\x94\xdc#PF\xc4\xd4\x03\xa4\x1eZ\xaa\x9d\xd9F\xc39\x9c\xf7\xcd\xc2\x81\xf9\xd7Xu\x9a\xa9y&\x17N\x96\xce\x19\xdbb\x1f)\xa1\xac\xb7[R\xb0\x1d|\x8b\x92\xeb\x93:\xa7\xff\xa1\xfb6\x9f\x17\xea\x15$6z\xbdaC\x96PW\\\xb1I\xf5PR\xc5\x8a\x16\x8b\x94\xeb\nX\xe1\x1c\x17\xacT)?h\xc9\xd2T\xca\xf6(?|\x08\xd5\xdf{\xf5\x11\xd1\xc9\x0fO\x9e\xc1\x19\xe5\x9f\xea\x05\xd1\x15\xd4\xbd4\xe1\xc5\x1f\xffh\xd8&_\x13\x02KB\xe0k\x98\xcdf\xff\xae}\x8c2\x83\xf2\x9d\xfe\x01\x94\xeff\x94\x8d\xd7\x05\xd9\x1c- y\xa4\x7ft6\xd3\xef\x7f\xe9\x12\x8ehS\x1fXG.\xc8\xd1\x1fh[\x8f\xe0W\x83\x0e7\xb5\xf7\x9bYvO-\xb2\xfb\x07\xbaA\x93 \x0f\xbef\xb6!\xfd\xca\x04\x12J\xcb\xa3\xd7\x84\xcc\x92\x0c\x95\xa5E@\x9cE\xfa\x12\xefc\xe7E=\x0f\xbfi\x7f99\xa1\xd3\xda\x8d\xc7s\xb4\xc1\xd4tz\xce\xb9]\xe1\xea%w)\x9c\xe6e\x85\xf2\x04\x1f=\na^\xd9\x8e\xa9/\xc6Y\xf0'\xcb,8\xdbUk\x92\x1b\xe6\x01\xe7\xf15!G\xb3\xd9L\xbf\xb15s\xe0\xc8\xf8\x0c[Gl\x86\x84N\x10\xda\xc8)\x97\xf8\xcbW\xe7/\xde\x9f\x9e]\xbc{\xff\xc8\xe4\xabl\xd7\x9c\xf9\xc3\xfc\xd3Fi\xfe\xd9\"\xcdo\x89\xa1\xf6\x1e\x95\xe4\xb3\xaf\xe1\x0f\xdb\xf9\xec5!\xbf\xcef3\xfd<\xa4L\x1fS\x83\x9a\xbe\x81\xf2\xddv>{\x8bo-\xfc\xa7K\xf6\xc6\xbf}\x0dy\x9a\x19'\x9eQ\xc8\x86\xe5a~o\xd0AC3\x82S\xde\xb7\xd9\x87|\x83\x8ar\x8d\xb2\x0b\xc2\x95\xc7T\xddP\xfeF\x0f\xfel\xe4\xe4>\xd5-\xcc\xbe\x1d\xee\xac\xfc>y\xf5\x89@x\x10\xa9\xc9\xa6\xfe\xd4\xa1\xc2\xdclYo6\xa8\xd8=\x83o1\x0f\xb7}\xb3\xfb\x8e=\n?\xd7\xb8Hq)b\x9fT\xcc\xab\xf4\x06\xe7\x02\xd3%u\x16\xd9b\xde\xe3\xd3\xc5~\x1b\xe2\x19\x19x\xebt\xe1\xf0\xe9W_\x1d\xea\xa3wP\xd6I\x82\xcbrYgw\x19\xb6\xd3\x83\xb9\x8c\xc1,s(K\x8f \xb2\xfao,\xde\x1b'p\x96\x91s\xb0r\x0fv\x10V\xe5\x04\xber\x01]\x99\xc1VVq\x81]d\x8e\xa0*#\x98JS\x98^\xbcs\xf8\x92*\xd4\x04Ux\xf1\x0c\xb6\xcc\x15\xca\x0c\xb8\xabrq\xcd\xcb0_A\x9a\x97\x15F\x8b\xc3I\xa7\xd9\xdd\xce\x01\xeb\x0d\x04\xbew\x0dXy\x02'\xbe\xc0\xed\xa6\x00\xa7\xb9\x03\x9d\xf9c-\xa4o\xad\xf3?\xf5']\xbc\xa1\x9c\xdc\xea\xf1C\xbf\xbe\xbe\xa9\xab\xbd\xca\xfb\xae\x95\xf4]k\xe6\xf7k\xe0\x1b\x1a\xf4\xad\x8e\xef[\x07\xdf^\xf1\xdeaH\xef\x0d\xe1l\xaeA\xef\xf5\x19\x1b\x94\xcc\xb1\x82\xfc\x84+\xda\x8e\xbau\xea \xb8l\x08\x9c\x9c\xf6RIN=\x05\xe7\xde\x82}\x8fm\x1es\xdak%\xb9\xcc#Iv\x91\x83\x8f\xd8\xc1]\xf4\x8e{\xf2\xe0a3\xd0\xd9\xbd\x96\xb9S\x8f\x9cz\xe2_\x89\xdc\xa1\xe6\xf8T\xec9\x97\xac\x9e\xea\x83CyX\x8bw\x1bK\xd1\xfa\x95\xdd\x9e\xaa\x0f\xaeE\xb3\xa7\xfa\x9e\xbd\xe4\xf5T_\xf2(X=\xd5'\x1d\xcbMO\xf59\xbfb\xd1\xeee\xa1\xa7\xe1\xafg\xcc9Vi6T^\xa6\x8a\xe4\xceL\xff\xea\xa3U\x1c\x93d\x8bXw\x15\xabT\xc1\xcbL\xbe\xf8(\x90t\xd2\xe7\xc5,K\x1e:\xe0\xb6\xe3\xdf\xc5M\x9d\xdc{\xf1\xc7'\xc6+;\xdf\xb2[\xfa\x1960\xcb\xa8\xd0`\x8d\x0b\xcc\x90QLq\xcd\x00\xfe\x1b\x1f\x16\x18\xfe\xa7.+@\xab\x02csw\x05\x14\x8c\x14tr0\xcf\xa4\xf1\xfb\x0c3\xba\xc1(\x17\xbd\xe2\xac?\xdfn\xbfC\xe5\x1a\x16\x04s\x1c\x8e\x80\xd2\xd3\xa6K\xd3\xae\\}\xd4@Rl\x89\x1f/\xa9y\xdf\xf3k\x0b\xf8;\xb3\xc4\x91\xc0\x1bt\x11\xfdz\xdc\x97nK0\xdf\xaf8\xc1\x9c\xb7_\xe08\xe1\xc4\xb7\x1a\x92v~9-\xe4\xdd\x98\x977\xa4\xc2\x0f}\x0b%\xe3A\xa3\x96\xfa\xe4\xc1\x00x2\x01\xb2y\xa7'\x9dUQ\x97\xdc\x92\xc8$=\x86\xf3\xd3o\xdf\xbezy\xf9\xfd\xf9\xb7\x97\x17\xff\xf7\xec\x95c\xbeUK\xfb-\x9c\xbd\x7f\xf5\xc3\xbb\x8bW\xe3ZpL3\x93\xa4j\xe3\xdd\xd9\xbb\xf3\xe7\xb6\xac3IM\xf6\xd98y\xb8\xeb\xfb>\x9d\xb3\xfbH\xbf/W\x17\"\xce\xc2\x01\xc6TQ\xf1\xabJ\x9d[\xea@\x06zn\x16\x8f\x0b\x9e\xf5c\xfa\x8c%@\xb9\x96B0\x8e\xcb38cV\x0e\xca\xdc\x9a\xb3\xb92\xfa\x14\xb0p|\x8e\xa7\x9c\xbc\xee?\xf0;+s2\xa5\xd4\xa8\xc9\xee\x17\xe9\x93\xa7\xae\x83\x00}\x07\xce\xc7\xf9\x96\x02\x86\x0f\\M\xb2!y\xf9Z\xfa\x14 =\x08\x94 %G\xafL\x9fB\xe6\x9d$\xff%!\xc9w\xc0!|\xd0!t\xe0===}r\xf2\xfb\xf4\xc99\xffVR\x80@\\\x9d\xa8}\xf2NO\x964\x82C\xe7\xa1j\x99K\xf3\x05\xfe\xe8\xc7\x9a\xdf\xbc\xf7\xd7\xb7\xce\x19\xcd\x92\xeeCb\xe1f\x08Kon3\xdb\xe7;fC\xb4\xf7\xd2\xa7,\xe8\xe1R\xd4\x8c\x13\xd5\xadi\x92n\x19x;\xcd;\xde\x0f\x99a\xeb\xdc\x14*K\x92\xa4\xac!~\x96tz\x13\x7f\xacp\xeesY\xf9g0>M\x9fz\xf0B\x97\x9a\x05\x92:A\xab\x19\xbc\xcb\xb3\x9dH\xa2\xe018\xcc=\xd5\xeeC#LN\xc7\xc2\xe7\x0d\xfb\x97\xbf\xc7\xc5\xd3\x0e\xcep\x199\xb7\xb3\xb7\xdc\x86\xcb\xc8}d\xf6\xd6\x9bb\x1997\xa6\x9b(^\xe3\x1f\"\\&\xd8\x06\x19\xc6J2\x14\x98\x9e\xe7\xa1\xc7\x06\xfd\x8bS{\xcc\xd1\xdf\xa9a\xb5$\x1aT\xe6\x90:\x87)\xdb\xa3\xcc\xdd0w\x99\xd8\x9eF\xa4\xaf\xf1\x18\xdd\x0d\x03\x8a\xee\x86\xe8n\xb0St7\xd8\x9e\x86\xe8n\xf0\xb7-\xa2\xbb\xc1@\xfeKB\x92\xef\x80C\xf8\xa0C\xe8\xc0Gw\x83\xa4\xe8n\xe0\xe4\xafo\x7f\x8f'\xa6\xe8n\xf8\xb4\xc7'\xba\x1b>\x8b\xc1\x89\xee\x06\x15\x85\x08\xf7st7|\x82\x85\xd3\xdb\x8d\xf4\xd3\xe0\xc7\xcb\x1e\n\xe4\xc4\xd5\x0e\xf2\x9d\x96/%\x94\x86\xce\xcd\xb1E\xdc\xdb\x05\xcf\xcf\xfaP\xdd\x12\xda\xd62K\x13V\xc8\x9d\xcel\xcb\x9cc\xe5\xdd/y\xf9\xf6K\xc4j\xcb?4\xc0\xa7\xd3\x83K\x87\x1c\x1cN\x1e\xbc\x80'? \xec5\xbc\xf0<\xeay\xf2\x04\x01|\x81%EKM\x01\x8cA s\xe0\x92\xe4\xa5&\xdf\xd4/5\x05\xf6\x15F\xf4\x17\xdc\x92\xc7\xd4\xe4\xa9\xb0\x86$\x15\x985\xd1LM\xd6\xf435=$\xd3\xbe*xHnim\xde\xcd\xf6\xd3\xe0\x06\xc9n\xde\xad9&\xc7\xa9\xc95e\xce\xbb\xe1^\x8a\x9dw\"\x9d\x9a|\xd3\xeb\xd4dO\xbaSS\xf0D\xf6s3K\n\xfe\x9c\xaf\xcd\xd4%s\x8a\x9f\x9a&`\xd4\xd5\xa4\xea\x93c\x92\xa0\x9a\x1eH\xf7\x8781a\x9c\x90!\xec\xc8\xda\xd2\x08o\xb6\xa4\x11\xd2\x86\x91\x12\x87P/\xb7\xa4\x10\xaf\xdf\x90\xc2W\xa4\xa4\xd0\x89\x03\xe3'\x0f\x8c\x9d@\xa3\xbc\xe2\x92\x02\xbc\xe3\x92\xdcS3\xd54B~#\xe4\xe6\x9f\xdc\xa9&\x87\x94O5=D\xb7\x9d\x13.\xd5\xf4\x10,\xdb\xf3\x93\xf4\xe4\x9a\xa9\xea\xdd\xb0)\xb3UM~\xf9\xaejz\x08\xf1\xbbf\xcc\xaa\xe9!8\xb6\xe7\xdc\xaa\xe9!x\xf5\xc8\xdaU\xd3C0\xed\x98\xf7\xab\xa6\x87`\xd8/sXM\xee\xf9\xc4j\xba\xff~\x8f9\x9d;&0{\xb5\xa9OvV\x93\xe9\xe6J5\x05\x9a\xc1\xa1\xe6\xefgt\xf0\xf4\xc2=I\x1ac\x99\xfb\xc7\xe5%\xc5\x13\xa7\x0b\x05\xea\x04N\xf1\xc4\x19<\xaf%\x85/EI\xa1\x13\x07\xc6O\x1e\x18;\x81\x1e\xfa\xc4\xe9r\xeb\xa9\x9a\xb8\xe4\xccI\xfej\xb2\xa6\xfe\xabi\xd4B\x19\xb7L\xa4&u\xbacUM\xa3'\x9a\x1f\xb6\xbdO\xa1\xb7\xb4\xaa)\xf0\xeeV5\x05\xde\xe8\xaa&\xff{^\xd54\xea\xf6W5\x85\x1f\xbd9MuS\xac\x9a\xbc\xee\x8fUS0\x8e\xb2O\xa3\xd7\xc9hu\xec\x01\xcc\xd8\xa7\xc9\xd8\x0f\x8b4p\xf2\xc6\x96\xf5i\xb2>\x04\x0d\xc1\x98\xc3\x16'\xd7\x1bs\x03\x9aNs@\xc6{t\xd54\xa6O\x0ew\xeez\xb5\xc7\x9d\xb3\xc3\xfby\x9b\x9bx\xbd\xda2\xdd\xda\xab\xa2VG\x94\xd8\xf9\xb8\x17\xb0\xef\x87\xec\xf6m_\xdc\xdf \xb5\x82\x02,\xa0\x00)p\n\x91\x05\xa7`=>J\x81\x8cP\x1e\xdbz~y\x8dw\xa1\x0c\x07\x08\x17F \x98\x12^<\xfd\xcb_\x9e\xfc\xef\x90WG\n\x1a\xc6 \x1b\xd8\xc5\xa2\xc9\xf6\xe9_\xfez\xfd\xe4sd\x7f\x8cEvV\xcf\xb34\xf9'\xde\xf5\x1c{\xd7xWv\xee\x8d\x0c\xb3\xa3\xea\x12\xf3\x0b\xf6~h\x14\x92g+\xbe\xc0\xdb>\x8d\x1a\x941\x87\xf9\xc6/\xbc-RR\xa4U\xf0:\xbeW\xde%\xd7>\xcc\x06\xaa\x9bPE\x13\xa8\xc7G\x083x]\x06j\xf0@\x81\xc2\x08\xa1\xc28\xdd=B\xb80F\xc00Vk?\x1c\xe3\xe1\xfa\xfa\xce\xb4\xf5X]=FS\x8f\x18\x880M\x07S\xe8\xe8{\xe7:,\x17ER \xbb~\xac\xd2s\x18\xc9/\xdd\x83`\x9e\\\xf9q3\xdf\xfd\x82\xf2*\xcd\xf1\xa5\xdf\x89\xc8\xef$\xe4q\x02\xf2V\xee\xfe*\xdd{\x87\xf4\x1c\x01N\x01\xba\xcf{?\xf4\x16\x16\x04 \x0cBw\xbf \xc1A\x98\xf0 |\xaf\xbb_6Cv\xb6;\xd8\xd3\xc2w\xb30\xf5\x1a$d?e\xc6i\xc4\xaeu\x0f<\x86\xedP\x9e\x8cy\xb2\xe4\xe3\x04\x0f\xe4\xc4\xd5\xc1\xed\xeb;}Cw\xd1\x17,\x17\xf09K\x05\x1c\x9b\xa1(J\xb4wrfQU\xe1\xcd\x96e'V\x046i\x99a\xb4\x00\xc4\xf3\x10\xad\xed\xf1\x80\x03K\xf7}L'\xd7\xa09\x0b\x81;\xb4\xa4\x0e\x08\xbbq\xe4\x10\xf2\xd6\x84\xb15\x0d\xa2}#n\xc8_s\x05\xed\xfe0\xc9\xdbk\xcf\xd3\xac\xb9\xf8\xd6R\x01S\x7f\xd2m\x01\x80sJ?\xc4\x9bj\xfbdO\x9aw\x18\xd2{;$\xc5\x9bj\xed\x1d\x04\xf7\x0d/\x9e\x95\xac\"\x07\x1f\xb1\x83\xbb\xe8\xef\xe2\xac\xe4\x9e\x0e\xed\xd4#\xa7\x9e\xf8'3;\xa4-O\xc5\x9es\xd6\xebT\x1f\x1c\xca\xc3\x9a\xff\x1bo\xaau\xc8\x9a\x9d\xeaK\x1e9\xafS}\xd21cu\xaa\xcf\xf9\xe5\x9b\xbag\x96:\xf1\xe7n\xab\x0d?L\xcfP\xfc~\xd2t\x95\xe6H\x18N\xcdc\x86\x96D\x03\xc7B8\xf4T\x83\xe8y\xec\x1b\x9c\xac\xff\xf4Tpl\xac[y\x9a\xc3\x05\xce\x17\xb8\xd8\xa4yu\x0c\xd5\x9a\xf2\"\n\xeb_QQ\x97W\xc70\xaf+i\x08\x9e\xbf\xfc\xe7\xb1\xa1\xb9[fr\xde\xe0\xa2\x82\xb4\x82\x8a\x0cy1\xb1Bm\xd39\xae*\\\xc0\x87\xff\xe3p \xb4\xe7\xca\xb6=\x8b\xf7\xfe2rZC\xee\x139\xde\xfbk\xb2q\xe2\xbd\xbf\xf1\xde\xdf}r\xe5\x04\xe2\xbd\xbf\x1a\x8a\x17\xf1\x08\x8a\x17\xf1t(^\xc4\xe3\xf4\x8eWA\n?\xcf\x03'\x97\x18|\x9f\xec^\xa6>y\xea:\x08\xd0w\xe0\xec\x1ci)`\xf8\xc0\xd5$\x1b\x92\x97\xe7\xaaO\x01\xd2\x83@ Rr\xf4q\xf5)d\xdeI\xf2_\x12\x92|\x07\x1c\xc2\x07\x1dB\x07\xde\xd3o\xd6''/Z\x9f\x9c\x03\xa2\x92\x02\x04\xe2\xea\x92\xee\x93w\xbcX\xd2\x08\x0e\x9d\x87*^\xc4\xe3+\xb1p3$^\xc4\xf3\x19\x8cO\xbc\x88\xe7\xb3\x18\x9cx\x11\x8f\x8aB\x84\xfb9^\xc4\x13\xef\xfdUQt7\x08\x8a\xee\x86\x0eEw\x83\xd3;\xd1\xdd`{V\x92\xef\xe93`\xf8 \xcc\xb6\x88\xee\x06\x03\xf9/ I\xbe\x03\x0e\xe1\x83\x0e\xa1\x03\x1f\xdd\x0d\x92\xa2\xbb\x81\x93\xbf\xbe\xfd=\x9e\x98\xa2\xbb\xe1\xd3\x1e\x9f\xe8n\xf8,\x06'\xba\x1bT\x14\"\xdc\xcf\xd1\xdd\xf0 f\xb2\xc7{\x7f\xf5\xe4;-\xe3\xbd\xbf\xb6F\xe3\xbd\xbf>|A\xbc\xf7\xd7B\x81}\x85\x11\xfd\x05\xb7T<5y*\xac!I\x05fM\xdbS\x935\x99OM\x0f\xc9\xb4\xaf\n\x1e\x92[\x92\xa0w\xb3\xf1\xde_[Z\xa2\x9a|\x93\x15\xd5dOaTS\xf0D\xf6s3K\n\xfe\x9c\xaf\xcd\xd4\xa5x\xef\xaf\x03\x8d\xd1\xfd!NL\x18'd\x08;\xb2\xb64\xc2\x9b-i\x84\xb4a\xa4\xc4!\xd4\xcb-)\xc4\xeb7\xa4\xf0\x15))t\xe2\xc0\xf8\xc9\x03c'\xd0(\xaf\xb8\xa4\x00\xef\xb8$\xf7DW5\x8d\x90\xdf\x08\xb9\xf9\xa7\xca\xaa\xc9!\x81VM\x0f\xd1m\xe7\xf4U5=\x04\xcb\xf6\xfc$=\xb9\xe6\xfdz7l\xca\x13V\x93_\xf6\xb0\x9a\x1eB\xfc\xae\xf9\xc7jz\x08\x8e\xed\x19\xccjz\x08^=r\xa0\xd5\xf4\x10L;fQ\xab\xe9!\x18\xf6\xcb\xc3V\x93{v\xb6\x9a\xee\xbf\xdfcN\xe7\xf6\\f\x7f\x0d\x18\xef\xfde4\xc1D\xf07s\xbdpO\x92\xc6X\xe6\xfeqyI\xf1\xc4\xe9B\x81:\x81Sq\xba\x94\xa1U\x13\x97\x9c\xeb=\x0f]\xb2\xa6\xfe\xabi\xd4B\x19\xb7L\xa4&u*z\xab\xa6\xd1\x13\xcd\x0f\xdb\xde\xa7\xd0\xb2\xb9j\n,\xa6\xab\xa6\xc0\x12\xbbj\xf2/\xbc\xab\xa6Q\xe5x\xd5\x14~\xf4\xe64U\xe9^5y\x15\xf4US0\x8e\xb2O\xa3\xd7\xc9hu\xec\x01\xcc\xd8\xa7\xc9\xd8\x0f\x8b4p\xf2\xc6\x96\xf5i\xb2>\x04\x0d\xc1\x98\xc3\x16'\xd7\x12\xc6\x01M\xc7{\x7f{\x14\xef\xfd\x0d\xb3\x82\x02,\xa0\x00)p\n\x91\x05\xa7`=>J\x81\x8cP\x1e\xde\xb7dI\n\x16.\x8c\x120\x84\xde\x9e%i\x94\xa0a\x9c\xb0!\xfcV-I\x0f\xcb\xfe\x18\x8b\xec\x0en\xdd\x92\x14~\xfb\x96$_\xe0m\x9fF\x0d\xca\x98\xc3\xfc6\xfcv.I\x0f\xc0\xfb6\xde\xfb\xbbO\xc1\xeb2P\x83\x07\n\x14F\x08\x15\xc6\xe9\xee\x11\xc2\x851\x02\x86\xb1Z\xfb\xe1\x18\x0f\xd7\xd7w\xa6\xad\xc7\xea\xea1\x9az\xc4@\x84i:\x98BG\xdf;\xd7a\xb9(\x92\x02\xd9\xf5c5\xde\xfbk$o\xe5\xee\xaf\xd2\xbdwH\xcf\x11\xe0\x14\xa0\xfb\xbc\xf7CoaA\x90\xc0 t\xf7\x0b\x12\x1c\x84 \x0f\xc2\xf7\xba\xfbe3dg\xbb\x83=-|7\x0bS\xafAB\xf6Sf\x9cF\xecZ\xf7\xc0c\xd8\x0e\xe5\xc9\x98'K>N\xf0@N\\\x1d\xdc\xbe\xbe\xd3x\xef\xafQ\x93\xdb\xac\x0c\xa7\xd1t\x99M\xf1\xde_\xcbrp\xdc*\xbc &N=\x05\xe7\xde\x028\x03D\xdc\xc6S\x92\xcb\x04\x92d\x179\xf8\x88\x1d\xdcE\xef \xcep\x82a\xb8\x00.\\Li\xab\x01\xed8\x15\\'\x82\x17\x04\xc2c0\xdc`\x0d\xa1\x00\x86@\xa8B (\xc1\x1f~0\nh\xe0n6N\x05\x1e\xf0\x82 x\x03\x02\xeef\xc18\x07\xe3\x038\xb0t\xdf\xc7tr\x0d\x9a\xff^\xef\xfdu\xe1\xed\x1b\x9e\xfd\\B\x85\x9b\xeb\xa7\xe8\xa8\xf1\x1f\x8e\xf9\xe1\x892+@\xdf[\xfd=_bI\xa8R\x8b\x97)\xce\x16\xf2\xb2-\xbc\xa0&\xe6\xbc\x7f\xebW\xf7i3\xd7\xdf\xe2\x8a\xf1\xf6\xcd\x8e\xdf\xd3\xf4\x1e\x97[\x92\x97X^LV\xc8\xff\xcf\xba!\xebR\xf5\xdb\xf8\xaf\x1a\x17\xbb\x93aK\xf0\xfe\xec\x05lp\xb5&\x8b\x96!\xa9\xce:-\xf4\xf8{\x9eC\x9d\xe3\x8f[\x9c\xd0\x8e\xe1\xa2 E\xc3B\xb7[e\xb2\xc6\x9b\xc1\xf58\xda\xfdL\xbf\x83\xb1\x0f\xec/;\xc3BK\xc8B\xb1N\xcd\xb6\x8d\xc9F\x15\xd5\x81\xbcxX\xe0\n\xa5\x99B[\x9a\xcc\x02\xad9`1\x03l\xdb?}\xfd\xb2.\xb4\x06\xa0\x83\xd2\xb2\xaf+N\xcf\xe1\xc3\xfb7'\x05.I]$\x18r\xb4\x11\x8b\xbd\xce\xd3\x9fk\x9c\xed\x80j\x80*]\xa6\xc2\xd9Q\xf1\"\xb1\xda\x06\xf9\xfdZE\x8a\xb2\xf4\x17\xbc\xd0g\xf1o\x0bR\x91\x84d0\xaf\x97K\\\xc8A\x9b\xf1k\xc3x\xdf`S\x97\x8dF\x02\xa4\xb7\xa82\x8cJC\xf90\x92c889\x80d\x8d\n\x94T\xb8\xa0_\xc1\xec\xe4\x07%^mp\xde\xa8\xdd\x0f\xef\xdf\x1c\x96\xb0E\xd5Z\xdb\x1ac\xaa)\x0e\xa5\xff*mnYg\xd9\x0e~\xaeQF%\xb8\xe0\xf2\x15\x9fb\x92\xbc\x7f#\x8d6\xda\x94\xb1\x82 \xd3\xa0\x18\xae\xd6U\xb5\xbd:\xe6\xff-\xaf\x8e\x81\x14\x90\x13\xf1\xeb1\x9b\x8d \xca\x81\xb0\xd5I%\xa2o\x10WPoEif\xc3wqq\x83\x0b.\x9a\x0d\xda\x8a+'\x19\xe7\x15i\xea33\x97e\xcao\xbbCz'\xe3\x92d\x19\xb9-\x9f\x19\xc6\xf6K8]\xb6=\xa2\xd3B\xd6\x05l:\xcd\x0c\x9a\xb2\xac7xa(\xf8\xf6%\xdd\x9c\xbe\xbb\xb88\x83o_]\xc8\xfb\x05?\xbc\x7f\xc3\xd7\xd8\x8e\xed\xc9z\xbb\xe7\xc7\xe1\xb2\xb8\xd8m\xf1O?\xfe\xa4}\x81\x99\xc75\x9b\x0f|\xbe\x89m\xe4\x98\x97u#\x8b:\xc1\x80r\xbe\x85\xe9\xc1u_\xc2\xf3\xb6RI\xc9.TDTf\xdclHPBu\x0b!\xd7\xf5\x16Dn$\xccQi\x80>\x12[i\x97\x0f\xef\xdf0\x1e\xd7\xe8\x86M\xc1Mg\x0d-\xf8\"B\xb2K\xf4\xdf7$]\x00\xcaM1!\xce S\x1f\x05^\x92\x02\x1f\xcb\x06h\xbb\xa8J\xe7i\x96V;\xc81^\x94\xdc\x1c\x02\xa6\xf2\x8a\x1b#\x88\x93\xe4T\xcd\xe6+\xcc^bkv\x06G\x1fJ,\x8b9Q)\xd1\xe9Iu\x16\x9f\x9f(G+S\xef\xe7\x05F\xd7T\x07\x89\x86g\x8f\xf43\xea-\xa9\xf03~\xef\xea\xb2\xce\x13\xbe\xc2h?\x84\xeeJ\xea\xa2\xc0y\x95\xed:\x0e{\x83\xbad\xf7].\x97i\x92\xa2\xcc\xb2\x97\xcd\xeb%\x14\x98\xeeD\xf8\x98\xd5\xb7I+\xf9\xd1\xba\xc4\xbc\x82a\xb3.\xb5M\xcd\xf1*\xcds\xdaYj\xd7\x1a6\x97\xdd\x16\xcf\xf8\xfcG\xdb\xb4\x9c%dc\xd2\xc6\xe7l\xa5\x96@\xaa5W\x14\xf9PK\xc1\x91\xa8\xd7\x887\xdbj'\x96\xf6#\xfd&\xc8\xcc\xd1\xb9A)\xb1N3\xe3<\xddl3L7Y\xb6`\xa0\xdc\xe2$]\xa6 \x94x\x83\xf2*M48V\xb6VG\x98@\x0e\xe75W+\xe9{\xaa\x8e\xe6\x18\x90\xa8F\xd9\x1a8{v\x8c\xace4'7\xfa9-D \x96\x82\xf2\x02]\x07\xce\xae\x9e\xe7\xbb\xab\xf6\xc0\x86r@\xc5<\xad\n\xba\x88\xf5\x1c*\x9b\x92{\x04\xca\x88\x98z\x80\xd4CK\xb53\xdbh8\x87\xf3\xbeY80\xff\x1a\xabN35\xcf\xe4\xc2\xc9\xd29c[\xec#%\x94\xf5vK\n\xb6\x83oQr}R\xe7\xf4?t\xdf\xe6\xf3B\xbd\x82\xc4F\xaf7l\xc8\x12\xea\x8a+6\xa9\x1eJ\xaaX\xd1b\x91r]\x01+\x9c\xe3\x82\x95+\xe5\x07-Y\x9eJ\xd9\x1e\xe5\x87\x0f\xa1\xfa{\xaf>\":\xf9\xe1\xc938\xa3\xfcS\xbd \xba\x82\xba\x17'\xbc\xf8\xe3\x1f\x0d\xdb\xe4kB`I\x08|\x0d\xb3\xd9\xec\xdf\xb5\x8fQfP\xbe\xd3?\x80\xf2\xdd\x8c\xb2\xf1\xba \x9b\xa3%!\x8f\xf4\x8f\xcef\xfa\xfd/]\xc2\x11m\xea\x03\xeb\xc8\x059\xfa\x03m\xeb\x11\xfcj\xd0\xe1\xa6\xf6~3\xcb\xee\xa9Ev\xff@7h2\xe1\xc1\xd7\xcc6\xa4_\x99@Biy\xf4\x9a\x90Y\x92\xa1\xb2\xb4\x08\x88\xb3H_\xe2}\xec\xbc\xa8\xe7\xe17\xed/''tZ\xbb\xf1x\x8e6\x98\x9aN\xcf9\xb7+\\\xbd\xe4.\x85\xd3\xbc\xacP\x9e\xe0\xa3G!\xcc+\xdb1\xf5\xc58\x0b\xfed\x99\x05g\xbbjMr\xc3<\xe0<\xbe&\xe4h6\x9b\xe97\xb6f\x0e\x1c\x19\x9fa\xeb\x88\xcd\x90\xd0 B\x1b9\xe5\x12\x7f\xf9\xea\xfc\xc5\xfb\xd3\xb3\x8bw\xef\x1f\x99\xfc\x95\xed\x9a3\x7f\x98\x7f\xda(\xcd?[\xa4\xf9-1\xd4\xdf\xa3\x92|\xf65\xfca;\x9f\xbd&\xe4\xd7\xd9l\xa6\x9f\x87\x94\xe9cjP\xd37P\xbe\xdb\xcego\xf1\xad\x85\xfft\xc9\xde\xf8\xb7\xaf!O3\xe3\xc43\n\xd9\xb0<\xcc\xef\x0d:hhFp\xca\xfb6\xfb\x90oPQ\xaeQvA\xb8\xf2\x98\xaa\x1b\xca\xdf\xe8\xc1\x9f\x8d\x9c\xdc\xa7\xba\xc5\xd9\xb7\xc3\x9d\x95\xdf)\xaf>\x11\x08\x0f\"5\xd9\xd4\x9f:T\x98\x9b'\xcb:\xcbf\xec\x07j\xca\x1f\x02\xeaX\x02\xd4J\x105\x1e\x95\x0d\xf29\xa7\xfeX\xb3\xed\xe6\xd9N\x9e\xb9\xf7\x1c)\xcd\x11\x02\xd0\xb2\xc2*\x0f*'\xe6\xe39<9T\x7fJ\xd8\x0b\x92e\xe6 \x00,\xd6\xc8\xc1\x92\x90\xd9\x1c\x15\xac\xb3\x1fOv\xb3_\x0e\xb8\x14\xd9\xb9T\xd9\x9e\xfe\x98\xceX=\xa0m\xe8L\x85\x7f\x9c\xbf{\xab\xf9\x89\x8e4\xfd\xb9\xf5:qK\x9aP-\"\xcc@~\xb2\xadK,}\xcc\xab:C\x9a*\xe3\xfb\xcd\xd0W\x16\xb85\xdc\x8e\x01o\xe6x\xb1hM8\xeehW6\x874\xfe\xab\x8eQ\xc5\xdd\xebW\x7f\xa7\x02\xba\x12\xee\x94^\xa4A\x0e\x81z\x19\x08\xb5\xf5\xccp\x04C\xc95\xd5]\xadK`\x99fX\xbf\xdbH]w\x86\x8b\x92\xe4\xc6\xc5)|\x91\xcb\xb4(\xabK6\x8e_\xc3\x13}\xcb\xcd\x0b\x0cX\"\x9e\x7f\xea\xbd\xefQ2qu\xc0dy\xf0\x0c\x0eTk\xb3/\x86\x19\xef\xe5\xc1\xb1\xa9=\xd6\xbf\xb7hC\xdb\xfc\x0f\xde\x85\xff4\xbe@\xfb7x\xde\xb7\x93\xa7Kq\xe4\xec\xcf5>\x1b\xd2\x12nq\x96=\xbe\xce\xc9m\xce\xb4\xc9\x1a\x95\x80 \xa9\xcb\x8al\x0ckH\xf5K\x7f\xca\x1f\xf3#\xcc`\x1dp\x15\xd9a\x87N`\xcd\xf1\x12\xf1)\xad\xfe\xd8\x15[\x8cr\x9e\xafI\xb6\x10\x95\x81\x19\xe7|)\xa7y\xb3>\x80\xfb@\xd5M\xf1%\xa3\xfe\x0eca\xd6l\xeaGT{I\x11\xee9\xc7\xa4\xcf\xf8\xa7\x1f\x7fzdXHS\xcc\xb9\xfe\x07\xcd\xd3\x8e\x89\x8a6\xf9d\xf6\xf4\xc9\xd3\xf2\xc00\x85\xf8\x7f\xb7\xa8@\x1b\\\xe1.@\xfa1\xd3\xaf\xcf\x04\xce\xaa\xd3D\x9a?\x1b:\xf3\x0b\xfcs\x9d\x16x\xf1\x0c\xaa\xa2\xee\n]\xe3RP\xa1f*\xb4\xea}\xfd\x1c\x177iB\x1b;IH\xb9!\xe5\xc9\x1c\x95\xf8\xa4\x8dX\x9e\xdc<\x99\xe3\n=9\xc9\xc9\x02_\xa6\xf9\x92\xf0\xd7WmFnYo6\xa8\xd8=\x83oq\xf5\x96,\xf0i\xbe$\xf0s\x8d\x0b\x19y\x11\xae+\xa0M\xb0\x02`RW\x92-\xe6\x92>]\xf4\xde\xfeBv\x98\xc7\xfa:\x1c\x1f>\xfd\xea\xabC}\xc0\x10\xca:IpY.\xeb\xec.#\x85\xc2\xec\xb8\x1c\xc8\xa4K\xc6@\x9a9\x8c&\xdd\x1e\x97\xc6\"\xf2\xc6\x0f\x80\xf5#\xec\x89\xa7\x06\x9c\x83\x83\x9f\xaa\x9db\xc6*\xe6\x96\xba\xf0\xd3}\xc8X\xc9}\x9a\xcf\xf4G^\x03\"\xb4|*K\xcb\n\xe7\x0c\xe6\x12\xf4~\x8e\xab[Rh$jy\xd7aJi\xdfM\xd6(\xcf\xb1*\xd4\xec\xf0\xb2\xd5\xab\xb9!yz\xad\x03,Z\x1ag\xce\xe1;[&\xd5G\xdbuj\xd6\xbe\x03\x14\xdb\xc4\x0el2\xb4\xd3)1\xaf\xd7\x0b#\x94\x0e\xdb\x86Bd\x8f\xb6\xdb\xcb\xe0\x97\xc7L\xc7U\xea\x82~\xd6\xbe>\xaf\xd3lq\xd9\xdf\x0f=^_\x11\x17\xf5l\xf9\xfa\x02o\x8d_\xd7c:\x8dxN\xeb\x9c\xb7M\x06\xf1\x0c\xaa\x8cHZ\x87Y\xcf\x1e\xe3\xb8\xc3\x0dY\xd4\x196\x03\x14\x1cnM \xfa\xa8hW\xfb|i\x06\x95\xfa}3Y\xe3\xe4\xba\xac\xd5v~\xf3\xd4\xf7\x9c\xb3\xb4s\x88\xa4F\xf0\x0f\x9c\xd3Su\x95Tn\xa2]\x96\x8b\xebQ\x93\xafa\xe2\xf0<\xcd\x13V\x9e\x95\xb6\xfb\xb8\\\\\xc3W\xb3?\xff\xe9p\xef\x9d\x9e\x95\xd5\xe1q\x8f\x7f\xfa\x7f:\x86\\\x03 k\xc2)\xdaVU`\xb4\xbdfL8\xb4\x16y60#%E\x08\x9a\xa0\x08A\x8b\x10\xb4\x96\"\x04-B\xd0Z\x8a\x10\xb4*B\xd0\xd4\x14!h\x92\"\x04-B\xd0\"\x04\xcd\xd1J\x8a\x10\xb4\x86\"\x04\xadK\x11\x82\x16!h\n\x8a\x10\xb4\x08A\xb3 ?B\xd0\xb4\xefD\x08Z\x8f\"\x04-B\xd0\"\x04-B\xd0z\xe4\n\x07\x8a\x104F\x11\x82\xf6{\x81\xa0\x85\xc3\xbf\xca]\x9e\xa4\xb9(\xe5\xa3\x01\x7f\x9d\xf3g\x1a\xec\x17\xc3{\x89\x17u\x90/\xf1\x8e\xf8\xf5\x93E|\xf5\xba\xdf%\xde\xd6\x9c\x90\x0c\xa3\xbe+\xcc\x1a\xdd\x14]\xf7\x0cn\xf6\x05&)\xc66\x05\xc5\xd8f\x8cm\xb6\x14c\x9b1\xb6\xd9R\x8cmV1\xb6\xa9\xa6\x18\xdb\x94\x14c\x9b1\xb6\x19c\x9b\x8eVR\x8cm6\x14c\x9b]\x8a\xb1\xcd\x18\xdbTP\x8cm\xc6\xd8\xa6M\xf81\xb6\xa9}'\xc66{\x14c\x9b1\xb6\x19c\x9b1\xb6\xd9#\xd78S\x8cm2\x8a\xb1\xcd\x18\xdbl\xcb\xfc\xe3\xaa<\xc9P\x85\xcb\xca\x18\xe8|\xc3\x1ei\xee=;\xc7U\x13\xf3\xe4o\xb77\x07<.q\xa5\x8b}\xee7#\x1e\xfcd\xc3\xa0\xfcZ\x17\xdd\xa5PF\xdf\x8b\xe9\x0e\x1f\xd3\xd5\x91\xd5\x03\xc4\xd9,\x89\xfaV\x1f\x93\xe5\x1eF\x0bw\xe0\xc0!8D\x03\xc1\x85UN.^%I\xbe\x91Accj\xf7\x90\xe1\x8c1u\x84\x10\xecQB\x08\x88\x14\x9a;\x80\xaa\xb5s\xb4\x10\xa6\x8a\x18B`\xd4\xd0\xd8 \x15\xaes\xe4\x10\xc6G\x0f\xc1;\x82hlJD6\xbc\xa2\x880u$\x11<\xa3\x89\xe0\x1bQ4\xcf\xec&\xda\xe8\x1aU\x84\xa9#\x8b\xe0\x16]\x84)#\x8c0:\xca\x08a\x91F\x98*\xda\x08A\x11G\xf3r@%^\xd8\xa3\x8ep7\x91G\xb8\xc3\xe8#\xdcM\x04\x12<\xa3\x90\x10\x16\x89\xb4\xa9`\xb7h$L\x1b\x91\x04\x8f\xa8$\xf8G&! :\xe9\xa02\x1f9D(a\x8a(%\xd8\"\x95\xe0n\x9e9D,\xc1\xd3\x8a\xf3\x8e\\\x1a[cQM\x87\xe8%xp9a\x14\x13\xbc\"\x990u4\x13\x02#\x9a\xe6yU\xda\xa3\x9a\x10\x1e\xd9\xd4\xb6G\xbfh\x8bn\xc2d\x11Np\x0f\xd4\x81K\xa4\x13\xfc\xa2\x9d`s\xc1\x07F=\xc1\xa1]\x83\xffo\xa2\x08(\x04 \xd7=\x12\n\x0e\xbd\x0c\x88\x88BhT\x14\xcc\xa1\x1f\xa7\xe8(L\x1c!\x85\x89\xa2\xa4\xe06cFGK\xc1=b\n\x8eQSp\x8e\x9c\x82\xdb\x84\xf2\x8f\xa0\x82W\x14\x15L\x91T\x98*\x9a\n\xbe\x11U\x08\x8c\xaa\x82_d\x15\x1c\x06\xc1\xb2\xcc\xec\xef\xbbGZa\xc2h+\xb8\xb0fXe\xd3E^\xc1%\xfa\n#\"\xb0\xda\x06\xe9\x83\xa6(,L\x1d\x89\x05k4\x16B#\xb2\xda\xd6\xf8\xd9\xde\xec\xe6\xb0Gf\xc1\x1c\x9d\x85\xa0\x08\xad\xb6)c\xe4\x16B\xa3\xb7\xda\xd6\xb8\x85l\xf0'N\x17\xc5\x05\xa7H.\x04Ds\xc1/\xa2\x0b!Q]\xf0\x8e\xec\x82Y\x8b\x80%\xda\x06\x1e\x117\xd7(/\x84Dz\xc17\xda\x0b\xe6\x8e\x87D}\xb5\x8dub\xaa\xaeK\xc6-\xfak\\\x10\xf9\xca\x1c\x01\x86i\xa3\xc0`\x8b\x04\x839\x1a\xac}'4J\x0c\x13\xce]\x8fh1xE\x8cAk\xa0\xdc\x90*\xcdW\x97[r\xab\xab'\xee\xe4\xb31\xc5:9\xc9\xbb\xde/\xb7EJ\x8a\xb4\xb2\xc4\nG}\xad_\xbcW\x86Z\x95\xa5{\x95akI[\xb4Js6\x16\xfb\xcc\xf6\xbe\xd1>\xc8#\x00\x98yo:\x7f\x95\x9fSE\xaa9U\xa6\x10\xa9\xa5\x929\xfeX\xe9\xa3\xafVyZ}m\xbd\xae\xfe?\x9d\xffJr!\xc5L\xff)\xdc\xd5\xa8,\xb9\x7f\xfe\x0c\xad\xf0{\xfcs\x8d\xcbj\xc6\x7f\xd74\xf6s\x8d\x8b\x1dk\x866K%\x89aC\xca\n0s\xfa2o\xf1\x0cN\xab\x8e\xae\xdaV;Hu^\x9cj\x8d\x0b\xcc\xa2\x059\x81\x0d)\xb0\x8c\x0e\xa8\xf6\xe7\x8aTH\x13cv\x16\xa6\xe1\xda\x06Q\x8aZ\xeb\x08d\x9fgRd\xff\xc8\xeb\xcd\x9c\xfb$e\nU'_G\xd7\xdf\xae\xa0\x13R\xe7\xd5%kL\xa7\xc6nQ %\xae\x8e!\xadJ\x19\xab)\xa1\xce\xf9d^pw\xf4mZ\xf6\xe7\x875\xdf{\x1f\xee\xe1\x94\xfa=h\xa8I\x04\xef6\xf4\xcd\xee;\x86\xc9\x88y\xe0\x92b\x1ex\xcc\x03o)\xe6\x81\xc7<\xf0\x96&Eo\xf8 7\xbcP\x1b1\x0f|,B#\x00\x9d1 2\xc3\x1f\x95\x11\xf3\xc0\xc7\xa00|\x10\x18\x01\xe8\x8b\x98\x07\x1e\xf3\xc0c\x1e\xb8+zbR\xe4D\x08j\"\xe6\x81\xeb\x1e\xb3\xa2#<\x90\x11.\x19\xc4>\x88\x88\x98\x07\x1e\x92JmC<\xc4\xcd\x9f\xf1ou\xfeV\xe0\x9f\xeb\xb4\xc0\x8bg\xb0DY/l\xa9q\x93(]#\n!r\xfetr\x1c\xb8%Dg\x98(\xf3z\x83\x8b4\x91\x7fc\xab-A9\xed\x0f\xf7\x0b\xadq.\x05_\xe7\x8d+n`\xb5\x9e\xb2\xd62\\\x96\xad\x08\xb9\xf3\xaa.\xa9\xa8\xaf\xb1\xa7<\xfb\xcd\xdf\xb1p\x07Aq\x85x\xb3t\x93\xbaJ\x97=\xdb\x80:4\xb1r\xee\xa6\xed\xce`\x11v\xae\xb3A\xf8\x96;e\xba\x7f:]B\x86\x97\x95\xc4\x16\x08\xb0\x814\x0d\x99\x87\x99/\x10\xfe\x11*\xe7\xf9\x0e0J\xd6\x80\xb6\xdb\x07\x94b7\xe2\xdf\xbeo\x92e\xe7\x0d*Q6C TE\x8d\x81\xfe#\xcd\x17i\x82*\xdc\xc4\x9a\x84\x04\xd9\x83b\"u\x9bK\xf3$\xab\x17\x03\xc3\x0f\xf1\xaf4\xc1\xbe\xc1\x88\xb1\xd0q\xc7\x07MUw\x07A3P.\x1fN\xcb\xc1h\x0d\xba\xc0l\xe5\x02\x97\"\xc8\xcf\x96W\xbb\x1e\xe9\x92\x9b\x89\xd5\x94\xaerR\x0c<\xf8r5\xf6?\xc1%3v`\x87\xa5\xf3\x15\x03X\xe0\x1b\\\xf4^5\x0d\x9exz8pi\x071R`\xf5J\xe8\xb5C\xbf\x81s\x16\xdb$\xc5\x02\x17C\xbb\\}w\xfa\xa4\xd2\x98\xaa\xa4\xc9\xaf\xbcb\xc7o\xbc-MQ\x13%\x9eD\x965\xe9\x01\xc3\x00U\x80`\x95\xde\xe0\x1cx\xcbr\x12\x0c+\x9c\xa8\xda\xfcBJ\"\xd68\x91T=\x00\x86$\xd681\x90/\xea\xc5\xd8\x98:\xf4a\xf0\x9fM\x8d~\x01;\x02\x06\x02P0\xe6\x0e\xc4\x1a'\xa1\xc8\x18\xf0F\xc7\x18\x9b\x8a5Nb\x8d\x93P\x04\x0d\x84\xa1h`*$\x0d\x04\xa1i\xcc\xcb!\xd68\xf1C\xd7\x80'\xc2\x06\xc2P66\x15\xec\x86\xb4\x81i\xd16\xe0\x81\xb8\x01\x7f\xd4\x0d\x04 o\x1cTf\xacq\xc2\xc9\x1b\x95cl-\xd68\x895N\x064\x0dz\x07\xdcA(\xe0\x82\xe2\x01?$\x0f\xd8\xc2\xcb\x81\x88\x1eph\xd7\xa1b\xc5Ht\x0f\x04 \xd7\x1d\xe5\x03\x0e\xbd\x0c@\xfb@(\xe2\x07\xac\xc5\x17\xec\xc8\x1f\x98\x18\xfd\x03\x13!\x80\xc0m\xc6\x8cF\x02\x81;\x1a\x08\x1c\x11A\xe0\x8c\n\x02\xb7 \xe5\x8f\x0e\x02/\x84\x10\xc4\x1a'\xf6B \xc6\x9f\xad\xef\xbb\xa3\x88`B$\x11\xb8\xb0\x16k\x9cL\x8b2\x02+\xd2\x08B\xd1F\xda\xd6b\x8d\x93X\xe3DC\xde\x88%\xf0F-A\xacq\xa2\xa4\x10D\x93\xb6\xb1X\xe3DR\xacq\xa2\xa0X\xe3$\xd68Q>`\xf5\xb5\xc5\x1a'\xedO\xae\xc2\x8c5N4\x80\x8fX\xe5\xa4%\xc3l\x8aUN\x14\xaf\xc7*'\x1e8\x8fX\xe5$V9iiR\xfc\x86\x0fv\xc3\x0b\xb7\x11\xab\x9c\x8c\xc5h\x04\xe03&\xc1f\xf8\xe32b\x95\x9318\x0c\x1f\x0cF\x00\xfe\"V9\x89UNb\x95\x13W\xfc\xc4\xa4\xd8\x89\x10\xdcD\xacr\xa2{\xcc\x8a\x8f\xf0\xc0F\xb8\xd4\xc7\xf0\xc1D\xc4*'!\x85Bl\x98\x87X\xe5\xc4\x1d\xdb\xe0\x88kp\xc14\xb8\xe1\x19b\x95\x13\x08\xc4,x\xe0\x15b\x95\x93 \xf0\x08V,B(\x0eA\xbbo\xc6*'{\x14\xab\x9c\xc4*'\x03\x9a\xa2\xe2\x84+F\xc0\x1b\x1f\xe0\x85\x0d\x88UN\x021\x00\xb1\xca\x89$\x97*'\xebn\x9e5\x88L\xf4\x813\xbfMD\xaf\x8a\xda\xa3\xdc\x82\xb5\xdaB\xac\xab\x02v)\xc6\xba*w(\\{E\x90XWe\n)\xc6\xba*\xb1\xae\xca\xef\xba\xaeJN\x16\xb8\xa9\xa8\x92\x90|\x99\xae\xf8[\xaa\n*/\xd8\xefM\xc1\x14 \xff\xe2\x15QH\x01\xfc}a\x0c\xc8\xc1\xed\xd5K\xe1-|!;\xf4\x89\x96G\xd9\xa4y\xba\xa97\x97+T^n\x8b4\xf1\x03\x98l\x8b:O\xf3\xd5\xe55\xc6\xdb\xcb\x02'8\xf7\xad\xb1\"\xb0T\xa2!:\x15\xab4_\x0d\x1d\xe1\xf2;i^\xe1\xe2F\x85\xed\xd2~\xc4\x1cs\xe0\x83\xd4@\x9a$\xf6\xaf\x87k*\xab\xa2N\xaa\xbah1\x87br\xac\xde\x9f\xbd\x18\xb4\xc7&rD1E\x14\x936\x84w\x07\x01\xc0\x10\xfdWV\xa8\xaaK\xbd\xfe;g\xbf\xef\xe9?\xda\x06\xf0w\x95J\x8f\xbf&~\xf9d\x95\x1eFE\x96\xe2\xb2\xba,+R\xe0q\xc5\xa1\x948\xd1\xe9[\xac\xd2\x0d.+\xb4\xd9\x066\xba@\x15~L\x1b\x19<\x81\xb6\xdb\xcb5*\xd7\x81\xcd*\xc2\xd0\x0d {\xd2v\xcdj\x9cN;\xec\xab\xc5\xf94f\xfe\xc6Ast\x96G%\x1e\x95\xf8\xa7\xa5\xc4\x17)ms^\xd3Y\xd7\xb1c7\x9b:O\xab\xdd\xe5\x96\x90L\xaf\xcf_\xc8\xe7\xce\x08\xc9\x1a\xb5\xce\x01\x84\xe2\x17\xa0-@B\xd2\\\xad\xdb{M\x88\x07>Y\x15\xdfJ\xa3K\x0f1\xd9\x168'\x9b\xe0\xb9\x826\xf4\x84\x1a\xf8\xba\x0b\xde\xe6%N^\x90\xb4\x93\xf6\x02\x15\xb9\xc6\xb9\x80\xcbp\xee\xe5q\x1a\xe5\x0b\xf6\xa7$\xdd u\xa6*gW\x17\x0dz\xfb\xee\xe2\xd53\x16\xf8\xe1\xcf\x89\x08J\xca`>/q\"|\xcb\x0d\xb4\xaa\xeb`V6\xc8\xa3j\xea\x8f\x95\xe9*GT\xe1\x97\xcdq\x12\xe6;X\x91\x15a\xde\xdc\xfd\xa0L?#\x88.\x06)\x94\xfe\x1a9,\xfb\xabD\xf1\xf6\x9e\xb0Y\x06Do\x05\x85\xe7Q\xf4\x17\xe2\xe0\x91\x98L!(\xee`\x0f\xbc\x83\xfd\x97p\xea\x18\xf7\xaf\x05\xce\xf0\x8a\xd5Q=\xf9\xb5\xf9\xf7\xa5\xa8f\xfa\xdbI\x81oQ\xb10\x9cS:A\x88\x97\xfc\xf5\x94\xe4\x17\xa4B\xd9{\xfejo\xaf\xe3\x8e>\xd1(\xa0$)j\xae\x150J\xdapJc\xc1*\xb7A\xf5g\xc4\x93\x9f\xec~\xd8\x13d\x97\x1eb\xf6\xb6G\x84\xb1eky\xb7\xcc\xaf\xab\xfb\xc6I\xdbCN\x96~r\xb2\xf5\x96\x93\xd1\x0c\xe0d\xed-'\xb3I\xc0\xc9\xa9)\x17\xf3\x80\x93\xb7\x91`\x14\x043\x1f,\xa6\x02\xa7 \x83\xc1\xd0\x9e\x88U\x9b\xcc\x06N\xfe\xc6\x8398*\xa9U\x1e/\xa5\xb2\xe3\n\xa4\x0d\xdbsM\xd5N*e;\xf4\xd0\n\x8d\xbe<,\xe5\xbf\xe9\x00\xf05a1o\xa4\x0elF4\xcb\x84\x15\xb2\xa7\x1b;\x1f\x1a6\xaaI\xb4}\x08\x9d\x12\xcd\xec\x86\x82V\xcd\x03\x99\xd9|G\xeezl\xcaz\xc3\xa6w\x7fB\x1al\xed\xbd\xa5\xc6\x0c\x0f\xf56\x1dntk\xac\x8bhn\x0b\x8a\xe6\xf6=\x9b\xdb&\xc8\xd0\x9e%\xad\x9b\x8a{\x0f\xf6\x96b\xf3\xab\xbc^\x00*\"*;,\xfb\x9b\xc1HH\xd2\x1d\x1e\x1dN~\xdd\xb36\x0d\x17g\xb4\xab\xdc\xeb\xf8\x80:\xfb\xaf\xe5\xd0\x10\xcf\x0b\xfb?\xdb\x96_\xdc\xdb\x1b\xfa\x9c\xf6\xf6\xa1\x8di\xb3/;\x8bG\xd1\x9am\x9b\x9fp\x87\x8f\x9b\xfb\x80\xe2\xe6\x1e7\xf7\xe0\xcd\xbd\xe5|o'\xd6q\xbe\xf7`\x8f\xf3\xe6\xd7\xbb\xe6\xfc.\xcc\x92\xe1\xc5Q\x06+\x84\x14M\xb9\xa4\xbe\x1d\xd2\xb61p\x04\x98l\x8fnk_HY|\xa2\xd6\xc7\x1d\xdd\xae\xa5Y\x85\xf6=\xbe#p\xe5D,\xbb\x83@w\x1e\xb9\xa3)\xd7\xfcr\xe8Hq\xdf\xe7\xba\x838z\xa7\xeb\xcd\xaf\xb8\xd7 \x8a{]\xdc\xeb>\xa9\x1d\x83\x1e#\x16\x05\xba\xed\x07K\x8c\xfb\xc6\x7f\x8bW\x9e\x8b\xde\xca\xcdC6\xd5\x88\xc1g\xfb\x184\xfa\x85\x94\xce'\xba\x87\xa8\xc5\xd6%\xf7Ma\xd8V\xe0\xe4\xf2\xd3\xf4\x03yO\xa0\xee\x87\xd3\"\xea|AQ\xe7G\x9d\x7f\xbf:\x9f \xc0\xa0\xca\xcf\xd8\xef\x8d\xe2\xe6\x8f7I\xed\x9d\x16aC\x16u\x86\xd5\xaa\xbb\xf3\x1co\xf0\x0b\xd9\xbdOTiw\xc5\xd2\xa5>4\x8b\x0b\xa3;\xd8\xed|\x922\xea\x8b\xa5%\xe3b2/\xa5\x16kY\xa1\x8f\xfa\xb5fX\x0dsT\xe2\xcb\xad,\xa4m\x02/X\x97\x95\xfd\xd0\x02\xcc5\xb9-p\x82*:\x93/\xd6X\xc9@\xebB\\4Ok\x9ac\x15\xe0J\xc8 d$_\xe1\x82\xa5\xc4\xe9\xe2\xe8\"m\xf2\xe3\x89b\xba\x1e\x96\xc2\x13\x08\x1b\x9c\xacQ\x9e\x96\x1bUH}N\xf2\xba|X\x81\xa98\xf8\x84%\xd6\xb3T.q\x8e\xe6\x196Jl\x98X\x08VQ1\xfd\xc6\xd5\x89\x93M\"\xac\x10\xa1\xd1\xf6s\xa6\xa2\x05\x12-\x90\xfb\xb7@\x82v\xed\xd6\xe1\xe3\x17V\xec\xac\xa1\xc6\xe5\xd2\xdd\x9cO\xf3%\xd9\xbf\x9c\x9fm8iY\x8a\xb8Q\xd3D\x89\xb3\xe5\xe3=\xc0\x0fO\xd2j^\x16O\xf7\xec\x01\xed\xb7\xc5\xc3\x9f\xacY@D\xda\xed\x14g\xb9a[\x1a\xd7\xb2|LZ\x8fCeK\x07\xe1rN\xf2\xc5e\x0c\x95rr\xd9`c\xa8\xb4\xa1\x9e\xb8\xf6fS\x1f\x12\x85\xb3e'HZ\xaaAQ\xd0\xd1\x17q2\xc6\xc9\x18<\x19;\xdbNw\x16v\xfe\xdcW\x95\x05Npz\x83\x17\x06W\x97\xda\x88\xd4\xeeGV\xbbr\xd0Zke\xea\xb7\xd7\xe8\xec\x12\x14M\xcd{65M\xce\xae\x7f\x89\x90\xb8\xd9l>\x19n[*\x0b\xbaY\xd7/Z-$\x0df\x94$\xf5\xa6\xceXy\xeb\x8e\x92\xa2\xe60\xb2$\xf3(\x9a\xfdB\n\xe5\x13\xb5\x85M\x9b\xfc\x1d\xa8q\xb0\xadI\xbb\xcfL\xc7-Xt\x04\xd8\x12t,\xba\x02\xac\xdcq\xb2\xa6\xe68,{\x9b\xb9\x02n\xcd\xb8\x98-\x10b\xba\x18:\xef\x9a\x8e\x13d\xc2h[sL\xc5\xf13eD5!u`M\xb1\xd6\xadv\x866\xa6\xa6\xd2G\xad\x85\xd1\xbc\x12\x0d\x8c\xc1\xaf\xd1\xc0\x88\x06F\xfb\xc3=\x19\x18\xa4\xae\xca\n\xb1\"u\x97\xd6\x8c\xe2fe\xbfk\xdf\x1a&\x03\xc8C:\x83O\xec\x89\xc6li\xec7\xfb\x85\x94\xd2'jqX\x1c\\Av\x81\xb6M\x88F\xc1\x90\xa2Q0 ?\xa3\x00\x9cDhZ\xf6\x9d\xdc\xdc\x8e*Q4rT\xe7\x8fe\x04.\x7f$'\xb9\xaa#\x83\xc3 \xa4\xcc\n\xc8\xcb\xf4\x06\xf3Z\x9c(\xb9>\xe67\xb0\x95P2\xf1A\x89\xf2\xb4R\xad\x88d\x8d\x93k\xffr$\x86.[\x0d\xa3A{\x8a\x1b\x04\x07v\x92B\xac\xd1##(\x1aL\xd1`\xfa\xa4\x0c\xa62C\xe5\x1a\xbb\x18I\xe7\xfc\xc9\xc62bo\x02\xbe\xe1\xcar\xe9\xee\x80\x11\x0d}!\x05\xf0\x89\xdaB=\xc9t\xe9!\x96V;r[\\\xa4\xc4R\x07\xc5i\x91\x18\xae=_\xb2\x9bou\x8e\x1c\xebW\xec[0\x0cf\xc3+:\x8b\xba\x9bow\xc3\xecL4\xcd\xb5P\xe2v\xf1\xb4d\xd6G\x9a\xb0Z\xec\xd5Z\x80lX\xe9OV\xfa^\xfd6\xbb\xb19-\xd9U\xa1\xf2\x0e\xd4,a^F@[:2E\xca\xfe\xbd\x91\xf5\xc9\xcb\x8a]\xe8\xa9l\x8d\x19bJC\x80\x9b\x02\xdd\xe0\x1e\xb7\x98P\x81\x1b0O.\xee\x03B\xa2\xd7k\xcdM\xb7$a7\x81\xdaj\x7f\x889\xdc\x0f1\x8a\xbf\xb9\xb9\x04\xdb\xaa\xe3\xfb\x93a\x00\xd5kj\xb1\xf7\xe1z\x9d\x12\xed=\x03cR\xe7\xa3\xbcj\xc2t\xca0\xac\nC\x91SN\xbd\xaej*\xbe\xb4\\H[\xaa\xb9\xfb\x02\xb6\xa8,\xf9\xdc\xea^\xf7\xcf\x7f\xd74\xc6w\x90\xcar9\xc6i\xd5\xb9\xf7\x85\xddC\xa0\xbb\xdb\xbcZ\xe3\x02\xb3\xc9\x96\x13\xd8\xd0%!\xca\xbf\xab\xc0e\x9ar/\xe0#L\x83\x82\x11\xde;\xed \xa7)\xd3\xaf\xbb\xb7\xa1s\xfb\xad\xae\xbf]Awo<\xd0<~\x8bXy\xfccH\xab\x12\xc4=\xcb%\xd49\x9f\xcc\x0b~\xf5\xecmZ\x1a\x8a\xd5Z\x9c\x91b\xdf\xb3\x1a\xdcvO\xa4\xdc\x8a\xa3Y-(\x9a\xd5\xd1\xac\x0e6\xab[\xce\xcb\n\x15U\x9a\xaf.\xf7.b2\x994\x83\xb7z\x9d\x90\x97\xe47\x0f\x89\x82\xe1m_\x86\x8b]l\xcf\xc3\xfe\xf9\xde\x9b\xb17\xa0\x1a\xad,\xbb\xce/\xf6\xb8\x83\x8e\x8b\x1bC>\xd1n\xc7\xfb\xaf\xfc\xc4\x18\xef\xbf\xbaC\xe1\xda\xe7h\xbc\xffj\n)\xc6\xfb\xaf\xe2\xfdW\xbf\x8f\xfb\xaf\x86\x1e\xc0\x84\xee;yY\x97'7\xde\x89\x87\xd5^r\xdd\xc7\xb6=S\xee\xe1\x0b\xf9\xd0\xef(\xf1Py2\x15\xd9\x88l\xb6\xd0\x15\x8a\xf3\x05.6i^A+'\xf1\x0c\xf39)g\x11\xa7}\xc1*\x1e:\xcb0*\xe9q]j\x96+\xde\xfa\x8c\xce\xe7\x94\xe4W<\xdf\xac\x82-\xd9\nP\x1c\xfb`\xaa\xf2\x19I\x89\xd2\x03.\xa4J\x07\x15\x0bE\xe1\x05\x94\x98~\xa7\xc2\xd9\xae\xcdS\xab\xb7\xab\x02-\xee$\xd9r\x9e\x91\xe4\xda\xe4k0Dxmg'\x80\x0d\xfaxI\xad\x16C\x00\xd8\xe1\x08\xd4;bj\x9c\x1a\x00zXR\x97\xbeG\x1fy\x9f\xa1L\x7f\xa1\xe3\x913\xb3J\xe9\x87\x91\xf4\x96T\xf8\x19l\xea\xb2\xa2ZjU`\xc4o\x0dG9|e\xe8\xf8\n}Z\xdd^\xa1\x12\xb6\xb8\xe0\xdd\xf7\xef/)\x00\xff\\\xa3\x8c*\xeb\xc7O\x94\xaf\xf7V\xf17\xf43B\xcd5\xd7u3\xbb\x88n\x80lf\xb7\x03\xa1b\x07\xdf\xa4\x0b\x9c\xab\xae\xca\x83\xe9f'Z\xe1\xcb\xbc\xde\\2V\xeeg\xbc\xec\xbaN\x12\x1d5z,!\xcbF\x18|\xc62f\xcd5\xbdE\x1ar\x9a0\xae\xea\x0c1\xa3E:\xd7\xf9\xd1\x87\xb9\xde\xf5}f\x0c<_ay\x193\x9c\xc0\xaf\xe8\x06\x17\x94%\xc6\x82\xe9\xfbU\xba\xc1\xbf\xe9f\x99\x94\xfcB\xb4,\xe1\xa0\xce\xe7\x84\xdb(qq+<\xa2\x8b\x1elP\xb6\xc4\xa8Dy\xa2\xdc\x18\x1a\xe7\xe4\x9d\xed\x0c\xdbz~y\x8dw\x97\xb4)\xeb\xcc4]|a\xbd\xfa\xc2az\xbb \xbf\x89O\x08\xe9\x17\x986\x99\xf0\x13\xf1\xb6\x9egi\xc2Cb\xb4K\xad\x08u37an\x1b\xb5i\x0c\x0d \xad.q \xcf\xbfyqJ\xbf@[\xcf\xd1&\xcdW\xc7\xcc0~\xbeIs\xc2\xce\x8fJ\xebJ\xd8\xd1w6\x86h\xab\xb8\xc4Q\x92U\xe8\xe0\x16K\xeb\x8d\xcd\x0f\xbcGC\x9b\x87\x0e\x00\x93\x11\xdan\xb34\xe1[\xa9\xe8\xbdJ0h\x9e\xa4w&\x95\x1bR\xe1K\xfc\xb1\xc29\xfd|)JWh\xef\xe6\x94\xe4%\xaf\xa9\xcc\x1f#\xaf\xcd\xd5\xd0\xe2\xf4\xbcL\x8bR\x07D\x85\xe6\xaePX\xd4\xb4\x0b<\xf8o\xd2\x8f\xf4\xdb\xd0~\xbb\x8d\xf3\xf2R\x1f3x\xc9\x1bbFT\xb9\xc5I\xbaL\xb5\xd5I\xa0\xf9\xfe1S\xe5\x0c\x95\x98i\xa3\xa1\xc0\x1c\x05\xf3\x12\xff\\\xe3\xbc\x12o\x96\xc7\xb0-0\xdf@dX\xad\xe4\x9b\xcb\x82\xd0\xf5fhLLE\xbe\xea\xdb^\xc1\x02U\xc8\xc4\x84\xec4=0\xa7\x0b\xcc\x0f\xd5\xac\x91\x19\x9c\x15))\x98?\x87J@\xf6\x8e\x8a\xcd\xd0\xe0P\xa0\x94m\xc3\xe3\xd2\xffL\xc5\x95$x[q\x00j\xab\xbc\xe4A\"\xc7\xd5-)\xae\xcd\x16\xdc;\xba\xe7\x88\xf1;\xd6\x0ep\xc2\x8e;\xec;\xe6Kn\xba\xab9\xcd\xe1\x15mj\xf1\x03\xa9\xf0\xb1\x89\x89\x16\x8b@\xf9\xee\xb6\xd1)+\xa1\xf0)\xf6\xe9\x07\\\xa4\xcb\x1d\xfd\xd8\xabf0\xe9\xc4Z\xa5787Z\xe5\xfb\xdf\xad\x08\x152\xf7*\xf2\x02z\xf2e\xd7\xf8\xe4\xe1J\x96]&\xb1\xed \xd5-\x84\\\xd7\xdb&\x00>G\xa5\xe1\xe4HtQLI\x1f\xde\xbfa<\xae\xd1\x0d\x9b\x82\x9b\xce\x1aZ\xf0E\x84d\x97\xe8\xbfoH\xba\x00\x94\xeb'\x16\x08\x06\x99\xfa(\xf0\x92\x14\xf8X6@\xdbEU:O\x995\x9ec\xbc\x900\x16\xa6\xf2\x8a\x1b\xe3\x19\x98\xe4T\xcd\xe6\xec\xe0J\xf8\x9a\x9d\xc1\xd1\x87\x12Kw\x08\x95\x12\x9d\x9e\xcci\xc4\xe6'\xca\xd1\xca\xd4\xfby\x81Y:\x80lx\xf6H?\xa3x\\\x8b\x9dW\xfb\xa7\n\xa1\xbb\x18\xaa?\xaf\xb2]\x17\xe1\xacW\x97\x0ci\xc7\x80Nz`\xb3\xd8\xcb\xe6\xf5\x12\n\xcc\"\xca\xdc\x03\xc0\xc1A\xf4\xa3\xec\x80\xcb\x80\xc7r]j\x9bb0\xb6\x9c\xb9/\xd2\xca\xe0\xbd\xa0-\xcd\xf8\xfcG\xdb\xb4\x9c%dc\xd2\xc6\xe7l\xa5\x96\"\x1c\xc1\xc2\x9a\x03-\x05G\xa2\xc4(G\x1b\xf1\xa5\xfdH\xbf 2O\xcb\xdc\xa0\x948\xaa,\xad:\x19\xab\xfc\xb4\xd6\x9c\xefJ\xbcAy\x95&\x9a\xc0\xec\x1dX\xc6Cr\xb5\x92\xbe\x17qR\x915\xd31p\xf6\xec\x18\xb1\xb9\xa39\xb9\xd1\xcf\xe9\xc6\x99\xc4\xc7Q\xf1\x9c\x0bgW\xcf\xf3\xddU\xeb\x83D9\xa0b\x9eV\x05]\xc4z\x0e\x95M\xc9=\x02eDL=\xd0x\x8d\xa8v\xe6\x1e)\xc6\xe1\xbco\x16\x0e\xcc\xbf\xc6\xaa\xd3L\xcd3\xb9p\xb2t\xce\xd8\x16\xfbH e\xbd\xdd\x92\x82\xed\xe0[\x94\\\x9f\xd49\xfd\x0f\xdd\xb7\xf9\xbcP\xaf \xb1\xd1\xeb\x0d\x1b\xb2\x84\xba\xe2\x8aM\xaa\x87\x128\x02:\xe5\xba\x02V8\xa7g\x18\xc6|\xb5&\x0bY\x06[\xd9\x1e\xe5\x87\x0f\xa1\xfa{\xaf>\"\x96o\xfc\xe4\x19\x9cQ\xfe\xa9^\x10]A\x8d\xd0\xd3\x1c^\xfc\xf1\x8f\x86m\xf25!\xb0$\x04\xbe\x86\xd9l\xf6\xef\xda\xc7(3(\xdf\xe9\x1f@\xf9nF\xd9x]\x90\xcd\xd1\x92\x90G\xfaGg3\xfd\xfe\x97.\xe1\x886\xf5\x81u\xe4\x82\x1c\xfd\x81\xb6\xf5\x08~5\xe8pS{\xbf\x99e\xf7\xd4\"\xbb\x7f\xa0\x1b4\x99\xf0\xe0kf\x1b\xd2\xafL \xa1\xb4v^\xd4\xf3\xf0\x9b\xf6\x97\x93\x13:\xad\xddx\xa6\x065}\x03\xe5\xbb\xed|\xf6\x16\xdfZ\xf8O\x97\xec\x8d\x7f\xfb\x1a\xf243N<\xa3\x90\x0d\xcb\xc3\xfc\xde\xa0\x83\x86f\x04\xa7\xbco\xb3\x0f\xf9\x06\x15\xe5\x1ae\x17\x84+\x8f\xa9\xba\xa1\xfc\xed\x82\xe1I\x93\xebf\x9f\x92\x870\x98\xefZ\x93T\xee\xac<\xf6\xa1>\x11HHy]j\xec\xb9C\x85\xb9y\xb2\xac\xb3l\xc6~\xa0\xa6\xfc!\xa0\x8e%@\xad\x04:\xb7t\xfb&\x9fs\xea\x8f5\xdbn\x9e\xed\xe4\x99{\xcf\x91\xd2\x1c!D>\xaf\xeeC\xcc\xc7sxr\xa8\xfe\x94\xb0\x17$\xcb\xcc\x13\x00X\xac\x91\x83%!\xb39*Xg?\x9e\xecf\xbf\x1cp)\xb2s\xa9\xb2=\xfd1\x9d\xb1z@\xdb\xd0\x99\n\xff8\x7f\xf7V\xf3\x13\x1di\xfas\xebu\xe2\x964\xa1ZD\x98\x81\xfcd\xcb\x82\xf5\xe3\x9f~\xfc\xe9\x91a!M1\xe7\xfa\x1f4O;&*\xda\xe4\x93\xd9\xd3'OK=\x9cr\x7f\x17\xee\x9d\x91\x1b\xc4\x19\xcf0\xe9\x87\xa7\xf6<\x0c\xb1\xea\x02\xa3Xu\xa1\xfd\xc9U\x98\xffrU\x17\xd4p\x89Np7\xbc\xe0B7\xac\xfc\xfe\xec\xc5\xb0\x13\xb1\xf4B\x84OX\xdd\xbc.\x9eR\x88\x91\xee\x18\xe9\xd6>\x19#\xdd\x8cb\xa4{\x9fb\xa4;F\xbau\x14#\xdd1\xd2\xcd(F\xbac\xa4;F\xbac\xa4\x9bS\x8ct\x87\x04\x8bc\xa4;F\xba[\x8a\x91\xee}\x8a\x91\xee\x18\xe9\x8e\x91\xee\x18\xe9\x8e\x91\xee\x18\xe9\x8e\x91\xee\x7f\x85H\xb7\xa9\x06t\xac\xab\xebW\xb44\xd6\xd5\xbdC\xe1\xda+\xc2\xc6\xba\xbaSH1\xd6\xd5\x8duu\x7f\x9fuu\xb5% N~]\xa3r\xfd\x9b\xbe2\xc1^Y\x82\x06\x08\xc6\"Q@\xf2\xf6/\xb4)9\xca\xbdJ\x05\xbf\x972\x05A \xb3\xca\x88\xc1\xb0\x86\x1f\\\xfc\xf7\x93\xa3/\xdc\xb0\x17!\xc8\x0b3\xc2\"\x08_\xc1>\xa1i\xd0\x8a\xae\x98\x00[\x11\x88\xac\xd0\xc6\xa3\xddp\x15\xa3P\x15A\x98\nVoK\xdd^\xe5\x86\xa8\x08\xc1S\x98\xa2\x9cNh\x8a\x89\xb1\x14NH\x8a q\x14V\x14\xc5D\x18\x8a1\x08\no\xfc\xc4\x04\xe8\x89\x89\xb1\x13\x16\xe4\xc4\xe4\xb8\x89\xbbAML\x8e\x99pGL\x84\xe1%\x0cB\xb7\xa1%&\xc3J\xb8!%\x14\x8e\n\xbd~\x9d\x18%a\xc3H\x8cDH\x18\xf0\x11V\xf3\xc4\x8a\x8dp\xb3_\xa6\xc5E\xd8P\x11v\x9e\xc2\x10\x11R\xb3+\x1a\xb4\xe1!&DC\x8c\xc0B\xa8\x11L&$\xc4\xb48\x083\nb\n\x0c\x84S\x10\xdf\x82\x7fpF?\xe8\x83q\xfe\xc8\x07}[J\x97\xf8$\x98\x07\x1fa\xb9\xe2\x1d\xec2q\xc6:\x04 \x1dt\x11X\x1b\xcaa:\x8c\xc3x\x84\x83q\xbcG\xa2\x1b\x9c\xb0\x0dvd\x83\x0b\xae\xc1(l_L\x83+\xa2A\x83g\x98\x00\xcd\xe0\x81e\xf0G28\xe3\x18\x0c\xe1\x7f-;\x86w\\\xf1\x0b\xd3\xa0\x17\x8c\xcc+~ \xc2-HG\xb4\xa2=\x0djab\xcc\x82\x1e\xb1\x10\x8aW`\xfe\x11\x15\xe3j\xb4\xc2\xb4X\x05\xdd1\xd8\x86S\xd0\xa2\x14\xa6\xc5(\x84#\x144h\x84 ,\x82\x15w\xe0\x87:p\xc6\x1cx\"\x0e|\xf0\x06Z\xb4\x81\x9e\x1b\xd7\xa8\xaf\x1b\xd2\xc0\x13g\xe0\x812PvmZ\x84\x81\x0e_0\x02]\xa0\xf4\xceh\xb1\x05a\xc8\x02\x13\x8a`z\x0c\xc1\xf8\x99\xe4\x8c\x1fpE\x0f\xf4w@\x87<^\xaf$^\x91\xb6;\x08\x97H\x8a\xb7\xa5\x0b\x8a)\xbb1e\xb7\xa5\x98\xb2\x1bSv[\n 1i\x1b\x8b)\xbb\xfb4Q\xb8i\\\xc0) \xe44I\xd0i\xf2\xb0\x935\xf0t\x07\xa1\xa7\xbb\n>\xddA\xf8\xc9'\x00\x15\x1a\x822\xeap[\x10j\xc20\x94k \xca3\x145y0\xca\x1e\x8e\x1a\x1d\x90\x8a)\xbbV\xce\xc2\x02T\xca\xa6b\xcanH\xa8\xca\x16\xac\x9a&\\\xe5\x18\x83\xb1\x86\xac<\x82V\xd6|C\xcf\xc0UL\xd9\x8d)\xbb1e\xb7C\x01\xe1-\xf7\x00WL\xd9\x15\x14Svc\xcanL\xd9\xdd\xa7\xf0\x80\x98\xb2\xb9\x98\xb2\xab|\xc1)\x84\x16Sv\xa7\x0b\xa8\xc5\x94\xdd\xd1\xe1\xb6i\xe6\x9cs\xc8\xcd=\xe8\xe6\x96\xb2\xbbFeWE\x99\x12u\xe9\xa3\xbdz\xd3\xbd\x14&\xa9\x13\x0b^\x06\x18/:\xd7\xb0\xf6\x9aQ&v\xfd\xad\xf3H\xca*\\\xf74g\x9b\xd7U\x15\xb55{Q\xf6M2p\xe9\xd1\xc9\xde;\xbd\xde\xda:\xd9m\xe5%]& =\x12?\x83\x0f%\x7f\xf7\x18\x10|\xf7\xea\xff\x00\xce\x13B\x97\ng\xfa\x18\xd2\xbc\xac0Z\x8cM\xf4sI2\xb6%\xbc-1^\x15(\xaf\x9a\x847\xe6\xa4E,\xe3\x8d\xfd\x80\x8b\xdf\xe4\xbf\xb0!\xfd\xed\xb9|\xad\xa9{\xce\xdfY\x00\xca2\xfe\x83\x08b\x88\xb6\xc4\xa5\xe7\xe2\xff\x16\xcat\xb8\xa6\xd1/\xa4@>\xd1|\xb8Fh\xfb'\x93\x1e?\xcds\x8e\xf9\x13\x89j\x1a\xb1\xcaN\x1e=\x17\xa7\x18\x8cX\xd8\xda\x06\xed\x98e\x0bj\xf9\x0e\xba\xe7\xb5\xc2\xb5m\x05\xa1\x97\xad\xf8e\xf7\xbeL\x88a\xb6\xa2\x98\xad3\x18\x1cf18\xc4\xe7\xc1m\xbc\xc1CN\x10\x10\xab76\xa6v\xd8\x1aN\xfdS\xc7\xec\xc1\x1e\xb7\x87\x80\xd8\xbd\xb9\x03\xf2\xe2\x1c\x97\xf8=L\x15\xc3\x87\xc08\xbe\xb1AO\x84\xf3\xe8x>x\xc7\xf4\x8dM\xb5\x97\xeb\xb8\xc7\xf5a\xea\xd8>x\xc6\xf7\xc17\xc6o\x9e\xd9\x01x\xe7\x89c\xfd\xe0\x16\xef\x87)c\xfe0:\xee\x0fa\xb1\x7f\x98*\xfe\x0fA\x18\x00\xf3rp\xc5?\xdf \x16\x00\xee\x10\x0f\x00w\x83 \x00O\\\x00\x84a\x03l*\xd8\x0d\x1f\x00\xd3b\x04\xc0\x03'\x00\xfeX\x01\x08\xc0\x0b8\xa8L7T\xf4\x04\xb8\x01\xb0a\x07\xc0\xddN\x0c/\x07FLR\x18\xeb\xac\x08pTL\xe2\xa4\xf0wP\xc4$\x851\x0e \x1fgD\x80#\"&)\xc4$\x85\x98\xa4\x10\x93\x14\xaa\x98\xa4\xd0\x92\x0b\xbc=&)\xe8~\x8bI\n1I\xc1&\xfc\x98\xa4\xa0}'&)\xf4(&)\xc4$\x85\x98\xa4\x10\x93\x14z\xe4\n\x18\x8fI\n\x8cb\x92\xc2\xbfN\x92BW\x92#Q\xf4m\xd3m,{v\x8d\xbb\xdb\xa8)8,\xa2\xc1Hhg\x8e\x94\xe7 \x00\x1e\xa0\x14Q\xb8&t\xcc\xfcl\xab\x81C\x8a\xc5\x82\xa9F\xb1\x85\x83\xdf\xd1\x1d\x93\xe4\xec N\x96\xcb\x12W\xf4\x10\xd0g\x17:q\x82\x12W\xc3\x8c\x83\xbb\xa8\xad\xae\x14\"\xe7O'\xc7\x81\xc7Ct\x86\x892\xaf7\xb8H\x13\xf97\xb6\x90\x05\xc0\x99\xbb\x9c\xd68\x97\x82\xaf\xf3\xc6\xcb70\x88OYk\x19.\xcbV\x84\xdc/V\x97T\xd4\xd7\xd8S\x9e\xfd\xe6\xefX\xb8\x83\xe0\xbaB\xbcY\xbaI]\xa5\xcb\x9e\x95ai]\xcc\x9d{\x80\xbb3X\x04\xb1\xebl\x10\x19\xe6\xfe\x9e\xee\x9fN\x97\x90\xe1e%1\n\x02\xb4 \xadN\xe6\xbc\xe6\x0b\x84\x7f\x84\xcay\xbe\x03\x8c\x925\xa0\xed\xf6\x01\xa5\xd8E\x0e\xb4\xef\x9bd\xd9y\x83\x81~0\xeb\x1fU4@\xff\x91\xe6\x8b4A\x15n\xc2XB\x82\xecA1\x91\xba\xcd\xa5y\x92\xd5\x8b\x81M\x89\xf8W\x9a8\xe2`\xc4XT\xba\xe3\xde\xa6\xbbB\x07\x893P.\x1fN\xcb\xc1h\x0d\xba\xc0\xcc\xf0\x02\x97\x02?\xc0\x96W\xbb\x1e\xe9\x92\x9b\x89\xd5\x94\xaerR\x0c\x82\x03r5\xf6?\xc1%3v`\xe7\x84d\xb8\x83\x04V\x0c`\x81opQ\xba\xe6w\x89\xa7\x87\x03\x97v\x90'\x05V\xaf\x84^;\xf4\x1b8gaSR,p14\xf9\x95\xf7|\xfciRix\xa7\x7f\xa5eY\xe3E{\x99\x05\x7f\xd9\x9c\xfa\xf5\xcd\xee[\x91\x0e\xa4\xc9\x01\xe3\xb9_\xf3\x1d\xf3M\xf3\\\x1a\xd1Zo\x18\x0e\x95\x02\xf9\xeb\xa1xV\x93$\xd6|\xfd\x0b)\xa0\x98-\xc6\xc8\x06/\x89\xd9b\x93v/f\x8b\xe9\x1b\x8b\xd9b\x96\xc8~\xcc\x16\xb3\x03\xa9`*0\x15\x04\x02\xaa\x8c\x0d\xc6l\xb1\xf1 +\xf0\x04Z\x81/\xd8\xca<\xb3c\xb6X\x18\x00\x0b\xc2@X0\x15\x10\x0b\x82\xc0X\xe6\xe5\x10\xb3\xc5\xfc\xc0Y\xe0 \xd0\x820\x90\x96M\x05\xbb\x01\xb5`Z\xb0\x16x\x00\xb6\xc0\x1f\xb4\x05\x01\xc0-\x07\x95\x19\xb3\xc58y\x83\xba\x8c\xad\xfd.\xb2\xc5\xd8f\xc6\xf4\xd9\x1c\xe3\x1c\xb8O@s\x03\xa5\xa4\x98#\xc6(\xe6\x88\xb5?\xb9\n3\xe6\x88\x0dr\xc4\x1a\x97\xd6\x14\xc9b\xadw\xae\x9b56\xec\x9d\xda\xf5\xd6<\x14\x93\xcb\x06\xbf\xc6\xe42\xdb\x9cn\xc9\xd7O\"}!\xda\x06]}$\x93\xfaGbrYL.kiR\xbf\x87\x8f\xcf\xc3\xcb\xdf\x11\x93\xcb\xc6\xfa6\x02\xfc\x1a\x93\xf84\xfc\xfd\x191\xb9l\x8c\xff\xc2\xc7w\x11\xe0\xb7\x88\xc9e1\xb9,&\x97\xc5\xe4\xb2*&\x97\xb5\xe4\x92\x96\x14\x93\xcbt\xbf\xc5\xe4\xb2\x98\\f\x13~L.\xd3\xbe\x13\x93\xcbz\x14\x93\xcbbrYL.\x8b\xc9e=rM\xf4\x89\xc9e\x8cbr\xd9\xbfNrY\xf7\x88\x1b\x93\xcbbrYL.\x8b\xc9eaR\x8c\xc9e1\xb9\xec\xf7\x99\\\xb6\"7'7ON\x12\x92\x97UZ\xd5U\x83\x0dS\xa5\x93\xbd\xe8<\xc5\xf8\x92`\x80d\x8d\xd2\xfc\xb0\x84n3rT{)a\xdd\x16\xbe\x90\xfd\xf9Ds\xc1\xf6e\xd2%m\xe0A\x07\x87b\x92\xef\xf6?\x1c8\xd4\x1b\x87\x161\xd4<\x1b\x91@\x83_#\x12\xc8-\x92\x04\x11 \x14\x91@\xda'#\x12\x88QD\x02\xedSD\x02E$\x90\x8e\"\x12(\"\x81\x18E$PD\x02E$PD\x02q\x8aH\xa0\x100MD\x02E$PK\x11 \xb4O\x11 \x14\x91@\x11 \x14\x91@\x11 \x14\x91@\x11 \xf4\xaf\x80\x04r\x8cq2\xc0Py\xf2+\xff\xef%e\xd8P:\xf3\x8c=\xd5D9Q\x96u\x10GRA\xae\xc8\x0dl\xc8\xa2\xce\xb02\xda\xf9-\xb9\xe1\xcd\x88\x1f?\xd9P\xe7\x0d\xa9\xd2|u\xc9%\xb3op\xda\x0bf\xbc\xa4\xeb&\xa1g\xe4gpV\xe0%\xdd\x7f\xb9\xa7\xfd\x8a7z\x05i^V\x18-T\xea\xbc\xf7\xf9\xa6\xe2H\xc5\xac\x99F\xe4\x05\xce\xd8\x19\xbc\"\xe2\xf9\xfd\x96\x8cA6s\x88M\xb2\xc0j'\xeacpF\x07SOLr\xae\xcb\xa9\xc2? \x8a3\x0eY_\xe0-)\xd3\xea\xc1\x06\xa0\xff}\x87\x11\x10/L:\x04\x9b4\xbf\x14\xed\x9a\x06@\x1dx\x05S\xf0\x15l\x8cq\xb2\x05a\x81I*'\x1b\xd3\x91\xcc:K(\xa1\x0d\xa9sM/994\xe3\xe2\x10\xa4\xf4\x82\xa4\x9d2>P\x91k\x9c\x0b\x87\x1e\xef\x8eD\x04\xd1\x0d\x15\xe5\x829\x93\xef\xf8\xed\xbb\x8bW\xcf\x98\x0d\xca\x9f\x15\xc6\\\xca<\x8e\xa7y%\xb6\xb9\xc6\xcbk\xae\xac)\xf6@\x81a\xd0>V\xa6\xab\x1cUu\x81\xcb\x06\x02\xc3\xae\xc3'+\xc26\x18\xb5\x9d\xd8\x13\xd2\xf7i\x9en\xea\x8d\x9c\xbd\xcc\xb6Gl\xd8I\x892:\xaf1+\xc2b\\\xab\x946\xe8\xe3e\xb3f&S\x19\xda1\xfc\x1e}d|\xf3O1\xb6\x9fS\x91Q;\x82.\xccvA\x02\x1d\xc6\xa6G\xba\x13\xe4i\x9eV)\xca\x84?\x1d\x9e\xea\x84\xbe!y\xb5\xde\xf3\xc5W(\xcbv\x0f\xa6\xaa\xba_wPT\xec\xf1I\xd5\xd4\xcf5)j\x8d\n\x98j\xbc\xc5<\xdd\xe2\"\xa1\xb6\xe8\x8a;\xd2\x19\x12\xaf\xac\xd05f1\xb8f/\xe4`!]TT\x00\x0bY\xbcN7\xd0 \xc9\xcbt\x81\xe9\x92b\xe1\x0c\xa5\xe0\xd7\x05.\xe9\x8c\xbb\x9f\xae\xd3)\\\xc8\x0d\xf4\xff\xe2\x92u\xb4\xe4 \xc6\xce\x82\xdd\xa2R[\xd2N\xf8\x1a\xe54\xffj\xf6\x17\xa5\xf1\x81+ry\xbf\x9d\xe3's\xb2\x84\x1f\xb0\x18A\xb6\x86/\xd8\x00\xf3\xff\xcb\x8c\x07\x03\x0c\xa1+\x03\xfd\xb8\xd2\xbe\xe1\xc5l(\x89''\x7f\x1aJ\"|9\x0f\x96\xa2,+\xcf\xfe\x8c\xa4\xb1\xfc\xf1\xa4k*+ZQB!\xff6\xe5\xba\x8d\xe6E\x87\x1c\x9aq\x9b\xd2\xd1\xbc\x88\xe6\xc5\x90\xc6\x99\x17\xf0\xe0\xa71\xf8\xdcwy\xf5#q\x97\xbf\xdf\xceM\xbf\xcb\xab\x1f\xf2\xd8\xe5A\xec\x83)_\xa1\x8d\x92a|\xdc\xa9P\xa86\xe7\xbdm\\\xac2\x93\xad? x\xdc\x81k\x1b\xd6\x11M\x83\x1c\xda(P8[\x94.\x00U\xad\xbc\xcaz\xbeI\xcb\xb2\x93\x86\xd0%\xf9\xd8e\x82\xf2\x04g\xf7\xd4}\xfe1!\x05\xbe\x851\xffrN\xaa^\"\xc9\x1c%\xd7&\x07p\xe3\xae!E\xc9\xf3j:\x9bLZ\x8a\xefdXQAT\x92\xca\xda\xfa\xcbW\x0e\x92Z\xe0\xd2h=M\"(y9KGF\x05Npz\x83\xe1H9t\xf0\xa5YP\x8fZ\xf9\x88\xbf\x0cs\x9dZ:]r\xbc\xdb1\x9b\x89\xba\xef\xed\xb7l\xe6\xa0lB s6\xc8\x13\x0c\x0d\xfe\xb8\xc5\x8b\xb4\xc2\x8b\xcb\xc9wKmMd\xe36*\x82\x8f\x0d_\x1d;a\xba\xbe\xde\xaf\n\xbf\x93\xfd\xe9\xaf\x7f\x9bt\xf4\xe3\xb9\xa6C\x0e\xcd\xb8\xcd\x80x\xaeq\x10\x92\\&\xed\x92w;\xfa\xe8&\x92\xd6\x1a\xa7J\x93\xaa9|i\xb7\xcb\x87\xd9\xa0\xbd'xn\x1em\xae\xd5\xcc\xe9\xb2\xcb\xea\x82`\x0e\xd1\xde`\\\x89c\x80\x8e\xa3fsh\x0ek\x05\xa6\\N\xcd^c%\xf5\x18T\x1c&\x8d\xa2\xa3f\xe2\xd4\x9cq\xf9\xf0e\xc1\xce(\x15C\xe1\x10\xf61:\xb37X\xa56::\xeb\x9e\x8c\xafIm\xcf\x8d\x98\xf7=\x1bt\x83+n\x8dmxj\x02j\x83d\x9af\xf6v\x86\xaf\x9e\xcc\xe0{\x8cr\xce\x1d\x92\xcb\x88e\xd7J\x08\xb6\xba\xa9\x8e@iG\x9e|\xf5\x15;A\x1e\xb7\\\xb0?\xf3c\xe5\xad\xbc+K\xd3\x98\xd4\x13\xa3\xb6)\xf3\xd0\xb0\x10=\x8f\x8d;\xa5\xc1\x8a\xc4W\x11\x94\x7f\x7f\xf6b\xd0\x9e,\x99\xdf~=f\xc0\xf6(f\xc0\xda\xa6dK1\x036f\xc0\xaa)f\xc02\x8a\x19\xb0\xfb\x143`c\x06\xac\x8eb\x06l\xcc\x80e\x143`c\x06l\xcc\x80\x8d\x19\xb0\x9cb\x06lH\x12i\xcc\x80\x8d\x19\xb0-\xc5\x0c\xd8}\x8a\x19\xb01\x036f\xc0\xc6\x0c\xd8\x98\x01\x1b3`c\x06\xec\xbfB\x06\xac\xa9\x16~'\xdd\xb5\xd3\x8e\xe9,\xddy\xa3\x01@\xf0a\xeb\xe4\xd8TD\\j\xbe$\xc5\xb1,\xbc\xcek\xa4\xf7\x1a;\xe0\x01\xea\x83\xe3\xbex\x0fXb\x0e\xfd\x81\xda\xe4\x07\"Hy\xd0Uu#K\xf6\xbbf\x05\x8b\xb8\xbaxV\x99\n,\x1f\xe9g\x037\x7fe\x8eL 9\xac\xd2\x1b\x9cCY\xa1\xaan\xfc7\xbd\x84\xe0\xa6\xa5/d\x7f>\xd1\x84\xe0\x81T\xbaT=@\xf0/\xd5\xc0\xbd\xbc|^\x86+\xec\x07RN\x17\xbd\xcc2\x1e\xf6\xa3\x7f%},\x86zc\x16\xda\xc6\x02\xa9\xd2\xe3\xb1,\x88,\xab09\xd9D\xca\xa9\xb2DU\xdb\xa7\xac\xe0,p\xf4\xd0\xb5\xe4\x1bg\xb54\xa7v\xb7\x19\xcel\x8c\xbcc\xae\x96\xf6Pe\x8b\xbcr\xf2\x8d\xbf\xda\xba\x81\xaa\xb5s\x14\x96\xd3$\xb1XN\xde\x11YK{,^\xeb\x11\x97\xe542:\xcb\xc9/Fk\xeb\x07\x8f\x1eyEj9\xf9\xc6k-\xcdQ+\xc8'j\xcb\xc9+vk\x9b\xefMd\xd75\x82\xcb\xc9;\x8ek[\x9f\xa5K4\x97\xd3d1]\xd9\xdc\x98\xc8.\xa7\x80\xf8.\xa7I\xa2\xbc\x9c\xfcc\xbd\xb6e\"\x0d(\xfb\x8a\xba\x93\xb8/\xa7\xbb\x8a\xfer\xba\x83\x180'\x9fH0'\xe7x\xb0m)u\xa2\xc5\x8eQaN\x13\xc6\x869\xb9F\x889)\x0ej\xf6}\xc17ZlSk<\x96\xec\x103\xe64:r\xcc\xc9\x18?\xe6\xe4l\xec9\xc4\x929\xf9Y\x85\xdeqe\xdb,\x9d\x93\x1b\xec\x10]\xe6\xe4\xce\xeb\x84\x91fN\xee\xf1fN\x93F\x9d9\x85\xc4\x9em\xb3\xad\xb4G\xa09\x85\xc4\xa1\xcd\xcd\xd1\xaf\xda\xa2\xd1\x9c\xa6\x89Isr\x0c\xaer\xb2\xc6\xa79yD\xa99\x19\x83'\x8cB\"\xd6\x9c\xecm\x1b\xfc\xb7\x93\xc5\xb09\x85\x08\xdb=\x9e\xcd\xc9\xde\xdf\x80\xd86\xa7\xa0\x087'C\x04\x8e\x91=\xda\xcdi\xca\x987\xa7)\"\xdf\x9c\x9c\xe6\xd1\xe8(8'\xc7X8'\x97\x88x\xf3\xa4C\\\x9c\x93\xd3`\xf9\xc7\xc89\xb9G\xca9i\xe3\xe5\x9c&\x89\x9as\xf2\x8a\x9ds\n\x89\xa0s\xf2\x88\xa3s\xb2\x0f\x8au)\xba\xb4\xe1\x1e_\xe74U\x94\x9d\x93\x03\x83\xc6\xb58]\xdc\x9d\x935\xfa\xce)$\x06ohND\xe7\x8d\x91xN!\xf1xCs\x95\xf4\xfci\xa3\xf2\x9c\x82b\xf3\x86\xf6\xb8\xcf\xc1\xe6\x86\xb1\xc7\xe99\x19\xa2\xf5\x9c\xfcc\xf6\x86\xc6\x8c\xd1|\xf9H@L\xdf\xd0\x1e\xb7\xc9\x8d\xde\xd0\xe9\xe2\xfb\x9c\xecQ~N\xbe\xb1~N\x1e\x11\x7fN\xdeq\xff\xdek\x8e\xd1\x7fNF}\x03\x96\xa8,'\xd7\xd8\xac+\x1e@\xb4\xea\x8b\n\x10\xaf\xf9`\x038\x19E\x10\x82\x1304\xd7\x89\xc3\xbb/)7\xcc\x80e\xb9\xb0\\Y\x03r\x80\xd3\x84\xf8\x01\xd1\xa0 E\xc0\xc9\x80%0\xbc\x15\x8a2\xe04\xdd\xac\xf6@\x1c\x88\x86\x9dq\x07\x9ct6\x8a\xab\x0fE\x06J\xf9m\xcak\xdcq\xa04?q7+\xfe\x88\x93\x9a\x1e\xfbSs\x92e\x93$\xbfEe\x895\x9e0\x1e\x9f\xd7\x19\xcc=\xe6\xf9\xa3\xfd2\xa3M\x89\xa1^\x98\x7fH\x0e^4\x9c\xeb\n\x19\x00\x03,\x9c\xbd\x7fw\xf6\xee\xfc\xf9\x9b\xcb\xf3\x8b\xe7\x17\x1f\xce/?\xbc=?{\xf5\xe2\xf4\xf5\xe9\xab\x97\x1eo\xbd|u\xf6\xee\xfc\xf4\xe2\xf2\xec\xd5\xfb\xd3w>/\xfe\xf0\xee\xe2\xf4\xed\xb7\xfe\xef\x9d=??\xf7\xe2\xf0\xfd\xab\x7f\xbczq\xe1\xf5\xca\xeb\xe7\xa7o\xb4/\xc8\xdcoo\x01.\xd3\x1ce\x97\xbc\xc0,\x0f\\8M\x12\xc3\x0c\xdfoQf\xb9\xb3_xuZY\xbb\xcd\xe2\xcdl@\x07\xf0\xdfkl\xb0A\x18*\x87+\xd5f\xae\xde\xa4\x08V\xef\xcf^\x1c\x0b\xaf\xbf\xac;\x92\x13\x03\x80\x80lk^F\xb7\xce\xab43\xc7\x0b\xe5\x97\x0e\xcbAM \xba\xed\xe0|\x81\x95e=\xc0\x0d\xcc\xe0\x02e\xd8\xe1\xf22\x99\xa0:\x0c\x0cG\xb7iX\x8e\\{\xc1\xfe\xae\xa9\x07\xe4T\x16\x11\x00\xcdKj\xfd\xdd\x0d\xa3\x16\xc7z\xef\xdb\xfb}\x11?w\xfacl\xcd\xde\xd7\x9c\xdcM7e\xbb\xfb]\xc8\x89\xdfh\xe4\xe4\x92\x1a\xf4\xacT\xc9\xdd\xf0j\x19\x92}\x06\x94\x9d\xe2\xc5UpE\x8c\x8d9w\x9d\x95\xc6\xab.\xabt3E\"\xe1\x02U\xf81m\xcbESv>-{\xca\xfeM\x96\x9dm\xd5X\xb9\xaf)\xa8v\x89\xf3\xc5\x83\xf4a\xf8}\xd9\x11\x9c/xg\xa8\x91(\x1e\xd2v\x82\x15\xf94W\xed\xfa\xb4pb\xd6\xfa]N\x02\x07\xa7\x1a^\x8eM\xb9\xaf4\xcfJ^V\xe6\xcd^\x90i\xab|9\xd7\xf9\n\xad\xf45\x10dof6\x8b\x94\x95,\xed\xd4\x00\xae\xac HQ\x93\xb0\xacP\xf10\xba\xc60#\xf6x\x93\xfdd\x7fa\xc5\x97\xe8\x1f+Qv\xd7\xb8\x19:I\xe1\xa1t\xd5\xe0\xf3{\xaa\x8a,\xa5\xb5\xe6\xb0olp\x85\x16\xa8B#:!\xaa\x88\x19\x8f\x84\xfc#|\xb9\xecz'B\xf1\x0b\xaa*\x94\xac\xc5\xed\x0e.\xf6\xb2~\xcdT,)(!\x9b\x0d3Q\x85\x90\xa5\x9f\xb0\xcb\x0b?\x86.I\x9d\xeb\xbd\x19k\\\x98\xfct\x0c$\xf2\xec\xe4dA\x12zR/7\xa4\x9c\xe5\xb8\xba%\xc5\xf5\xc9\xcdW\xb3?\xff\xed\x84\x97\xc7g\xc8\xf4\xff%\xb9\x7f\xfc'e\x83\\\x92\xe1#\xd1\x9b&\x87\xea\xe2\xfb\x87\xe6Qd\xffi\xb7q\xfa\x7f\x06\xf0h\xe5\xfb\x12U\xff\xa0\xbc\x0b&\xd8,\x83rM\x8a\xaa\xf9\x93K\x1f\xf8\x8fXQ\xd1\x8b\xd3\xfdtBr!\xc7@\x96\xcd\x1d\xf4\x80\xf6l\x9eV\xba\x00DS\xbb\xd1\xdc\x19Sq@\x97\xde\xfc\xe5+Ko\xba5$\xf9N=,|\x98\x96\xedC\xca\xb6\x96(\xcd\xf0\xe2\xb2\xc0\xa8$\xf9\x9d\x8e\x8d\xb57=Vz\xfe#\xf1\xa7\xdb\xf5\xae\xdf;\xfe\x86\xa2U\x97]\xed\xac)\x0e\xd9\xf9RB\n,\x8c\x8f\x0d\xa6\xe7 65\x10\xac\xc8\x0d.r\x94'j\xdd\xa9\xdf\x05z\x9c\xb4\xe9/\xc3\x9b?\xa8\xf1\x81K:\x92\xed\x97\xda\xc7\x87\xcdn\xd1J\x98_\xfb#\xd6\xff`\xf3\xe0\xe0\xda\x9f\xe6\xcf\":\xa6J\x8b\xe1d4\x88\xcd\x86p\x8e?V\x97\xd7X\xa3\xb7\xac\x93\xca\x8a\x95\xebuU[\x7fYr!\x97<\xfd\xa7\x00\xa2\xa2\xb2\xe4{\xe2\x19Z\xe1\xf7|\x08f\xfcwMc<}\x8b\x1d7\xf1\xc7\x8a\n\x12\xc3\x86\x94\x15`\x06\xe3d\x08\xd0\x19\x9cV\x1d\x7f\xfe\xb6\xda\xe9]\xb0\x15\xdd\x00\x99/7'\xb0\xa1\x93O\xa0\x7fU\xf6\x043)G\n\xd3\x90\xd0c\xb34\xb8E\xcb6v\xfa\x8f\xf6\xbc-\x8bSu\xb0\xad\xba\xfev\x05\xcdN\xef\x97\xac1\x9d\x05p\x8bJ(qu\x0ciUJ4v u\xce'\xf3\x82\x03Ko\xd3\xb2??\xcc\xab\x9f\x97\xd1\x94K\xcb\xa9\x92\xa6\xaa\x85\x936\xc3\xed\xfd\xd9\x8ba\x07bm\xcdX[\xd3o\xcf\x8c\xb55\xfdr\xbbbm\xcd\xf1\xd9[~y[\xb1\xb6\xa6\xbaA\xb7\xcc,\xef\x9c\xacX[sL\xd6\x95\x7f\xbeU\xac\xad9&\xaf\xca'\xa3\xca9\x97*\xd6\xd6\x8c\xb55\x9d\xad$\xef\x1c\xa8X[\xd3)\xcb)$\xbf)\xd6\xd6\xd4=f\xcd]\xf2\xc8Zr\xa9\xca\xe8\x93\xa9\x14kk\x86\x94\xa7\xb4e\x1e\xc5\xda\x9a\xeeYE\x8e\xf9D.\x99Dn9D\xb1\xb6&\x04f\x06y\xe4\x04\xc5\xda\x9a\x13\xe4\xf8X\xb3{B\xf2zbm\xcd.\xd9svbm\xcdX[s@S\xd49t\xcd\xa5\xf1\xce\xa2\xf1\xca\x9f\x89\xb55\xab\xb0\xdc\x98X[S\x92SmM\x117\xbb\xe4\xc9 \x9d\xb6L\xf1\xdc\xc1[\xbdp\xb6\xf8\xd3\x00\xc3\xb1w]\xb11;\xc4\x98\xf9\xd0\xfb\x9a\xdc\x88\xcdI-\xb6\xa4\x92\xfd\xef\xf5\x7f\xef`/\x07\x1f\x82E]\xc8\xab\x18\x05\xbc\xb0/)\xd5\x8d\xa0\x96T\x95}nz?\xbb1\xa3\xb8\xa7\xd4\x91\x17\x9e\xfe\xb2\xcf\x04\xff\xbb\xe1\xeb\xa4w\x0d)\xd3\x17\xeb\x81\xdb\x9c\x07\xf9\xad,\xc8\x84\x9a}&\xe4/\xe3\xd8\x98c\x9cC\x81\xff\x87\x05x\xad\xdc\xf0\\\x9d}^\xf8\xdf\xc7q\xc2A3]\x16\xd2\xfc\x19\x076t\xfe\xd6V\x8d]\xa2\xac\xb4\x94\x8d\x05ef\x96{6\x96m\xb1X\x1e\xd6g]9eZ9fW9dTyeQI}xC\xfa0\xb3!\x1a\x15\x17=\xf5\xc3\xff\"qk\xf2\xaaO%Th\x82q\x95L6\xb7\xe7\xeb\x18m\x1e\x18\xe8J\x0e\x7f\x16\xec\xe2\x12\x96\x05\xd9\xdc\x0b\xc7-\xc6iv\x8dw:\xb6\x07\xbb\x8c\x80 !a\xa9\x17\xb8b7\xcf3\xdf\x05C\xae\x08DF\x83)b1\x97\xd5 8\xd1d\x93U\x16\x9c\xd0;zz\xe2\xf5\x9f\x81,\x97%\xae\x80\x14\xd0g\x17:1\xe3\x12W\x13KK\xe3\x81W\x08\x91\xf3\xa7\x93\xe3\xc0\xfb-:\xc3D\x99\xd7\x1b\\\xa4\x89\xfc\x1b\xd3I\xa2\xf45\x0f?\xacq.\x05_\xe7M\xc4g\xb0{\x9f\xb2\xd62:\xe7\x1b\x11\xf2\x18I]RQ_cOy\xf6\x9b\xbfc\xe1\x0ePW\n\xf1f\xe9&u\x95.{\xb6\x9fg\xb0\x0f\xc6\xe2\xd1\xc0\xee\x0c\xfe\xff\xd9\xfb\xd7&\xb9m$\xd1\x1b\x7f\xefO\x91\xf1?\xff\x08yNH\xdd\xf6x<\xbb\xeb\x13\xfbD\xc8\x92f\xb6c}\xd1c\xc9\x9e\xd8W\x15\xec*t\x15W,\xb2\x86D\xf5\xe5x\xe7\xbb?A\\H\x90\xc4%\x01\xa2\xa5\xf68\xf3\xc5\x8c\xd5E&\x81$\x08\x82\xc8_f\xcaO\xce\xfe\xd7\x89\xb6\x93\xdc\xfb7\xfftu\x03\x15\xbb\xe1\x1a^S4\x9b^\xf8\x08G\xa6|@\xe4Ez;_?\x00+\xb6\x07(N\xa7OhE\x13)\x1b\xcf\xf7\xd9\xd28\xa3\xb7\xa8\x18\xa1\x8d\xc8\x94\x0e\xfd\x7f\x94\xf5\xae\xdc\x16\x9c\x0dH\x83\x0e<\xed\x0f\xb4\xa4\xe5-\xebmu\xde\xcd\xf6\x17\ny\x95\x81)\x99\xdd1A(\x19\xae\xce~N\x9f\x10\x9a\x13e?_\xcd\x17\xb6\xb3.\x88-\x99\x96u\x8a%\x13\x8f\xd7\xf8<\xf6\x8f\xdc\x85z\x9a\xca}\xdd\xb43G\xb1~\x1a\xa7\x97\x90\x96Y{c\xe7<\xb4\xe5\x06\xb6\xec\x96\xb5\x93S}7O\x1d=\xbfq\xa5\x81$\xb6\xcc\xfe$L\xf4\xf4\xd7`\xb5@h\x9av\xc7\xda\xf9\xf6\x8f\x155\xff*\xab5b3\xef_\xfe:|\x11\x95\xbb\x7f\xc83}y\xf8\x874\xfc\xa7\x11{\x164\xdd\x98HV\x1fz\xf5Z\xdfhk\x1e\xfe\xcft\xf7\x9ex\x1a~\x17&\x98\x842\xbb\x92\xe9\x07]\xdc\x08\xeevb\xa55i\xf4\xfdI\xf4\xb9\x07\x92\x84P`\xa4\xd7tRB\xc0$ \xa0I\xc0\x98T\n\xc6\xf9\xae%\x16\xa0\xf4*\xb3{\xd1=\xae\x98\xdc %\x84aJH\x00*\xfd\x1d\x88M\x95o\xf3\x07D\x83\x95\x90\x08Wz\x15F'\xc9_ YB4h\xe9U\x95\x9a\x1e?+p \x91\xd0%\xc4\x82\x97\xfe\x91=@\x99X\xf8\x12r\x03\x98\x80\x830!'\x88 \xabaLH\x032!\x17\x94 I`\xa6\xffq\xc0\xa7\xc1\x7f\x04@\x13\x1e\x11\xd2\x84\xc7\x015!\x12\xd6\x844`34\x05s\x14\xb4 y\xc1M\x88\x807!\x1e\xe0\x84\x04\x88\x131eb\x13\xde\xaf\x869!\x04t\x02~y\x86\x00;!r\x15\x17\x0dxz\xb5\xc5\xa4\xb8\xc7\xb62#\xec Q\xc0'\xe4\x86>!\x11\xfc\xf4\x8f+dZ\xfbD\x00\xd4\xa9\x8f#S\xda\xe7\x01A\x01\xcf3\x02\x06\x08\x858(\x14B\xa4R\"\x1c\n\x08\xbd\x1eL\"\x13(\nI\xc6\xc5\x03\xa3\x80\xe8e\x028\n\xa9\xf0(\x043e\x87!R\xc8\x0c\x92B&\x98\x14p#f5T\nx\xb0\x14\x90p)\xa0\x01S\xc0\x0d\xa8x\xd0\x14\xa2`S\x08%\xa7\xcf\x02\x9dB,x\n\x89\xf0)\xc4\x01\xa8\x80\xb8 \xa1\x84\xf4\xc1\xf3\xf1@*d\x84R\x01\xd34\xcfS\x96\x0fP\x05\x0c\xa4\n+@U\xa7B\x8eH?\x9f\x15X\x85 \xb4\n\xa9\xe0\xaaS\x1b&\xed|\x18`\x85p\xca\xf9x\x90\xd5\xa9*\x98n> ruj\x0b\xa6\x9a\xcf\x07\xbb\x02\nx\x85\x04\xe8\x15\xe2\xc0WH\x81_!\x1a\x80\x85Pf\xf5p\x12n,\x98\x88\x85a!\x05\x88\x85X(\x16\xfc\x1dO\x81c\x9d\xcaP\xe9\xe4S Y\xef\x03\x81I%\x9f\x11\x96\x85\x100\x0b\x89I\xe4SaZ\xc88v#\xa0Z\x88\x02k\xc1\xb9@\xc1\xedM$\xa5\x8d\xf7\xdc\xc3\xc1\x8b\xecN\x1a\xefK\x19?itj\xc2\xf8\xe0N\x94/Y<\x1eN\xf4\x9d\x83J\x14\x1f\x03,\xfa\xce\xf2&\x89GB\x8c\xbe\x13< \xe2\xa3\xc0\xc6Q\xb0\xc9\xe1qc8_b\xf8\xc1\x89\xeeM\x0b\x1f\x99\x14~L\xfe\xee\xd0\x17L \xaf\xaf\x12\x9b\x10>\xe8\x9c\x0f\xbb\xe6\x11\xa9\xe0\x83\x8f\x1b\xcc\xefd\xbe4\xf0\xc8$\xf0\xf1M\xf4n9\xe7L\xff\x1e\xeaa8\xf5{|\xe7r\xa5}\x8fI\xfa\x1e\xdfJ\xef-\x88M\xf7.\xbb\xe5Q\x18\xecp0\xd5{\xb0\x87\xb8\xb4\xc3\xd3W\xe0\xea$\xef\xb8\x14\xef\x8f\xd1\xf6\x0c\xc9\xdd\x11\xa9\xdd\xf9\x13\xa0\x97\x82 \xdd\x83\xe6\x05T2w\x84\x1a\xec\x13\x14\x99\xc6\x1d\x91\xac=o\xaavd\xa2\xf6\xb44\xed\x13#\xe5I\xd2\x8eL\xd1\x1e\xbc\x83 \xcf\x99\xf3.\xe7K\xcd\x8e\xe8\xf9\xc7\x9f_2&d\xf7\xa7c\x0f6>\x94 5[\"\xf6\xb1\x0f\xae -c\x12vo\n\xf6\x8c \xd8=\xe9\xd7\x83\x96\x9f\x0c\x88\xa8\xcc\xdfk\x12\xaf{\xd3\xae?~\x9bW%\\\x97?\xb9\xd2\xad?~\xe3\xf5\xf5aE\xa2\xf5@\x9aun\x0d*0%\xdc\x0bWR\xf2\\ \xd6\x11\xe9\xd53\xdc\x8b@/\xb2%V\x0f\xbf\x8f\xf2%U\xb7\xcf\xe3\xfe\x16LR;\xa32;\xcfr9\xcf\xf4\xfd\xf4\xf6\x15er\x06\xca\xe4\x9cm9\x1e\x1b\x88 \xc7*erF\x04\x1d\xf0\x1c\x01\x07)\xc1\x06\x94\xc99c`ALPAT@\x01er^\x1b<\x90\x108\x90%h >`\x8029\xaf \x10\x88 \x0eH\x08\x0c\xa0L\xce\x94\xc99\xb0J\x8a\x06\xfd)\x933\n\xeaO\x01\xfa)\x93\xb3\xeb\xb0 \xb8\x1f\x01\xedcr\x00\xc7\xc0\xfa\x94\xc99%\x19r\x08\xc6\xa7L\xcex\xe8\x1e \xdcc`{\x1chO\x99\x9c!\x11\xa6\x8f\x00\xe9)\x93s\x06P>\x08\xc9\xa7\x02\xf2\xce\xf7&er^\x08er\xa6L\xce3\xc9\x91U\x17\x0b\xafG\x83\xebQ\xd0:er\xe6ip:er\xd6\x12\x95\xc9\xb94\xe7\xe7\xc9\xb7\xb4qH|^\xabRT0\x9eL\x83cR5\xde\x9e\x979\xd5\x16;\x14\xd6\xf4[\xebr\xad]*\\H\xa9\xb0%]{\xad\x8e\x18\x92\xae\x15\xd5@\x19)\xdfgW\xd6\xfbj\xd9\xedI\xc65\xad\xe63\xdd\xf7'\x9aqmj\x10S\xf8'p\xe7\x19\xf7*\xc3v\x96'o[\xce\xa1n\xeaT\x89tW4\x1e\xb3\x9d\x05\xe6\xb5\x90I{\x9d\x8a\x86G\xc5\xde'?\xf2\xe8\x1b$R\xbcpgp\xc0H \x0d\x1b)A\xc4\x13e\x7f\x08\xf6Y\nJ\x15\xf6fF\xc3\x9e\xc1\xc6\xfbs\xdd\xe4\x05A\xd1(h*\x0c:3\xa4j\xb3\xf4\xb4\xa8\x11/\xf5\x0c\x0fE\xeaF\xb1\x9a\xb6\xc7;\xa1\xb1\xda\xe9u\xfa?o%\xd2\xae\xe1(G\xd9yq$/o\x1d\x1f;\xee\xf9\xc4\xc6iw3\x00H\xd4b\x17\x80\x93\xfcy\xaeeL\xce\xba\x1c\xcb\xd3\xf9oLY; \xe523\xd9\x82 \xe2,\xdb\xeb}\x90\xfd\x0f\xb0\xce\xc8\xedF\x10@\x9a^\xc6\xc5\x00i\xb3\xa5\x9f\x16\x02\xd2\x94\x10\x90\x96g\x05H@\x1a\x01iv! M\x08\x01iK! \x8d\x804\x97\x10\x90F@\x9a\x10\x02\xd2\x08H# \x8d\x804)\x04\xa4\xa50]\x04\xa4\x11\x906\n\x01iK! \x8d\x804\x02\xd2\x08H# \x8d\x804\x02\xd2\x08H\xfbm\x02iT\xb5:\xb5$0U\xad~D\xe3\x86\xc7(U\xad\xceaE\xaaZMU\xab\x7f\x8fU\xab\x07\x92\xfa\xf2\xd7\x01\xba\xf3\x94\xb26\xcc\xa8\x11;\xcdW+\x9az\xc8\xeeX\xcb\x87\xaf\x1f\x88C\x81H}\xe5\xab\xd7\xe3\x82D\x9d\xf0r\xb7k}\x04\xb6\xfa\xe9\xa9\x03\xd8.z% \xa8\x0bb\xd4A\x17\x0c\x02\x03\xcb\xb74\x1b5z\xf1\xe9`\xa31\x8e\x97l\xe0\xb4\x17\x9b\xf6\x01\xc4<\x80LS6\\\xabD\x02\xd2\x08\x0c:/\x04\x8dD\xa0\xd3\x00\xe8\xf5\xf8s\xd8\xcc\x99\xd1g/\xf8l\x9f\x05\xf0\x1a\x8e\"\xc08\x95\xb4d\x8e H\x8f\x1f\x08\xdec)\xe1\xd8\x81\xb4\xc8\x81\xb8\xb8\x81\xf8\xa8\x81\xa8\x98\x81\xa4\x88\x81\xe4x\x81p\xb4\x00\xf2\xde\xc4\x8c\xbb\xccq\x02\xfe(\x01l\xc32F\x08x\xe2\x03\xb2D\x07\xf8c\x03\x827,D\xe4\xe6\x8e\n\xe0\x19c\x02DD@\x1e\xf2?<0VS\xff9\x99\x7f\xdb(G\"\xc9\xb1D2\x01\xc9\x04$[\x7f' \xd9\x10\x02\x92 H\x1e\x85\x80dN@\xb2]\x08H\xd6B@2\x01\xc9\x04$#WI\x04$\x0fB@\xb2)\x04$\x13\x90l\x11\x02\x92 H\x0e\x19\x9f\x80d\xe79\x04$O\x84\x80d\x02\x92 H& y\"X8\x94\x80d!\x04$\x13\x90\xbc\x9e\x91y| Y8 ]m\x97\x10\xcd\x84\x11\x99`5\xda}8\xf0_\x19\xdb\x1eB\xcf\x8ee\xcd/o\xbf\xbcf\xbc\xf8\xf2\xb2\xa8\xebsQm\xc4\x82\xa4\x1b1\x1e\x1bl\xf6R\x1c\xfav8R\xef\xd0A\xaf\xb0\x9fF\xa5.\x18u\xc9W\x9d\x953\x9b+\xfbL\xf7\xf3\x892g\x0e;\x99\xe2\xdd\xe8\xf2nq\x85\xb7\x90\x16\x97\xd7^\xe9\xe0=\xb0(\x9b\xdc\x15)\xfe\xf4mb\x04\xcd\xef\x18\xca?nSt\xb9\x18HT~U \xf9\xca}\x1b\xc5\x8f\xb0\xcd\x1c5W\x96\xf5Medz\xb4\xcd\x91W\xfa\x10\xc5'\xdb\x1f\xd2A\x91g\x82\x1c4\xa9\x1f\x9f\xec\xcc8\xb3\x8a)\x99f\xc4\xd1\\\x8eI\xcfaO\x8b*;\xee3\xd8:}N\x1bo\xfcOo_\xcd\xd7l4\xb7\xd1\xdc\xf6\xc4\xe76\xb1V\xf7,\xfe\xde\x8a\xdf'\xb3\x9a\x8cP\x11AY7\xc3\xa38\xae\xf9\xad\xb3\xda\xf7e\xcd\xa5*\xf5\xeb\x93\x9d\xd6L\x83\x982\xfdD\x91V\x99\xe6\xf3\xd5\x06\x18XMAU.\xb7K\xbcC\xce?\xe0zkov\xacn\x1cdwp\xc0(\x9a\x95+_\xe0\xb6)\xc5\xb7m\xaf\xd7r\xfc0\xbfn\xda\x82\xb3\x8dt\xee\xaf\xbb\xf2\xb1\xb8/\x8f\xe7\xa3^\xafJ\x95\xfd\xa7\xf68\x97\xf7\xd7\xf26\xe6X\xdc\xe7iD\xcc5KG \x01\xfa\x9ae\x8d\xbb\xe6\xbe)\xaa\xcduS\xefXjP\x8a\xbab\xaf\xa8\xbf\xc9'\xd6n\xfb\xb7\xa6\xd4 \x05o\x8e\xb6\xaf\x83\xeb\xaa\xd9~\xe86'\xd6n\x1eX\x91\x1a_\x82\x08\x88Q\xcd\x1b\xdes\xf2\xc2}3\xa1\xbf\xf0\xe4\x1c\xc4K\\N+\xa87\xb8zg\xab9\x8d\xb8]z_\xdb~\x7fj\xefk\xf9\xb2A\xbf\xb1\x8d\xafx5\xd0u\xa0`1\x82=\xc3\xdbJR\xf6\xf2U\xf5\\U0*y\x07\xdd\xf9\xba;\x15\x02\xb6\x1b7\xea>\xb0\x07\xeb\xdb\xfd7\xf4f\xc7\xbc\xd8\xadE\x00\x06\x8be}\xa1k3'\xcd\xb6\xa9i\xfd=c\xd8yf\xd2DL\x930\xd0$l?\xfd\xa9M\xc2>\x9f\x85~H]#p\x98+\xcdyCN\xa9\xfd\xe2z\xacW1\xce\xba7Sz9%\xee|\xd6C\xddXO\x92\x94\x0f\xeca\xd2\xc4\xfe\xdf\xda\x952\xb4L9\xdcu\x9f\xb2\xb62\xf2M\xa7\xdb\xe0y\xd9\x193\xd1;}\xf4\xf0\xbe\xeb'\x9c\xa2\xea\xdf)\xfb\xb2\xe3\xace\xbb\xa1[\x9d\xf0V\xf6?~`\x0f\xea\xc8A\xd3\xbc\xef\x13#>\xb3&\x11\xf8\xf33u\xec\xe4\xbd84I\xfd\xf8d_\x8d3K\x9b\xf2)&\x08\xff[\x11\xf1\x88\xf77\xd5\x7f\xf2\xea:w\xce\xab\x87\x9d:\xe3X5\xe2%\xc7'p\x98N$<\xa3\xc6\xa9z`\xedT\xad\xf0\x95\xb3\xfb\xb2\xe3\"R\xc6q\x8c\xf9T\xdb\x8f\xb1\x8f\xed\xc9\xa1\x88\x85\xc00\xec\x87\xb5\x809\xebL\x16\x05\xf2\xd1\x1b\x12--\xc3|\x8ajA\xf5#\x1fgOg\x03\xdd\xa4\x15\xc7\xecWZq<\xc2\x8a#\xf42\xec\xaa\xa2;\x94\xf5\x1e\xfd\xe17\xfb\xda[nJj\x8djm\xa2\xce\x9f\xbe\xb1\xd4!\xbf\xa1/:\xe7\x10K\xfb +\xf75\xdbm\xd4f\xd8]Y\xef\x9a;\xf7\x98Bm\x85\xb9v\xc2\x8ee\xbdQ\x97;\xb16\xcf\xb5\x1c\x914\xbb\xe6\xae\xe6\xe5\x91m\xfe\xbb(\xab\xcdNa?I\xd7\x12\x83hs#\x02G\x9bz\xb3k\xce\xd7\x15\x13\xfdHR\x17l\xfa\xe2z\xb2'\x8fq\xb1\xf0\x9b{\xf0\x86(*m\xf1\x94\x0dqd\xd7r\xc5\xaf\x1f9\xdb\xed\xb7\xb8\x07\\\xc9&\x1eg\xa3s\xf8#\xbd\xf0\x16\xf6\xa1\x17\xde\xa7\x7f\xe1\xf5\x93JY\xef7e}\xd3x\xde{\xef\xe4aW\xfdQ\xc3\xdbO\x9d+\xd2\xa2\x89=\xce\xaa\x92\x91\x81\x05oZ\xfdb\x9b\xbe\xfa\x0c5\xea\xf7'\xfb\xe2\xeb{\xf54\x06\x9a\x02\x1b\x93GJ\xc7\x8b\x96o\x0e\xde\xc4JA%\xe1w-x&\xd7Q\xfeC\xe5U\xe2\x8a\x0b\x1e\x06\x8c(\x82)\xf0k\x99\x9ea\xd7\xff\x99\xc1\x8f?\xf5?8\xd5\x9d\xeb\x17\xfd\xfb\xd6\x11\x8c]\xd6;v\xbf\x91\x19\x1d\x1f\xb9\xe7\xe1\x17\x9b\x94\xab\xbeI\xaa\xefe\x07e\xbdmETp?\xe9\xdf\x8aM\xac\xf28\x84\xd8\n\xbb\x94\x9e8i\xe9n,k(\xa4\x8bO\xb8\x12\x9c\x87o\x8e\xc5\xc3F\x86\xcf\xcbE\x91H\xfe\xc3^l\x9b\xe3\xb1\xe42A\x03W\xb9G<\xe1\xe0\xdb\xa6\xfeo\x156:$\xc5r_\xd4\xb6\xda\x1b|\x00\x9c\xb5\xc7\xe1\xabU\xdc-[\xceIS\x8e\xa5(f+{{]\xf2cq\xb2GK\xc8a\xb19\xd7\xbcL\x9f\xa2\xc7{\xdf\x0f\xc6\x17\xfd\xbdYy\xff\xdf\x97G\xd6\xf1\xe2x\x02\xd125\x12\xb8\xcet\xa7\xee\xb8j=\xecD\xe2X\xa7\xb2\xaa\xbce5\xeb\xbaa\xf1i7\x05o\x8e\xd7\x1doj\x97\xb7[\x1bb\x9ett*\xd8\x1e\xfe\xed\xc0D|\xbd\x1cN\x93\xa1|(:\xb8f\xac6Z\x04\x9f\x7f(+\xd7\xf3\xdbKs\x96\x89\xce\xb4\x12\xcfHc\xfc\x0f:_\xab@g\xea-\x9bYV\x8e\xf4\x0e\x9c\x9d\x04`\x7f?\x97\xb7\xcdV\x05\x05\xb5r\xa3\xa3~\x90I\x03\xdc\x17\xdf6\xf5M\xb9?\xb7l\xd7\x0f\xd1kv(nKW\xfa\x0c9\x86\xf5#!r\xd2\xba\x92MF\x8d\xd1\x1c\xf3\xd3KP\xed\x91\xe4\x91x\xd8>?\xd7\xf2)\xfe\x83\x02 \xb4\x95\xcf\xb2\xae\xb4S\x99L\xc1q\xaek\xd6\xbf\xb0\x8b\xd6\x93\xae\xa6e\xc5\xae\xd3;\xe3\xc8\x87\x1c\xd3\xa7_\xf4\xbd7\xd6\x1ef\n5\xfd\xf3\xb3\xd9z\xc6\x95\x0d\xe7\xd8\xd4%oZ\x95\xb2\xbct\x8c\x88\xe1\xc1\xec?\xa9nK\xfe`\xf1h\xcaW\xa5\xb8\x98\xfa\xce@-\xa8\xb4\xf8\x8a\xa3\xaf\xf88\xa7b\xe6T\xcc|&\x1f\xa5\x989\xa0\x9eg\xb3\xb2\xc0\x98\x9fq\x08U+k\xd8\xff\xf4\xf6\xd5\xf8\xc1\xae>2;\xb8\xeb\xef\x99\xed\xf6\xd8\x97.\xdb\xa6\x95:D\xd6\xafVv~\x88*\xeb_cb\xea3-c5\x87>\xe3]s\x1c\xdb\xed\x8d\x81n\xd9\x89\x89\xbc\x1b\xdf\x16\xedp\x93\x02\xa1\x96S\xb3\x88\xf1\xed\n\xb6\x9cFq{\xf7B\xcc\x8f5\xd4\x8e\x88M\xc9\xe5\xe4\xcb\xd1\xc9o\x0f\x7f\xa4m\x92\x85}h\x9b$\xfb6\x897z\x92\x8a\xa1\x04!\x03p\xbd\xe9\xa9\x18J^\xe3\x86\xcbxP1\x94\x1cV\xa4b(T\x0c\xe5\x9f\xb3\x18\x8a\x7f\xc7\xff\xf2\xd7mSw\x1b\xb5\xc3\xec\xa9\x86b~=\x9b\xde\xef\xf9'\xab\xa4\x9b\xb7\"#\xa8T\xaa4\xb9\xfc\x00\x9f\xe9N?Q7\xc0mQmL\x93e\xfd\xd8\xf6\xee\xec\x07\x966\xe1]\xfd\xe0\xda(\xbco\x14\xfa\xbc\xcc\xba\x9b\xef\xdb\xcb\x0f\xef\xe4g\xe8m\xf8\xfb\x13\xf2\xee\xe0G\xed\xdf\xc7\xed\xde\x9b\xbb\xf4\x0e\x85\xa1\xbd\xfb\xac;\xf7\xc8-\xbd\xf0\xae=\xfa>\xfbw\xecq\xf7:\xe3n=j\xaf>\xb4S\x1f\xde\xa7\xc7\xf5+m\x8f\x1e\x9a\xb3\xed\x0b\x10dJ\xd1\xe0\x0e}\xd4\xfe\xfcd\x1f\xdeuQ\xe4\xee<~o>bg\x1e=\x0e\xd7\xce7);\xf2r\xe7\xdd9\xcf\x06\xf7\xe3\xe3w\xe3\xc3}\xc9\xbb\x13\x8f\xd9\x87\xc7\xef\xc2[\x1b<\x7f\xf5\xbb\xb6\xe9\xd5\xf6 \xdb\xf5g\x88\xb5\x8fE\xd9t5$\x05\xbb\xfd\x96e\xf7\x8d6\xdfh\xf3\xcd\xfa\xfbS\xda|3\xbfF\\\xa3\xd0%\xfei`\x94@)\x1f\xc0=\xb7R0O\xaf\x94m\xcb\xe44\xe6\xcfk=\n\xf2FJ \xc7n\x9b\x12s\xf3\xa5\xccZ\x0f\x93O[\xf5\xb7!\xd7\x00B\x9f9V\x807\xcd\x078U\xb3\xcab6\xd96\xc7S\xc5DC\xdc\x05\x1fLI2b(u\xf2( \x86\x9c\xf6`b\xc7s]\xde\xcbd\x1c>ll\x94\x89\x11G\xc5!#\nT\xab\xa86\x81\xa0\x99Q\xa2\x8c\x18o\x92Y{&&Q\xbf\xe9\xb0 \x846\xb1z\x9fXF$\x9eq\x07\\i\x91!\x18\xfd\x14\xf7\xc9-26E\xcf\xb2*\xd6&\xf0b\x95bL\xaf/\xc6\xd9YE\x98\x88\x07Y8r\x10\x9aL3\x86\xccw\xae\xafe\xf6\xd1M\xe9\xcc\xda=J\x94\x01\x11\x81\x00\xa6\x84\x82\x02L\xb9\xd2\xc9pD\xec\xf5\xce\x07({\xd2\xda\x8f\xd2\xbf\xa4B\x96\x1d-\xd5\xcf\xa7M\xb5\xdb\xb4\xecF\xe6\xeex$\xc3\xe5\xb7\xdb;\xde\x96\xe23\xe3\xd4t%/o\x99\xfc,);i\x81g\xdd\xd8K\x84\xb6!\x85K\xc7\x9b\xd3I\xba\x19\xd9=gm]T\xea\xb3\xc9o\xfc\xb8G\xcc\xfc\x04z\xd37\xd7\x88\x90\x9b\xcc\x1c\x88\x05\x80\xcaJ\xd4\xb2\x8a\xdd\x165\x87#\xe3\xc5\xae\xe0\x85\xefq\x99\xb4V-k\xe4g\xba\xd8\\1\x1a\xa0~t)\xc3v\xfb\xa7\xe9\x8b\xc2p\x8eUe\xc7e\x10\xfe\xa9hy\xb9\x15\x9e=\x97\x9aa\xcd\xfe\xcc\xfcF\xae\xf7\"\xe2\xd4\x134*\xbf\x82\x8d+\xe8e\xf08;\x89\x0d5T\x13\xc6\xa5c &4\xb0^\x0c\xaf\x15Q%\x1f\x03C\x04\xb7>\x9c|\xe6\x8a\x07\x88\x96\xa7\x88a=\n-O\xad\x92`HZ\x9e\xce\x85\x96\xa7s\xa1\xe5\xe9Dhy:J\x92\xe1\xf2\xdb\x8d\x96\xa7\x83\xc4/OQ\x13/\xeaF\xe3\xfb\xbd\xe8\xb3;\x1f\x83;j\xcbf:#e\x03\x94\x9e\x90J0\xa2\x1db\x924x\x14\x9a\xe9\x1bT\xaa\x06\xdf\xf5=Y\x1cp\x964;\xef1\xdf\xf4k@\xda\xc7\xaaO\xd9\xac\xd3+i{\xe3\x87\x18\xda\xd5VC\xdb\xcbi)J2!\xc4\x87\xf7\x8cBI&\x00\xf7\xf2\x0e\xbdx~\x9bI&\x16\xdd\x11\xee\xf6\x89w8-\xbb\xc4\xd4\xa7\xeeL\xe29\xdeH\xca2\xb10\x10e\x99\xc0\xbc\xf0\x80\xb2LP\x96 \xe7\x91\x94eB\x08e\x99X\ne\x99\xa0,\x13.\xa1,\x13\x94eB\x08e\x99\xa0,\x13\x94e\x82\xb2LH\xa1,\x13)\x89\x1a(\xcb\x04e\x99\x18\x85\xb2L,\x85\xb2LP\x96 \xca2AY&(\xcb\x04e\x99\xa0,\x13\x94e\xc2\x0c\xb43TM>\xa7\xa7G}\xea,\x13]\xbb\xddL\xab\xf7\xb8\xda\xbd\x00/L`\xc4\xf3\x1e\xc4F\x1c;\xfa\xb0\xeb8\xb2\x0f\xcb#\xa3\xfa0-U\x92\xb1\x07\x94\xeb\x03c-\xca\xf5!\xe5\x91\x8d\x1b\xceRA\xb9>rX\x91r}P\xae\x0f\xca\xf51\x02\xcb\x06x$\x95cK\x95\xfe\xacU\xb8j\x96\x0e\xd7XT/\x1d\x94\x89$!\xa3!\x17+1=\x9c\\w\xf8\x89\xe7\x0d\xf1\xdaJ\x9d\xf0d\xf3\x88\x8cC\xe4\x89%\x11\x99\x8eeOj\x07\x84\xbf\x10\xe3r\x03\xdb5!\xad\xd4\xe6\xa0\xc7\xe9\xfe\xc4U\x14\xcd\xd8\xb5\\UD\xffyB\x0b\xa3\xe2\xfa\x10wB\n>r\x03{\xe7\xa4\xcc\xe3\xf8J{\x04\x1f:z\x03\x17\xba\x17\x15\xb6\x17m#\\\xb8^\xa4\x9dfaz\xa5%B\x0fm$\\h^TX\x1e\xdaHq\xdd\xf6\x85\xe2\xa9Z\xb7\xea\x10\x0f\x93&\xa5\x7f\xb1\xf4\xaf\xd5\x9d\xfc@\x175y\xa1\xffTC\x19\xe3S\x1a\xc1\xd3\xf9IW\xb2\xdcu|\xd8\x1c\xba\xb7\x08\xe2^K\x88\xbc\xd7\x923L.\x14\"\x97\x1c\x1e\x17m\xa0|\xf6\x89\x08\x87\x83\x83\x07\xad\x94\x92\x1c\n\x87\x1f\xe7\x965\xe6,\x12\xae6\x9a\x1c\x8c\x83\x8b\x8b\x81\x9b4s\x9e\x9e\xc1\xf6!\xe0K\xd3\x80\xe9\xb3\xa5\xb7\xbd}[\xf5\xed!\xd23te\xbd\xaf\x98\x99\x82\xc1\xaajl\x9e''C\xffr\x184\x8e;\x96e\xdd\x9b\xb5\x7f}\xbc\x10\x9f\x85l'\xd2C\xcc{EAVB(\xc8j\xfc kL\n\xb2\x12\xfb\x1c\xf3\xe7\x1d_\xd2w\xa6\xcd\x02\xf3\xcb\x18,\xef\x15\xa8\xd4\xaf\x16\n\xc2\xca\xf3\xd9MAX\x14\x84e\x17\n\xc2\x12BAXK\xa1 ,\n\xc2r \x05aQ\x10\x96\x10\n\xc2\xa2 ,\n\xc2\xa2 ,)\x14\x84\x95\x12\xc7DAX\x14\x845\n\x05a-\x85\x82\xb0(\x08\x8b\x82\xb0(\x08\x8b\x82\xb0(\x08\x8b\x82\xb0(\x08\xeb\xb7\x17\x84E\xe1?q\xb1\x15\x14\xfe\xf3\x88\xc6\x0d\x07\xaeP\xf8O\x0e+R\xf8\x0f\x85\xffP\xf8\xcf\x00\xb0yb~\xfe\xc7\x12\xf3\xf3\xcbp\xde$\xd2gT\x07e}\xd3\x88\xf1)\xeb\xff\x0e\x17\x1et\xfdsD\xf6\xbc\x93\xc6\xb6\x18F\x1d\xfdd\xc3z\xe6\xb7\xde\x14\xfe \x90\x1b]\xcc\xf4#F\xbc\xcc/9Y\x88N\xa3]Fs9\xe0QS\xdf\xff\x11\xb5}\x87\xb8\x99\xb2\x16\x1f\x1c\xf6\x0f\xeb~\xb4\xb2\xba;w\x9b\xd3\xf9\xda\x89\\\x06\xad\x0b\x08\x0b\x03\x02l\x02\x9c\x85!\xc2\xca\x90\x009y\x95\xd9=]\x9e\xed\xd2\xdc\xb0\x13\x84\x81'H\x80\x9e\xfc\x1d(\xf8\x01\x0d>A.\xf8 \x12\x01(\xafBQ\xf0\x02\x0bA\xc1z\x10\n\xa2a(\xaf*\x05iD\x01Q\x90\x1b\x8a\x82H0\nb\xe1(\xff\xc8\x1e\xc0), \x05\xb9!)\xc0\x81R\x90\x13\x96\x82\xd5\xc0\x14\xa4AS\x90\x0b\x9c\x82$x\xca\xff8\x14\xfd\xa7y\x10\xa0\x82\xc7\x81\xa8\xe0\x11A*x\x1c\x98\n\"\x81*H\x83\xaaBS0\x0e\xac\x82\xbcp\x15D\x00V\x10\x0fYA\x02h\x85\x982\xff\x80\x80\xad \x07p\x05!\xe8\n\xf0\xcb3\x04|\x05\x91\xab\xb8h\x08\xcb\xabM\x00Z\x08\x10\x0b\"Z\x99\x11\xc8\x82((\x0br\x83Y\x90\x08g\xf9\xc7U\x17\x06\xb4 \x1d\xd2r\xea\xeb\xaf\x18\x02\xb5 \x1b\xac\x05x\xe6\x080\xd0\x16\xc4\x81[\x10\xa2 \x12\x01.@\xe8\xf5\xb823\xc1\\\x90d\\<\xd4\x05\x88^&\xc0]\x90\nx\x81\x9fbA\x81^\x90\x19\xf6\x82L\xc0\x17\xe0F\xccj\xf0\x0b\xf0\xf0\x17 \x010@C`\x80\x1bP\xf10\x18D\x01a\xe0\x83\xc2 \x17\x18\x06\xb1p\x18$\x02b\x10\x07\x89\x01\xe2&\x04\x1e\xb3\xf0\xf9xh\x0c2\x82c\x80i\x9a\xe7)\xcb\x07\x91\x01\x06$\x83\x150\x99S!\x17\xc1\xfdn\xa0\x0crCe\x10\x04\xcb \x15.sj\x93\xdf\xf6\xfem\x8e0d\x06~\xd0\x0c\x92`3\xa7*/\x84\x06\xa9 \x9aS\x9b\\!{\xf6\x13\xf3\x01i\x80\x82\xd2 \x01L\x8388\x0dR\x005\x88\x86\xd4\xc0?\x8b@\x00\x1c\x82\x08x\x08\x0b\xacA\n\xb4\x06\xb1\xe0\x1a\xf8;\x9e\x02\xb09\x95\x19x\x18\xf6\x91\xc1\x81l\xde\x07\xa2\xde\xfba6\xc8\x0b\xb4A\x08j\x03?\xd8\xe6<'\x15x\x83\x8cc7\x02|\x83(\xf8\x0d\x9c\x0b\x94\xff.\xca\x8a9\x13\x82\xdb]%\\\x93\xc3\x18\x0c\xe8Sx \xc4o\x9f\x97\xf5\xb6r\xbf\xf8;V\xdd\xbc\x18sH9\x06\xc1\x08\xbb\xc82\xfa\x1f\xa1k\xf3K\x8eD\x81`\xae\xd4\x1f\xcb\xae;Ko\x8b\xfbUd\xf0\x06\xa3V\xc7\xb6\xb1\xd9\xba\xd5\x1d\x18\x8e\x9ba\xb9\xe3\xdf9k\x8f\x1d\xd8\xcb\x98\x8f\x12H\x03\x9a\x8dh86u\xf9\x81Y\xf2\xdd\x8c\x82\xb8\xc1\x10a#\x18\xaf:\xe6T\x83\xc3\xf9X\xd4/ZV\xec\x04\x9a'Vt!\x1b\x01\xc6N\xa0\xd8\x08\xeedC\xe0q\xfa\xa8/k&\x8e\xd3\x9e\xdf\xf1\xc7\xae\xdc\xd7\x05?\xb7\x0c>g\xf7\xfe\xcf\xe0\x9f\xdf6\xad\xe0l\xff\x93=\\\x17\x1dsN\xde\x00w\xec\xba+y\x0e?\xc8\xa4\xc7J\xad\xb5G\xfa\xb7\xaa\xac?\xf8\xa6\x9e\xed\xb9-\xf9\xc3F|\xabl\xbdy\x0bSZ\x18\xb8'\xf3\xcb[{\xc2\x8eEY\x05\xf1\x01\xad\n\x94*w\x9f\x9d\xa9\x99FI\xe9\xaaR\xab_\x04\xd2a7tB\xfdjo\xd5\x98H\xd2\x9f\x9a\x17\xd1,L\xc6H\xec\x1d\x9a7K\xdf\x9d\xe7P\xde\x8c?>\x173\xaa:\xc2\x83\x19\xe9\x94\xbde\xb7X\xde\xed\xcfF\x0e\xc7\x90\x89|yy#\x0c\x14\xca\xc5\x1bo$\x91m\xd7c\xa2cY\x0f\x19y\x9d\xea\xa6\x0bI\xde\xe8\xe4\xac,d\xa0ms<\x96]\x87}i\x8e\x87O^\x8c\xc6\x9f\xc7\xb8\x98G~\xe5\x8d\xd7\xdc\xb4\x05\xf7\xe7\xb0\xc6\xde\x15\xb0\xe8\x9dtT%\x076\x0e\xf2\xea\x92\n$l1\x00\x022E\xb5\xf8\xdeE\xbc\xf6P\xf6\x02\xa4\xcd@\xb5)\xb4\xa3\x8fx \xb4\xc4\x98\x16\xd4\xe5\xf5\xa7\x8f1l\xc4\x9f\xb7\x87\xa2\xdd\x8b5aP\xcd\xb8\x1a|\x0e\"\x1c\xefF\x80m\xfe\\\xc4\x00\xc7\xe2~\xf3\x89\x0d\xa0\x9b0\x19W\xc7\xe2\xbe<\x9e\x8fs\x8b\x04\x95\xc9\xd9q|\xf2\xb7E\x0d\xec\x96\xb5\xca\x94\xd1\xb6\x91$\xceS0\x91\xd1\x12\xab\xa5vE\x19L\xd1-\xe2KZVtl\x010\x1b\x96\x96F\n\xaa\n\x1b\xf1|\xea\xdf\x0e\xc1\x0c\xf0H\xc3a\xdf8\x10i`\xa3\x95\xfa9\x14N\x04\xf1\x07\xdbSy\x17\x00\x10\xe5\x9d\xda\xd9\xedr,\xebM\xff\xa1jTVY\xf1\x16\xc6\xf6\xd3r\xd5\xc5v\xcb\xb3N|A\xc3\x8em\xabb\x1e\xd63S&F\x9c:Z+\xf4\xe6\xb9\xb2\x05\xc0\xfc\xd9zxB6p\x84\xa10\xeb\xb9P\xc2\\\xb99o\xcf\xfamZq\x92\xf9[\xec\xbay\x14\xc6\xe5\xfc6\x93\xc7?v\xb1\x8c\xc0\x03\x89\xc8@\x8c1iUv\x02r\x1e\x8dV\xee\xba\xe72\x16p\x11\x06\xd0\xaf\x11\xdc\xc64\xd2\x97\xcf\xef\x8a\xe5\x1c\xcc\xa33\xc4\xed\x18_\xf4\x83\xce\xe7\xc0\x9b\xbd\xdck\x15\x1e.\xaeC\xf3\xac\xaad\xc0\x91&\xe0\xfcW{\xd6\x89-X\xbd1\xa4\x12v\x94-\xb0{9\xb7\xc8yH\xacj\xcb\xda\xb1\xae|W\x15\xdd\xa17\x86\x0ees\x11\xfdE\xff\xc4\xcb\x97\x82r\x8dN.\xf3\\r\xc0\x02K\x95\x81OV-\xdb\xa2\xda\x9e\xab\xc1_xs\xee?\xfe\xed\x17<\xd7f\xc5\xa7\xdev\xcd\x99\xf7c\xb2\x95\xcb\xc0\xe6Vl\xa1\x0c\xbb[*\xda\xab\xef\xaa\xbd\x03\xedt\xaf\xd0~\xd5\xe9\x80x>{\xfb\x95]\xbf\x0c\xdd\x95\\\xb3\x9a\x851\xb3Y\xf5\xdd\x1d\x9a\x8e\x8dQ\x98\xf6\x8b\x9a\xb7\xb1\xec&T\xb41\"D\xd7\xc6.X5\xed\xca\xc1\xfd/=<\x02\xed\xb5_ur\xff.\xe0\x97F\x98\xf5\xd4\xdc\xb1VGN\xeb\xdb\xc5v\xc2\xa5\xef\x1c\xb6\xda\x15 \xba`\xbf\xda\xf1\\\xf1\xf2T\x95z\x1a3\xaf\xbd8a\xf2\xd4\x19\x81\x81\xd6\x8a\x9f\xdd3\x190(\xd2\xf5;k#Q\xf6|!\x93\xaeR\xf6|\x941\x7fw\xd9\xf3\x17\xe3B\x84 [\xe2T\xbd9\xf3-\xbb\xd72I\xbe-\x12\x98R\xe3+\xa1\xd4\xf8y\xbeeb\xa3F\xe5\xb0\xa5\xd4\xf8\x88\x08Q\x9e#:4%2\x94R\xe3g\x8c\x02\x8d\x89\x00\x8d\x8a\xfe\xa4\xd4\xf8k#=\x13\xa2<\xb3Dx\xc6GwRj\xfc5\xd1\x9c1\x91\x9c Q\x9c\x94\x1a\x9fR\xe3\x07VI\xd1Q\x99\x94\x1a\x1f\x15\x81\x99\x12} \x94\x1a\xdf!\xc1(\xcb\x88\x08KLR\xf5\x98\xc8JJ\x8d\x9f\x92]>\x149I\xa9\xf1\xf1\x11\x92\xc8\xe8HLd$.*\x92R\xe3Cb\xe4cD\xd4#\xa5\xc6\xcf\x10\xd5\x18\x8chL\x8dft\xbe7)5\xfeB(5>\xa5\xc6\x9fI\x8e4\xe5\xd8H\xc3\xe8(\xc3\xa8\x08CJ\x8d\xcf\xd3\" )5\xbe\x16J\x8do\x08\xa5\xc6\x97B\xa9\xf1\xf3\x1a7\x9c\xd4\x9dR\xe3\xe7\xb0\"\xa5\xc6\xa7\xd4\xf8\x94\x1a\x7fd\xd3.\x7f\x1d\xfe[\xfe&/\x11\x9d+\x7fH\x95o\xc0\x88\x8e,\xf9\x16\x9e\xf5T\x94\xc3;~\x92\x82~y!u\xd4\xd3O=\xef\"Z\x92\xb0;\\\x02\xf9\xa0o\x06\xe3\xdc\xc8\x9d:>>q<.m\xbc\xd7\x9a\x10\xb4( p\x1f\x84E\x01mUH\x85~<\xfa\xa2\x12\xc5g\x05\x7f\x82\xe8On\xf8\x07\x8f\xffd\x02\x80\xd2\x10 \x8f\xba\xc8\xd4\xf0+1\xa0\xdc P$\n\x94\x19\x06\x8a\xc3\x81\"\x81 \xdf\x18\x1eP!,\x12\x94\x19\nBaA\x19\xc1\xa0\xb5hP\x12\x1c\x94 \x0fJ\x01\x84<\xca\xd0\xc9\xdf\x1f\x01\x12z\xc8\x00\x1fLx\x0f.\xb8\x872\x0cCb8OD0\x0fe\x18\xce\x10\xbc\x13\x0c\xddI\x0d\xdcq\xbe7)\xc3\xf0B(\xc30e\x18\x9eI\x8el\xaf\xd8\x90\x9c\xe8\x80\x9c\xa8p\x1c\xca0\xcc\xd3Bp(\xc3\xb0\x96\x7f\xd6\x0c\xc3\xd3\xd4\x8a\xae6O\x8f\xb2\xd7\x10~\xec6\xc7&\x97<\x94\x1do\xdar[T\x9b\xb2\xbei.\x7f\x95\x80\xad'{\xe4\x7f\x0cg\\\xd57\xcd\x90.\xb2\xef\xe5\xa8l\x9e3Rj\xd5\xfd\x9cd\x86\x9c\xea\xfbLw\xf9\x89f\x85\xec\xbb\xb8\\\xffO\x9a\xd2\x1f2\xb9\xf9s\xb3\xa8\xf4\xb26\xcb\x8c\xe2l\x1b\x04\x9d\x93\x07V\xec\\\x81\x1a^\xb5\x10T\xdd\x8b\xda#\xf60q\x12\xb2\xb9.\xbar\x0b\xd7U\xb3\xfd \xfa\xed>>\xd4&@\xb5\xab\x17q\xb5L\x00#\x02'\x92R\x9cN\x1f\xf7\x92\x98\x8dG)\xaft\x06N\xd8\x16'~n\x07 [\xff\xb9=WL\xc6\x16\x9d\xda\xa6\x7f~\xfcM,\x86\xfb)=\x82\xfd?\xb6\x87\xa2\xac\x9f{\xbeEU\xaad\xc1K\xf5o\xef\xe1$\xd8\x15\xbc\xe8\xedr\xde\xca\xb6\xa9\xcf\x11\xd9*\x8fB\xbd\x81;\xbax\x9e9\xaa\xc1K\xe9\xb8`\x95\xda\xa2\xee\xe4\xdb\xfcXl\x0fe\xedH\xf8$h\xc8\xb2\xde\x94\x8e`Q\xc0\xddR_l\x05\xe0T`\xa8@\x80\x8fH\xa8\x8a\xf5\xb2\xb8\x81~\xeb\xc8\x19\xe0\xd4\xb2\xdb\x8f<\x01\x1c\x8a\xee\x90\xf9a\xf4&/\x13k\x1d\xbe\xe9\x18\xdf\xf8\xa6]-\xa8\x9e\x02\xba\xb7\xbdx\n\xcfO\x0e\xf3\xa2:s\xc1\x0c;-a\x93C\x8c\xd9\x01o\xfaa\xa0\xbd-Z\xde1\xfe\x1f\xe2\x0e\xf8\x86\xae\x80\xa2\xf9\xc6\xdfdTSQMT\xcd\xeb/\xc7\x84\x8fB>\x0c\xfd\xb4\xe78\xa7\xff\xe9#5o\xcc\x1d\xfe\x91.8\xb7\xc7M\xdb\x1c\xf5<\x0e\xcd\x99\x9f\xce|\xfc\xdb8w8\xb4\x89\xc2\x1c\x1f\xbd\x0fcJ\xeb\x8fs\xbd\xe2t\xfaHW\x12\xcf\x87b!>\xd2%\xd9m\xb9c\xf5\x96}\xa4\xcb\x0d\xe3o\\\xfex^K\xfd\x0c\xdct,\x90\xa9\x1d\xb2\xb5o\xb2\xa8\x933\xd9\xe4+bX&\x89-E5\x93\xc8w\x8em\x19s[T\x1d\xf3\xc6\"\xac\x02\xf1\xbd\xaf0\xcc\xcb\x0b\x97\x08_\n\xca\xc01\xcb\xe2\xa8\xd4\xf8^=fdE|\x82|)\xb84\xf9R\x10\xd6\x07\xe4\x1d\x00\xa5\xce\x9f8\x7f<\x0eq\x07 \xf2.@\x02\xdd\x1aT\xc8\xad\x98\x83\xef\xf3@\n\x9av\x0dj\x1ai\xd8\x10\xf5\xaa%\x96~\x0d*<\x15\xfc\x80\xa6`\xb5\xd8\x9c8\xd14\xac\x16<\x15\x1bTeR\xb3\x11t\xac\x96\x95\x94\xac\x968Z6\xa8N\x91|Q\xd4\xac\x96Xz6\xa8\xf0\xa6i\xa3(Z-Q4mP[J\x92~)(\xba6\xa8eJ\xdfb([-\xd9h\xdbQ\xe1\x1a\xeaVK\x02}\xab%\x0b\x85\xab\x05O\xe3\x06UMh\xdd0\x95\xab\xe5\x11\xe8\\-\x8fE\xe9jy\x04ZWK\x0c\xb5\xab\x05M\xef\x065\x99t\xaf\x18\xdfa\x8aWK\x14\xcd\x1b\xd4&\xe6 ,\xd5\xab\x85\xc7\xd1\xbdZb)\xdf\xa0\xc2\x98\xb2\x00RVS\xbfZ\x02%\x02\xa4D,\x1d\x83\xdfH\xa3\xc4\xae2\xa3\xe8\xe0\xa06\xae\xe9a\x04%\xac%\xa6\xc5\x91\xd4\xb0W\xd7t5\x8b\xa0\x87\xb5DQ\xc4^M\xc1\xa2\x03RRH\xe3\xf0\xf8D\x15 \x90\x92B\x1e\x87\x14rT1\x02)yHd-H\xa8VK\x90L\xd6\x12A(k \xe4\xbe\x16\x92B,k\xc1\xe8\xf7\xa6\xd6\xcdF2kI3>\x9el\xd6\x82\xe9y\x02\xe9\xac%\x89x\xd6\xe2M\xac.$L@k\xc9IBk\xc9ADkA\x8e\xae\xd5\x84\xb4\x16$)\xad\x05CL\x1b\xc7\"\xc8i-\xc8\x9b\x17ORk\xc1\x13\xd5Z<\xe5\x12\xa4d!\xac\xb5D\x91\xd6ZR\x88k-\x11\xe4\xb5\x16\xccMB<\xae8=x2[K.B[\x0b\xaa\x99\x81'6\x9e\xdc\xf6\xaa\xbb~\x08\x13\xdcZRHn\xafB\x8dU\xf8\x0b1HI!\xbb\xbd\n\xb9\xde\xc7\xf4\x14e\x90\x12Kz{\x95\x8d\x148b\x0b)L~k\xf1\x16k\x90\x12O\x82{\xd5\x05\xca9\xe8\x83\xf0\xb4x\xe0\xf6\x1b$\xb9\xa7\xb4\x83\x94Xz\xdc\xab\xec\xe7\x9f\xbe\xbb@P\xe4Zbir-\x11T\xb9\x96h\xba|v\"\x922\xd7\x12\x98\x99 \x98~_\n\x96\x04\xc6\xd2\xe7\x83\xdeX\n}81\x86F\xd7\x120F\n\x9d\xeeU\x88(\x17!%\x85V\x0f>L\xe1\xd2\x11R\xe2\xe9\xf5\xe0\x1c\x1d(#!\xc5C\xb3{\xcfK%\xdd\xb5\xe4\x1c\xef\x11\xe4\xfb\xa0\x1aM\xc0kq\xafz|e(\xa4\xc8\x1d3_1\n)1;J)\x85)\xfc#\xa1m\x8e\xe8\xf2\x14R|E*\xa4\xc4\xf4(\xa9`\x85\x94\xe8\xb2\x15R\x90;\x99\xbe\x12\x16Rb\x0bY\xd8\xcf\xf2\x96\xb3p\x9f\xe2.ja;'x\x91\x84\x02\x17R|e.\xd4\x118{\xc7\x0c\x9a\xb5\x85/\xa4`\xca_H\xc1\x15\xc1\x90\xf2\x08\xdd\xcdU\x16C\n\xbe8\x86\x14\xb3\xa5\xd9:4\x1c\xbb\xaa\\\x86\x14D\xae\xed\xec\xc4M\xb0\x8c\x86\x14\xe4`\x80H\xfbA\xc6\xc2\x1aRP6\xc4\x14\xd9\x90\xf2\x88\xfd\x8e,\xbb\x11\xd4\xf79\xbb\xbf\xc0\x17\xdf\x90\x12,\xc1!%\xd5\nk\xcbqH\xc1\x17\xe5\x90\x92\xdaZ\xc4=\xcbV\xa6c\xaa.T\xacCJ\xb0d\x87\x94\xd4\xee'\x97\xef\x90\x82+\xe2!\x05\xd9D,\xf5\x1fs\x17\xe3\x8b{x\xd5\x15|U\x89\x0f)\x98B\x1fR\"\x0d\x17\n\x9f\x81d\xe3a\x0b\x80x\xd5\xa99=\xa5\x0c\x88\x94P1\x10)\x93\x1e\xae/ \"%\xf3k\x18_$DJ\xcc]\x83\xf8\x82!A}R\xc9\xaa\xb2!R\x90v\x84\x08[\x02\xaa\x90\x88\x14\xe4\x03\xa5%\xd6\xec\x80.-\x82Re\x94\x1f\xc1\xd5\x8c\x18\x05WfD\xcaG0JL\xe1\x11\x94B9\x0b\x07\xca\x8f\xa04\xc5\xd9\x14]\xa8D\xcaG2-\xaat J\x9b.o\x12.`\x82R\x873.\xaa\xd4\x89\x94\x08\x83\xc6\xbc\x15!\xc1\xf8\xb1%P\x82\n\xef\x8a\xceW\x08E\n\xba\x1c\x8a\x14\xa4\xbdb\xfa\x9e\xb1@\xca\xa00\xaeL\x8a\x14t\xb1\x14)\xd1%S\xa4 \x0d\x88]\xbb\x86*\x80H\xe9\xe2K\xa9x\xf5\x89]\xd5\xb8\x82*R\x10eU\xa4\xf0@L\x97\x14od\x97\x14\xa4\xbd\xd1\xc9\n\xb0&\xcfVzEJL\x01\x16)\xd8G0\xad\x18\x8bS\xddX\x92\xc3\x1bq\x11_\x98\xc5\xa9J\x16l\xc1\x96g\x91\x12]\xa4\xc5}\xf5\xb1x\x8b\xbfT\x8b\x94\xa4\x82-\xfe\xae\xa3\xca\xb6H\x89-\xde\xe2TdL\xd5\x88\x12.R\x92\n\xb9\xb8[P\x0e\xf8\n\xf7\x97s\x91\x92V\xd4\xc5\xdb\x19\xb6\xf3\x94v\x91\x92V\xe0e\xf1\xb4\x8a\xb4G\xd3\xccBCq\x97\xb2\x8b\xa8\xef2\xcbv\xf4\xd3\xdbW\xf3\xb6S\xa9\x97\xe9\xdb\x97J\xbdX\x04\xfbn\x89\x0d\x86\x95\x03\x98J\xbd \x82\\m\x1c[tp+>\xa8\x95J\xbdh\x89\x0dV\xf5\xee\xe4\xc7\x04\xa9F\x05\xa7R\xa9\x97\xb5A\xa7 \xc1\xa6Y\x82L\xf1\xc1\xa5T\xea%G\xf0hL\xd0(:X\x94J\xbdP\xa9\x17\xf4*)*\x98S~.Q\xa9\x17*\xf5\x92+\xc0\x12\x19\xdb\x17\x0c\xa8\x8c\x08\xa4\xc4\x14 \x89 \x9c\xa4R/)\xd5RB\x81\x8fT\xea\x05\x1f\xc8\x88\x0c`\xc4\x04.\xe2\x02\x16\xa9\xd4\x0b$\x06\x1eF\x04\x1cR\xa9\x97\x88\x80A*\xf52\x93\xd8\x00@*\xf5bSG\xa5^\xac' \x83\xf0\xa8\xd4K\\0\x1d\x95z\x19\x84J\xbd(\xd1eS\x16<\xef\xe43z\xca\x03\x8fd\xaf\xfa\xfbP \x85/Kh\x98\xd3\xd2\xca\x82)\xe0`Gb\x0b\xa9\x08;\xa83leS\xde\x0ev\x9a\x94LQj,\x10\xec\xa4H\xca;y\x98P\xa2\xbf\xb5\x9fl\x8d\x14\xd3\x14\xa6L\x1a#\x0fRO\xa3\xf0'\x88\xf5\xd3`$MmH@f\xf9\x1e\xf2\xfa\xf4\xfc\x1e=\x0c\xfe\x1d\xdc\xd0\x9atf\xc6i+\x18K2\xdb\xea\xb1\x9b\xa0-\xb6\xd7\xea\xb1\xb87\xd2\x99\xfbZ\xe5K\xe2\x1f\xc6\xa0&\x0d\x9f^T7\\S\x8b\x03\xa3`\xe4\x8aw5\x9d\xd5\xbc\xf5zP\xb3\xb6\xdb\xb99h4\xc5\xe8\x0d\xe8?\x89\x05e)v]\x87\x9b\xe1\xd0d\x10\x1b\xc2Co\xfc\xfb\xf3\x13k\xe1T\x94\xed%o\xcb\xc6\x1a\xf2c\xd4Uz\"\x96Y\xb6H\x1bh\xbc\xcd\xc64\xab\x8fqrD'\xd6veg\x0d\xa1\xe9\x0d\xbb\xd9\xb1\xbaq\xc4\xc1\xc6=\\\xa3\xb6 Z\xdb\xffY\xf8\x0b\xb6MY\x83\xf8\xbd\xac\x15\xb7\xb8\xd4x,\xeb\xcd\x8c\xc9Ol[\x88f\xb3\\i\xa0\xd1\x0fEY\xbf\xb8+wl@.\x83!\x00\x12\xe6\xea\x97G\xc5\x8c\xb6\x96\xa05H\xf8k$\xa0&z\x10\x94\x8c|\xa7\x04\xe9\x18\xc5\xc3\xc8\xa3\x05\x073\xd5E\x18\x0ca0A\x1f\x10n\xa6\"\x0c\x860\x18\xd7\x91\x84\xc1\x08!\x0cf)\x84\xc1\x10\x06\xe3\x12\xc2`\x08\x83\x11B\x18\x0ca0\x84\xc1\x10\x06#\x850\x98\x14\x92\x840\x18\xc2`F!\x0cf)\x84\xc1\x10\x06C\x18\x0ca0\x84\xc1\x10\x06C\x18\xcc\xef\x01\x83\x89\xc6E\x9a\xa6\xf2\xc0\"MSM0\x91\xfe\xf0 \xf92\xa1C\xfa\xc3\xd5\xdf\x9f.\x142t\xd8\x94)\x12\xd2w\xd2t\xf1.z=\x8a\xd7\x97\xe5\xf7d\xd5\x0d\xdf\xc8l\x04\x1b_\x0e\xe2\xc0^\xce\x1a\x0d\x93^K'l\xd3Th\x17lo\x95\x9f\xde\xbe\"\x97+\x90\xcb5\xb8\xdf\x88\xd9\xb2\x03r\xb9\x92\xcb\xd5y$\xb9\\\x85\x90\xcbu)\xe4r%\x97\xabK\xc8\xe5J.W!\xe4r%\x97+\xb9\\\xc9\xe5*\x85\\\xae)^Kr\xb9\x92\xcbu\x14r\xb9.\x85\\\xae\xe4r%\x97+\xb9\\\xc9\xe5J.Wr\xb9\x92\xcbu\xe9r\x9d\x07W\xdb\x1c\xaf\xbf\x8c\xb1\xd0\xda\xfdZT\x95\x11\xfe\xac\xf7V\xf9V\xe6\xf6\xdf\x97\xb7\xa2\xb2C\xc1\xcf\xc3\xee\x85\xeb\x93\xfdo\x07V\xc3\xb6\xa8*\xb6\x93\xe5s\x8bZn\xc3\xc8\x18\xf7\xe7r\xb7J&=\x90\xdb*\xdb\xa6\xee\xce\xfd\xab\x0d\x0e\xe5\xfe\xa0\x92\xbe\x0f\xfa\xcc\xdc\xf1\xfb\xa2\x93%*\xfa\xa5\xc0^\x05\xc2\xaa\xd9\xb6\xec\xa0\xacUZ\xfe\xea\x01:\xc6\xad^\xe4\xb1\xef\xea\xd7'\xebK\xf6\x85\xc9\x7f\n7\x9d4c\xd3n\x8a\xdd\xaee\x9d\xe3(\xd4^\x15f\xbb\x07,\x97\x9c\xf8\xcd\xf5\xdf\xe6%\x84\x9e\xb9\xb7\x1b\xb5\xbe\xff\x03\xd7l{\x00Vo\x9b\x9d\xd8Q\x16\x93\x94\xfde\xdc\x8fNVw\xe7ns:_\x7f`\xce\xda\x9e\x01\xeb\x02\xc2\xc2\x80p\x86\x02\xce\xc2\x10aeHp\x8cz\x95\xd9w\xc7<\x9fX\xb9\x1d\xa4\x10v\x92B\x82\xa3\xd4\xdf\x81\x82\x1f\xd0\xceR\xc8\xe50\x85D\xa7\xa9Wao\\\xb4\xe3\x14\xd6;O!\xda\x81\xeaU\xa5\x1c;QNT\xc8\xedH\x85Hg*\xc4:T\xfd#{p\xb6b\x9d\xaa\x90\xdb\xb1\n8\xe7*\xe4t\xb0\xc2j'+\xa49Z!\x97\xb3\x15\x92\x1c\xae\xfe\xc7\xc1\xa8\xa8\x13\xe8\xc2#8^\xe1\x11\x9d\xaf\xf08\x0eX\x88t\xc2B\x9a#64\x05\xe3\x9c\xb1\x90\xd7!\x0b\x11NY\x88w\xccB\x82s\x161e\xfe\x01\xe1\xa0\x85\x1cNZ\x089j\x01\xbfG2\xe4r&C\xacC\x19\x12\x9d\xca\x10\xe7X\x06\xc4M\x08\xc73`\x9c\xcf\xb0\xc2\x01\xedT\xd8\x1f\xe8sBCnG4\x04\x9d\xd1\x90\xea\x90vj\x93\xdf\xf6\xfem\x8e\xb0c\x1a\xfc\xceiHrP;Uy\x1d\xd7\x90\xea\xbcvj\x93+d_\x05\xe4lNl@9\xb2!\xc1\x99\x0dq\x0emHqjC\xb4c\x1b\xfc\xb3\x08\x04\x9c\x8d\x10\xe1p\xc4:\xb9!\xc5\xd1\x0d\xb1\xcen\xf0w<\xc5\xe9\xedTf\xb8\x94\xb1\x8f\x0c\xce\xf9\xed} \xea\xbd\xdf\x01\x0ey\x9d\xe0\x10r\x84\x83\xdf\x19\xee<'\xd5I\x0e\x19\xc7n\x84\xb3\x1c\xa2\x1c\xe6\xe0\\\xa0\xfcwQVl\xe7\xf7\xdb]7M\xc5\x9c\x9b\xea\xd8\xdd\x0dy%\xe5\xa5\xdc\xc1\xdd\x81\xa9=.\xb3\x9ez?\xc2\xaf\x19\xab\xd5\xd1\xee;\xdc6\xc7\xa1\xa0\xb8p\xbdKG\x805\x195\xa8C\\\xbd\xc4\xf6@]H\xa5r\x1e\x1b-\xff\xee<\xeds\xd9\xce\xcb!\xdd\xb8\xfa/\xe1\xf8\xb1\x9f\x82\xd8%c\xf5\xd9\x91[\x1b\x04\x0b\xf1\xed\x8f?\xbc\xde\xbc{\xff\xf2\xfd\xcf\xef6?\xff\xf0\xee\xed\x9bWW\x7f\xb9z\xf3\x1a}F\xff\xaf\xc8\xc3\xaf~\xf8+\xf2x\xafr\x1d\xc4\x1c\xd5\x05_\x146\xca\x9e\xd8A /\xa4\x86\xb1Zo\xa8\xc2\xfb\xfa\xb7\xcf\xcbz[\xb9_\xfc\x1d\xabn^\x8c\xb9\xe4\x1d\x83`H\xe7\xbd\x91\x05\xf3?B\xd7\xe6\x97\x1c\x89\x82\x86\x17\x95*\xdc\x0fe\xd7\x9d\xa5\xb7\xc5\xfd*2x\x03#/\xb9\xab\xa3c\xebVw`8nBC\x98\x7f\xe7\xac=v`/\xf8?\xca\xd0\x01\xff\x13\xba\x9ah86u\xf9\x81Yb\xe4GA\xdc`\x88\xb0\x11\x8cW\x1d\x0b\xaf\xc0\xe1|,\xea\x17-+dB}\xb1\xa2\x0b\xd9\x080v\x02\xc5Fp'\x1b\x02\x8f\xd3G}\xd9\xb1\x93c\x98\xed\xf8cW\xee\xeb\x82\x9f[\x06\x9f\xb3{\xffg\xf0\xcfo\x9b\x96\xf7o\x99\xffd\x0f\xd7E\xc7\x9c\x937\xc0\x1d\xbb\xeeJWy\x01))=Vj\xad=\xd2\xbfUe\xfd\xc17\xf5l\xcfm\xc9\x1f6\xe2[e\xcbs\xb70pO\xe6\x97\xb7\xf6\x84\x1d\x8b\xb2\n\xe2\x03Z\x15(U\xee>;\xd39\x8c\x92\xd2U\xa5V\xbf\x08\xa4\xc3n\xe8\x84\xfa\xd5\xde\xaa\xb1V\x8c,t\xb4bj\x0f\x97\x06\xc1\xdf\xa1y\xb3\xf4\xddy\x0e\xa5Q\xb8\xe6\xb9\x98Q\xd5\x11\x1e\xccH\xae\xf5\x85\xd3w\xbe\xbc\xdb\x9fk\x7f!\x1c\\\x81\x9e(\x03\xed\n\xce^\xf4\xba\xb2\x19I\xd6\xf6q\x9b\xe8X\xd6\xb2\xfe\x8fo(O\x17\x92\xbc\x11N\xff\x8aq\x162\xd0X5\x04\xf5\xd2\x1c\x0f\x9f\xbc\x18\x8d?/\xcbO\xcd%\xd3+oV\x19\xc5\xfb`b\xef\nX\xf4N:*\xa0\x9c\xa2\n\x17[\x91\"\x15H\xd8b\x00\x04\xb6-+\xb8\xfc\xdeE\xbc\xf6P\xf6\x02\xa4\xcd@\xb5)\xb4\xa3\x8fx \xb4\xc4\x98\x16t\x15\x9ar1l\xc4\x9fe\x1d\x9a\x9d\xbbR\xd0(\xe3j\xf09\x08\x84\xffF\x80m\xf6\x92=\xa3\x1c\x8b{O\xc5\x9eQ\x1e\xd1\x00\xba \x93q\xa5\xebd\xcd,\x12T&g\xc7i5\x1fv\xcbZe\xcah\xdbH\x12\xe7)\x98\xc8h\x89\xd5R\xbb\xa2\xf4d9\xd1R\xd6\xfd\xd3\xd6\xb1\x05\xc0lXZ\x1a)\xa8*l\xc4\xf3\xa9\x7f;x\xdf4\x807\x1c\xf6\x8d\x03\x91\x066Z\xa9\x9fC\xe1D\x10\x7f\xb0=\x95w\x01\x00Q\xde\xa9\x9d\xdd.\xc7\xb2\xde\xf4\x1f\xaa\x9b\xf1Cu\xc5[\x18\xdbO\xcbU\x17\xdb-\xcf:\xf1\x05\x0d;\xb6\xad\x8a\xd6\xb3G\xa4\x0bl\xa9\xa3\xb5Bon\x8c\xb2\xde\xb2\xfem\xd9\x1d\x9b\xeeE\xb7\xfb\x00_\\\xfc\xe9\xcf\xd6\xc3\xc7\x85@So\x0eM\xb5\xdb\xb4\xecf\xb3m\xce\xf5c\xaf\xe7B\xe5\xc7\xe4\xe6\xbc\x08\xf485]\xc9\xcb[&\x03C\xcc\xa5\xd8\xb3n\xec\xc1\xb0\xeb\xe6Q\xd8\x9cN\xd2\xa9\xc7\xee9k\xfb%\xae\x0cY\xb1\x0f\xb1\xd18\xe5.\xb0sa\x8f\xd3\x90\xe2\x8c\xd6\x90\x82\xb0\xe7h\xd1\xf3:\x93Ve\xc7'\x05\x1c\xa1\xdcu\xcf\x81\x15\xdb\xc32\x0c\xa0_#\xb8\x8d9\xaah\xe6w\xc5r\x0e\xe6\xd1\x19\xe2v\x8c/\xfaA\xe7s\xe0\xcd^\xee\xb5\n\x0f\x97\xf0N5\xbc\xb0\xfb\ne\x80\x91&\xe0\xfcW{\xd6\x89-X\xbd1\xa4\x82|\xcb\x16\xd8\xbd\x9c[T\xe9\xbaF\x14\xe8s\xac+\xdfUEw\xe8\x8d\xa1\xf3#\xb9\x88\xfe\xa2\x7f\xe2\xe5KA\xb9F'\x97y.9`\x81\xa5\xca@'\xab\x96mQm\xcf\xd5\xe0/\xbc9\xf7\x1f\xff\xf6\x0b\x9e\xebq\xd2\xe8\x84\xed\x9a3\xef\xc7d+\x97\x81\xcd-3\xab\xee]\xa8\xe8\xae\xbe\xab\xf6\x0e\xb4\xd3\xbdB\xfbU\xa7\x03\xe2\xf9\xec\xedWv\xfd2tWr\xcdj\x16\xc6\xccf\xd5wwh:\xa3\xc0\xa3\xfd\xa2\xe6m,\xbb \x15m\x8c\x08\xd1\xb5\xb1\x0bVM\xbbrp\xffK\x0f\x8f@{\xedW\x9d\xdc\xbf\x0b\xf8\xa5\x11f=5wL.\x88\xae\xd9p\xbb\xd8N\xb8\xf4\x9d\xc3V\xbb\x02D\x17\xecW;\x9e+^\x9e\xaaROc\xe6\xb5\x17'L\x9e:#\xf6o\x843U\xbdZ\x19#\xb8\x03wy\xd41\x18o9\x93M.cD\xedMR\xa0\x8e\x7fV\xe3\xde\x16W'\xc5\xfb\xc9\x11\xc8\x89\xca\xee\xf9\xc6\x19\xc2\x15\x9cj\x83\xc0\xee\xa4\xab\xff\xe3\x9ahu+\xf4[\xbf\xffO\xc5\xbc\x17]'\xb7\x9d\xdf\x16{\xf6\x13\xfb\xfb\x99u\xfcB\xfe\xeeP6\x16\x8f\xee\xd5\xf6\x86dpl:\x0eL\x90\xe3\x029\xbf\x80+n8\xe2\x82\x1e)[.$\x066F\x045R\xb6\xdc\x0cA\x8b\xc1\x80\xc5\xd4`E\xe7{\x93\xb2\xe5.\x84\xb2\xe5R\xb6\xdc\x99\xe4\xc8\\\x8a\x0d$\x8c\x0e\"\x8c\n \xa4l\xb9<-P\x90\xb2\xe5j\xd1o\xe1\x91\xf0\x1d\xd7J/\xc4\xfc\xfa\xcd2\x84m\xf2\x19\xad\x02\xdfX]\\Wr\xebI\xbaV{\xb3\x19\xceq\x91\x13W\x02\xb2\xb6\xa4\xb8 \xde\x1b\xdf\xc8s\x8d\xbf\xb5\xec\xef\xe7\xb2e\xbbo\xe0\xa6\xa8&\xdeA\xeb^\x85n\xf2\xe8\x17\xbf\xf8\xc0\x1e\\M\x9fy\x9a\x95k\xb9P\xb3~\xcb\xf8\xb9\xade\x96S\xe9\xedT\xde\xbd\xc1\x0f-\xf6\xef\xf6\xb3\x8d.\xd1\x83\xbe\xa3!\xdf\xf2\x8f\xfd\x9b\xb8\xa9\xc5\x07~ss\xd31\x11@2m.\x18\xfe\x07#1/\xe4\xb1\x96c7\xc7bD\xd9>\x97\x1dg;)\xaa3\xc2\x94\xf5\xf9\xc8\xdar\xab\xff&&\x08\x85o\xc8\xad\xac\x03\xab\xb5\xe1\xcf\xf5\xb0{8[h_ m\x15\xeb\xba\xd1\x84r\xbf\xed\xdc\xf5\xa6\xfe\xc0\"\xed9U\xff\xc8\xc6\x9dy\xea-\xe6\xad\xcac\x89\xb5\xae8V#\x10.\x07\xbe\xdcY6G\xb0bC\xce\xd5\xcc\xe3,\xf7\x91\xcc?]\xdd@\xc5n\xb8\x06\x1e\x14\x01\xa1W\xb3bS\\> \xf2\"\xbd\x9d\xaf\x1f$\xecV\x9cN\x9f\xd0\x8a&\x860\x9e\xef\xb3\xa5qFoQ1B\x1b\xe0\xed\x99A\xff\x1fe\xbd+\xb7\x82RS\xee1eAq\xa0\x1aH\xa6\xba\xb2\xdeV\xe7\xddl\xadZ\xc8\xab\x0c\xfe\xc9\xd9\x1d\x13\xdenc\xdb\xbc\x9f6'T\xcfD\xd9\xcfW\xdd\xecn\xcd\xba \x96\xf7-\xeb\x14\x97 \x1e\xaf\xf1y\xec\x1f\xb9\x0b\xf54\x95\xfb\xba\x99\x13\xb2\xfai\x9c^BZf\xed\x8d\x9d\x07\x8a[n`\xcbnY;9\xd5w\xf3\xd4\xd1\xf3\x1bW\x1a\x18K\xcb\xecO\xc2DO\x7f\x0d\xa6\x98\xcbv\xc7\xda\xf9\xa7\x84\x95\xfb\xfd*\xab5\xd2s\xd5_\xfe:\xfc\xb7\xc8\xf5\xfd\x0f\xa9\xc6\x9b\xbc~\xc8]o\xa0\x83\xf5M#\x86\x9e|7\x8f?\xa8\\\xe1\xfa\xe6\xdb3\xc2\x7f\xa6\xfb\xfc\xd4\x13\xc2\xbb@\x94$(\x0e\x97\xd6=\xe8R\xc1\xf8$r't\x8fO\xe7\x8eK\xe6\xee\xb5&\x04-\n\x08J\x07aQ@[\x15RY\x1d\x8f\xbe\xa8\xf4\xedYy\x9d \xb1\x93\x9b\xd9\xc1S;\x99\xb8\x9d4r\xc7\xa3.2a\xfbJz'7\xbf\x13I\xf0dfx\xe2(\x9eH\x8e\xc77\x86\x07\xc2\x07K\xf2dfyP4OF\x9eg-\xd1\x93\xc4\xf4d\xa2zR\xb8\x1e\x8f2tJ\xf6G`{\x1e\x8f\xeey\x14\xbe'\x8e\xf0\xc9\xce\xf8`)\x9f\xac\x9c\x0f\x9e\xf4\x89f}\xe2i\x9f\xe0T\x88K\xbe\xbe\x9a\xf8 &^G-\xa8\x10\xdcO\xcc\xaa+\x9a\xfd\xf1\xbd\x04\xd1\xe9\xd6q\xed\xcbH\x00\xc50@\x99)\xa04\x0e\xc87\x82P)\xd6\x13Y \x876\x8eJ\xaf\x9e\x87\x07BC-\x08&(\x8a\n\ne\xd9M!\x83B:\x9d\xfe\xb1L|P\xbc1\xf1\x8cP\xa8o \x9cP\")\xe4\xcf\xec\x1c\xa6\x85\xf2\xf2By\x88!\xc4\xd8XM\x0d\xa1\xb9!\x1c9\x84e\x87\x10\x03'\x9e\x1f\x8a!\x88\xbc\x89\xd2\xb3PD\x91\x1cQ\x1aI\x14\xc5\x12\x85\x8c\xeeO\x8e\x1e8\x17\xcf\x14\xe5\xa3\x8a\x82\x8dr>?\xf9\xd8\"\x04]\x94\xce\x179\xd4\xf1`*\xf4\xac\x8cQ\x882J\xe4\x8c\x1c\xba\xc2)\xd0\xc3\xacQ \xfdyn\xde(;q\xe4f\x8erRG\x18\xee(\x9e<\x8ab\x8f\x12\xe8\xa3X\xfe(\x90\xd2\xdc\xdf:,\x11\x82\xa5\x90\x128\xa4H\x12\xc9\xd3\xdd\x14\x1a\xc9\xa1\n\x91\xc4<\x85H\xf2\x0c\xf9p\x02\xf3\x8cTR0y\xf9c\x90I\xb9\xc6b\x04\x9d\x14\xc3'\xd9\x97\x07\xbe\xc4\xe4\xdc\xeam6\x05\xb7\x0b\x90\x92\x92\\\xa4\x1ew\xe8\xc3&$\xf7\xa5#\xc7\xb5<)\x15yt\"\xf2\xe0\xae\x91/ yl\n\xf2\xa8\x04\xe4q\xe9\xc7\xd1\xc9\xc7\x13R\x8f\xfb\x12\x8f\x07\xed\x87\xbb\xd9kS\x8ec\x12\x8e\xe3\xd2\x8dg\xeaP\xaeD\xe3\xf84\xe3f\xbbV5|8jU\x82\xf1@\xfeP\xbe\xde\xc7\x1eL,\x1e\xbc\x95\x80\xb6\ndL)\x1e\xcc\xac\x1aN'\x9e\xb9g\x99\x13\x89\xa3\xd3\x88\x07\x93\x88\xc7\xf7sm\x02q|\xfa\xf0\xf8\xb6y\xefA\xb6\xc4\xe1\xd8\xb4\xe1\xc1\xa4\xe1\xf1\x1dLN\x18\x8eK\x17\x1elP8\xb5$\xee~\xe4L\x13\xbe&I8&E8\xda(\xfed\xad\xb1\x86\x89I\x0d\x8eyK\x00:1x(-\xf8\xa4'\xeb\x93\x82gxQ\xe1\xd3\x81\xe3\xee\x02\xc4\xa7\x02\x97\xe9\xbe=\xfaV%\x02\x0f\xda\x08Pv\x02T\n\xf0\xe0\x80\xd7\x827&\xa0\x93\x7f\x9b\xc9\xbd\x03\n\xd1\xe9\xadq\x89\xbf\x1f\xa9\xdb1)\xbf\xe5\\\x16P\x98#\xe1wT\xba\xefG4\x0c*\xd1\xf7\x90\xc8;\xa00\x98\xe6;h\x1aT\x12o\x949p\xef\x04\x882Z\xe6\xe4\xdd\x9e\xd4\xdd\xe8\xc4\xddA[\xe0z\x971ewt\xc2nt\xba\xee\xe8d\xddA\xe3\x84WS\xa1\x0c\x9d]\xde$\xddq)\xba\x11 \xba\xa5 \xdc\xe9\xb9\xbd\xc9\xb9\x83\xf6\xcb\x92\xe44[R\xee\x98\x94\xdc\xe1\xc7\"-\x1d\xb7J\xb4l\xd1\xe7N\xc6\x9d3\x1572\x11wt\x1an3\xe5\xb6\xbds\xee$\xdcySpc\x12p\xe7M\xbf\x8dH\xbe\x9d\x94z[\xa7\xd9\xb6\xe9\x0b&\xdeNK\xbb\xad6\xb7-\xfa\xdcI\xb7\xd1)\xb7qI\x80\xa3s\x00\xcf\xb4Q\n`)\x94\x02\xd8\xfff\n\xcf\xf0R\x92\xc2\x8a(\x050&\x98\xc8F\x95D\x87\x12\xa5\x04\x12Q\n\xe0\x8c\xe1C1\xc1CQ\xa1C\x94\x02xm\xc0PB\xb8P\x96`\xa1\xf8P!J\x01\xbc&D(&@(sx\x10G\x05\x07e\x0c\x0d\xc2\x06\x06\xf1\xb8\xb0\xa0\xd8\xa0 J\x01<\x91\xe80 J\x01\x8c\n\xfeI \xfd\x01J\x01\xec\x90`\xb8OD\xb0\x0f&ylL\xa0\x0f\xa5\x00N\xc9\xa2\x1b\n\xec\xa1\x14\xc0\xf8`\x1ed(\x0f&\x90\x07\x17\xc6C)\x80!1p'\"l\x87R\x00g\x08\xd3 \x06\xe9\xa4\x86\xe88\xdf\x9b\x94\x02x!\x94\x02\x98R\x00\xcf$G:Vl\xf0Mt\xe8MT\xe0\x0d\xa5\x00\xe6i\xc16\x94\x02X\x0b&\x05\xf04\xc9\xa0\xa1j\xf29==j\x02\xfe,2\nN\x12\x05\x9b\x93S)\xaa\xddNf\xc41\x99\"o\xcf\x81\x94\xa1\x19S)^\x1a\xfee\xa9\xd2\x9bV\xf1\xb5\xe1\x8d\xd6\x19\x16\xb5S\xd6\x99`Q\xf7\xdc\xb5-!}\xd6E\xa5\x83\x8b\xa0\xa8\xe5V\x93\xc47\x9e\xcb\x1d9iH\xb9u\xb4m\xea\xee\xdc\xbf\xbe\xe1P\xee\x0fsp\xc0\xf43\xef\x8bNb%\x93:\xc2\xf2\x8dRvP\xd6\xcaI/\x13m\xe9\x96\xdaS@\x1a\x9dW\xc7=\xd9l\x90\xe3]\xddX\xda\xa8\x85\x7f\x02\xf7d\x88\xca\n^\x00\x10\x17\x81I\x8c\x8d7w\xa5\x14\xc4\x8e 7\xd6\xc6cg\xd7\xd7T\x98\xceD9\xcdh\x89\xd3\xe5^\xe8O\x9f\xeb\x8f\xdf\xdd\xc5\xf5Wt\x17\x01\x15\xfb\x82\xb4\xa4\xa4\xf4q\x12\x8d\xa5\xd6\xb5\x03\xd4\xa7~l\xd9\x96\x95\xb7v\xf6p\xa1\xd0c\xb4q6\x19\x97\x12\xd2b\x82\x88\x91l\x94\x0cn;\xf4\xb3\xd5\xf5\x83\x1b\xdf\x02(\xb6\x02\xe6S\x89\x8f\xddo\xe8\xe6\xae\x96\xdfxM\xcd\xc6a\xa5|\x0e\xc2\xeb\xd6l\xcbb\xc0{|w\xea\xd6\xe4f\x9a\x9b^\xa3\xfb\xba\x81[z]TE\xbd\x0dl\xd8g\x98\x12\xea\xc6\x19\xae \xd81#\xdf6+\xd5`G\xc9\xab\xa6\xac\x0d\x8aN\x0c\x88\x91\xbc\xaa\x9b\xa3~\xa5\xf57\xb0\xa8U\xe3|\xde\x9c\x1f~|\xff\xe6\x1b\xf1U\xa8\xe8\xaa\xe1eX\xd4pUs\xb5\xf0\x1c\xfc.\x9dw\x10\xa8U\xa9\xa2\x8a\xdc\x8f\xab\x8e\x0e\xeb\x86\x85N?\x08\xf7\xcd\xbe\x11K\xbeT/\xc6\xf8\x10\x99lT\x7f\x85\xdb\xa2\x12 \xf4\x1b\xf3Ac\xf7[v\x92\x19\xfa\xad\xeaJnxD\xec\xbdQ#u\xbe\x04W\x93\x83\xb2]'\xab\xe3w\xe7\x92\xeb\x84\xe7Ve\xdbJd\xf9\x1f^\xd1s3\x8cK\x96\xe5p\x9b\x98\xc7X\xdb\x98+\xd2I\x92u\xf5i\xbf\\sH\xf1>c\xfe\xa7K\x17\x8bp\x03I(\x94\xd8\xe9k\x9bt\xf5\x7f\\\x0f\xcbP\xb2B\xbdx\x86\xea\x15p*\xbaN\xfa\xd7\xcd\x8a\xfe\xf2w\x872\xb9\xda\xe4\x81\xf2\x16W\xdc\xf8\xee\x13\x95\x04\xb2\xb6\xdc\xea\xbf\x89\x19B\xe5\xe5\x91{Y\xaa\x82\xbbt\x11\x0f\xdb\x87\xf3\x12\xffB[\xd5\x0f\x9d\xc1\x84r\xc3\xed\xdc\xf5\xa6\xfe\xc0\"\xed9U\xff\xc8\xc6\x9d\xb9\xef-\xe6\xad\xcac\x89\xb5\xae8Vs\x11.\xaf\xbe\xb5\x8a\xbc\xfau\xa2\xed$7\x92\xcc?]\xdd@\xc5n\xb8\xa6 \x14\x16\xa1\x97\xb3bW\\> \xf2\"\xbd\x9d\xaf\x1fd\x9e\xb2\xe2t\xfa\x84V4\xd9\x84\xf1|\x9f-\x8d3`V\x96\xbf\xff\x8f\xb2\xde\x95[\x91jL\xf9\xc7\x94\x05\xc5\x81j \x99\xea\xcaz[\x9dw\xb3\xc5j!\xaf28(gwL\xb8\xbb\x8d}\xf3\xfeu3A}&\xca~\xbe\xeafwk\xd6\x05\xb1\xbeoY\xa7\xc0\x04\xf1x\x8d\xcfc\xff\xc8)\xac\x10\xca}\xdd\xcc\xd3\x17\xea\xa7qz i\x99\xb57v^\xe1\xc2r\x03[v\xcb\xda\xc9\xa9\xbe\x9b\xa7\x8e\x9e\xdf\xb8\xd2`[Zf\x7f\x12&z\xfak0\x950\xaf\xdd\xb1v\xfe-aM\xcc\xf8UVk\x0c\x04\xef\xbd\x81^\x00>\xcbc\xeeE\xdf\x11c#\x84\xbd\x07U\xe0\xc6Bn\xe0='\xee\x8e\x82\xdd\xe3Q\xf7\xb0a\xd21w(m#\xc6\x0f\xb9gD\xdc\xfd\x80\xbb\xbf\xe3bAc\xef\xb9/\xf9\xe9b\xf5\xa0e$v\xc7V\x10\xb2;\xfb\x95\x90\xdd\xd0\xb0\x1c\x85\x90]Bv\xedB\xc8\xae\x10Bv\x97B\xc8.!\xbb.!d\x97\x90]!\x84\xec\x12\xb2K\xc8.!\xbbR\x08\xd9M\xa1^ \xd9%dw\x14Bv\x97B\xc8.!\xbb\x84\xec\x12\xb2K\xc8.!\xbb\x84\xec\x12\xb2\xfb\xdbCv\xa7\x08\x89\xab\xcd\xd3\xa3&m\x1ei\xa4Gn\xf3\xc7\xa2\xb5.\xc7\xc2\xb6sx\xc8\x86p\x194\xf3\xcf\xfaD\x0b\xd6e\xd4\x97\x0dr]\x83B'\xdfe\xb9\x92:\xec\xc9\x82^\xd2\x00\x8f\xc1v\x85\x98\xa4\xe0f\x9dg\xa8\x07q#?9\x85\xa4\xa6\xe2Z\x18 D\xf9\xa9\x19V\xf3\xd6\xeb ^Y\xbfyu\xc6\xc9m\xcb$\x1ex`\xe5\xfe\xb06i$\x00\xa6\xee\xb6\x14\xcc&\xa8\x96Y+\xf5\x1dQ\xff\x92o\xe2\xfe\x0f\xc34\xe0\xd5\xc6\x9b\xe6\x03\x9c\xaabk\xdd\x9c\x95\xb2m\xfa\xb7\xae\xb8\xa6\xbf`}\xb4]\xc2E\xeb#m3m\xa9\xb6\xcd\xb9.\xefe\xf1\xfa~2\xc4\x19fT\xe5\xd9\xdc\xa8K^\x16\xd5&\x90\x10\x15\xf0\x86\x89\xe9\xec\xec\xea\x93W\xa5\x02\xf0\xd4!\x1e\xc7+\xa8iww\xae\xa4WO!\x82Pp\x94 \x1e\xa9\xeb\x9e>\xc5\xb7\xd1,\x1f\x9f\xa1\xa1\x88\xa4\x8dRT\xc6\xc3\xabz\xdb\n\xaf\x90,\xf9\xee\xa3N\xcaN\xcc\x92\xee\xdb5v\xa5\x9f\x00\x9aj\xb7i\xd9\xcdf\x9b!\xc7-DLW\xa1\x9c\x94R\xde\xf1\xb6\x14\xb9\xdaOMW\xf2\xfe~\x957F\x1f\x9f\x99+\x95\xfe\x83\xe7\x9a1\xb7\x7f\x12\xc4\xe7fs:\xe9\xea\xdc\x9c\xb5\xfd\xf7\xb6\xcc:\xefr3b\x1f'\xcb\"\xe7M\xdf\xc6\x91m\xac\xcd\xaa\xfb\xbe\x17\x0dH\xa7R\xcb*v[\xd4\x1c\x8e\x8c\x17\xbb\x82\x17\x08\xe4V\xbd eT\x839\x83\x9b$\xaf:(\x05L\xb4-\x1a;\xde\x88\x12\xfcU%6Y\xa0+\xeb}e,5\x9e\xd9L;6\xac\xff\x7f+\xb7\xdbO\xb4\x83\xb6q\xe1\xd9\x7f\x0c\xd6b*~!B1\xd8\x0e\xaa\xb2\xe3\x8fI\x1a\xdaN\xbf\xb4\xadjg\x07\x12\x81\xa8\x84\x08D\"\x10G!\x02\x91\x08\xc4Q\x88@\xe4D \xda\x85\x08D-D \x12\x81H\x04\"r\x95D\x04\xe2 D \x9aB\x04\"\x11\x88\x16!\x02\x91\x08\xc4\x90\xf1\x89@t\x9eC\x04\xe2D\x88@$\x02\x91\x08D\"\x10'\x82\xa5\xc1\x88@\x14B\x04\"\x11\x88D \xaeksN\x02\xd1\x06\x19*\xe56\xca\xd0\xd8\x01\x19j)Z\xdc\xa5\x9d\x8574\xf4\x8b\x17\xe6\xa0h\xc1\x85\xb9\xf6\\~+\xd5\xe5m\x06Q'g\x83SQx\xea:@\x15\x8c\x0f\x88\xe5x\x9f\xf4\xd6\xf8\xd20\xe7\xaaI\x02x\xb5\x8b\xb8\\\xf8K\xf1.\x84\xfc\x0b ]\xc8\xc2\xcd>z\x1f\xc6\xa0[\x7f\xd2\xd5Ee\x7f-C9\x0d\xf5\x86\x1e*k\xc0\xa9\xe8:\xf9\xf6\x91\xf57\xfe~f\x1d\xbf\x90\xbf;\x94\xc9o?\x1e(\xbdq\xc5\x8d-&Q\xe5\xc0\x85Q\xf6_\x97L\x8c\xec\xba\x91YR\x15Hd\x1b\xc8\"\x0b\xffJcz\xa6\xfc\xd0T6\x14\x01pU\x850@\x1bW\x7fMC\x9b\xf5\x14\x1c\x87\xdf\x15\"\xf9\xfes(y\xa7\x91\xae~\xa6\x94\x83y')\x97\xbb\xb2[f\xdc\x0f\x10\xdc\xdeOi/\xd4=\xd3f\xc1\x04%\xe3\xed\xdf\xbd \xbc[ \xe1\xddy>\xbb \xef&\xbc\xdb.\x84w\x0b!\xbc{)\x84w\x13\xde\xed\x12\xc2\xbb \xef\x16Bx7\xe1\xdd\x84w\x13\xde-\x85\xf0\xee\x14B\x9a\xf0n\xc2\xbbG!\xbc{)\x84w\x13\xdeMx7\xe1\xdd\x84w\x13\xdeMx7\xe1\xdd\xbf=\xbc\xdb(4\xfe\x81=\xb8\xda\xa1\x97\xb3bW\\> \xf2\"\xbd\x9d\xaf\x1f\x80\x15\xdb\x03\x14\xa7\xd3'\xb4\xa2\xc90\x8c\xe7\xfbli\x9c\xd1[T\x8c\xd0FL4\xd0\xffGY\xef\xcam\xc1\xd9\xe0\x1fS\x16\x14\x07\xaa\x81d\xaa+\xebmu\xde\xcd\x16\xab\x85\xbc\xca\xe0\xa0\x9c\xdd1\xe1\xee6\xf6\xcdoD\x85}\x03 \x9a(\xfb\xf9\xaa\x9b\xdd\xadY\x17\xc4\xfa\xbee\x9d\x02\x13\xc4\xe35>\x8f\xfd#\xa7*lC\xb9\xaf\x9bv\xe6u\xd0O\xe3\xf4\x12\xd22ko\xecu\xd3T\xcc(\xffm\xb9\x81-\xbbe\xed\xe4T\xdf\xcdSG\xcfo\\i00-\xb3? \x13=\xfd5\x98\"\xe7\xda\x1dk\xe7\xdf\x12\xef\xcaz\xcb\xbe\x01\x19n\xf3\xa2\xdb}\x80/.\xfe\xf4UVk\x84b|\xce\xa7}[\xec\xd8\x10\xe3S\x9cNU\xc9v\x9bSU\xd4\x97\xbf\xf6v\xfc\x87<\xdd\x16\xc5\xf3R\x1e\xfc\xb6*\xc6\xc4\xe0\x05\x9cZv[6\xe7\xaez\x00\xa5\x0d\xd4U\xa0\xd7\xda?\xd2%\xef\xc4=\xb2\xc6\xbf\x18Z?\xd3]~\xa2\xd1..\xd4\xdf\xeb\xee\xf0S\xa7\x93~L\xe1\xfc\xeb\xaa\xd9~\xd0\x7f+LJ_\xd8\xf5\xae_nK\xdb],\x86a\x00\x942lnbQ\xdc`\x06\xe5*\xdf\x97\xef\xd2\x1c\x0e?\xbd}5_\xb4\x12\x08E T\xd0\x0b\x88q\xa4\x01\x81P\x04B9\x8f$\x10J\x08\x81PK!\x10\x8a@(\x97\x10\x08E \x94\x10\x02\xa1\x08\x84\"\x10\x8a@()\x04B\xa5\xb0D\x04B\x11\x085\n\x81PK!\x10\x8a@(\x02\xa1\x08\x84\"\x10\x8a@(\x02\xa1~\xef T\xff\xbf\x86\x82\xc9G\xb4x\x12\x95/\xce\xdc\x86\xd7\xbeU\xe1\xfb{$\xec)\xda{|\xe6\x87\xa6-\xf9\x83\xdbg\xfc\x93\xf0\x97\xcb\xee\x14[ 0\xc8\xefv}\xae\xd8\x8cl\xea\xddy\xcb\xb5\xe3X\x7f5O\x0c\xf3\xcc\xea>\xff\xf33u\xec\xd4\xa7\xac\x95\x7f\xa6\x8d\xf0D=\xca\xce\x0c~\xce\x8d\xa3\x18\x9b(U2\x03\x88t\xfcj\xc3\x84\xdd\xbe\xca\xc9;\xb3$\xf9q\xc9\x8fk\x11\xcc> \x90\x1f\x97\xfc\xb8\xce#\xc9\x8f+\x84\xfc\xb8K!?.\xf9q]B~\\\xf2\xe3\n!?.\xf9q\xc9\x8fK~\\)\xe4\xc7Mq\x85\x92\x1f\x97\xfc\xb8\xa3\x90\x1fw)\xe4\xc7%?.\xf9q\xc9\x8fK~\\\xf2\xe3\x92\x1f\xf7\xf7\xe0\xc7\x8d\xf5\x89\xaa\x1d\x1f\x11Q\xebv\x8b\xbe\x92GMBi\xe5-\x13\x7f\x9fD\xd0Z\xa3f\x0d\x05\xea\xe7'\xeb\xe3\x1c-a\xca\xa4)\xc2\xa9]\x86M0\x8a\xd7\xe5\x15(`Q\xb8JQ\x05wy0\xdb$\x00\xef\x187\xfc\xf7*\x84V\xf7Gy\x9c\xc4Oz\x06\x10{W\x8e\xc5\x12\x98';\x1d\\j\xb3s\xd8\x12in\xf8\x9d\nZ/N\xa7J~k\x8am\xa0\xa2\x82\xff_S\xbfP\n]\xe3\x7f\xdb\x1c\x8fE\xbd\xeb`w\x16\xc6\xf04ML\xe4\xf0-\xdb\x97\xf5\xb7\"bY.\xa8\xc6\x85\xd2p'KG\xc0\xf2(2\xa1@Qu\xc2\x91\xe2\xec-o`\xc78\xdbr\xb8;0\xb1\xc5X\x8c]\xd6\xa6\xd8\x165\x1c\x8azW1(`_\xde2\xd7\xb6\xebpc\x84\x97\xc1uM\xdd \xa9\xb2\x95\x9bV|\xb8\x95\xfd\xbbB\xd6\xefa\xdc\x96\x1b`\x14\xdd\xd0\xe7CF\x0c\xf7\xb6\xa6ri\x8ci#\x86^\x96\x1d4g\xfe\xa2\xb9y\xb1+8\x93\xf9\x16\x0c[;\xf4\xbd/\x8f\xac\xffP\xff\x0f\x1dh\xee\xbap\xcb\x8a\xed\xa1\x7f%\xc9E\xf5x]\xd1`v_.\xaa\xd7\x80 \x0d\x92\x9f,\\Q7\xdc\xf3\xf7\xba\x7f\xcfn\x0b\xcev\xdf\xc8\x1e\x0bw\xc8\x00\x97H\xb7\x86\xb8Y\xbb\xe1\xc8\x0bq\xa4C\xe1\xe4|\xa8\x9a}\xb9u\x19n\x18\x07-;6\xb7\xba\xe2ho\xc2w\xaf\xff\xd3\xb9]p\xa5\xaaF\x0d\x85C\xebF\xa5My>8\x88\x86\xd9\x82\x1f\xda\xe6\xceZ\\\xccW\x8a\x10}\x07\xdc\xa5d&\xd6\x7f?\x96\x0f\x9c\xe4&\xd0V:\xaa=\xec\x13k{\xcd\xf6g\xbe\xaco\x9a\xc4\xe6\x86\xea\xda\x88\x0d\xb6\xd1o6\xba\x01\x86\xd9\xa8\xbei\x94\xa3I\xa5[q\xf9\x99\x9a\xfa\xc5\xf6P\xb8\xdd\xe6\xddy{\x00\xb1V\xdc\x97\xa2\xd0\xdd\xb1T \x8a\xc6\x12\xba\xb0\x15\xde\xf2\xe2\xcc\x9bc\xc1\xcb\xad\xc7\x0f\xab\x1bh-W\xa4_\x04\x9bmU\xf6\xcb\x8c\x8e\x17\xdc\xfb\xccyjx\x85\xb8\x900\x19\x82\xb8O\x80~l!\x95\x0f\xf1\xe8[\xb8\x08<\xfbLy\x19\x91 %\x92\x9b\x13\xc1\x93\"\x99X\x914Z\xc4\xa3\xae7(\x9a\x17YM\x8c\xe4fF\"\xa9\x91\xcc\xdcH\x1c9\x12\xc9\x8e\xf8\xc6\xf0@\x95`\xe9\x91\xcc\xfc\x08\x8a \xc9\xc8\x90\xac\xa5H\x928\x92L$I\nK\xe2Q&\x97EA\x9a\xe4Qx\x92\xc7#J\x1e\x85)\x89\xa3J\xb2s%X\xb2$+[\x82\xa7K\xa2\xf9\x92x\xc2$8\x15\xfe\x01\xc1\x98d\xa0L\x02\x9c rA\x85`MbV]\xd1\xbc\x89\xef%x\xdd\xdc2\x04q\x82m_F\xea$\x86;\xc9L\x9e\xa4\xb1'\xbe\x11\xd4\x85\xe9\x93d\xfe\xc4\xa1\xad\xbfZ\x88@\xc9\xc5\xa0\xa0A\n\x04\x87\x12E\xa2\x04\x9c\xa3I4JH\xa7\xd3'\x93\x89I\x897&\x9eK \xf5-\x81MI\xa4S\xbc\x0ex\x04\xa1\x92\x97Q\xc9C\xa9 \xc6\xc6jR\x05\xcd\xaa\xe0h\x15,\xaf\x82\x188\xf1\xccJ\x0c\xb5\xe2\xe1V2\x91+\x91\xecJ\x1a\xbd\x12\xc5\xaf\x84\x8c\xee}\x84B\xe7\xe29\x96|$K\xb0Q\xce\xe7'\x1f\xcf\x82 Z\xd2\x99\x16\x87:\xb1\xd5\xea\xa1Z2s-!\xb2%\x91mq\xe8\x92\xdf\xd0\xbem\x840\xdf\xe2%\\\xf23.\xd9)\x177\xe7\x92\x93t\xc1\xb0.\xf1\xb4K\x14\xef\x92@\xbc\xc42/^\xea\xc5\xcf \xe0)\x04,\xf9\x92\xc0\xbeD\xd2/\x9e\xee\xa6\x100\x0eU\x06]\x82{$p\x14\x8cg\xc8\xd7{?\x07\x93\x95\x84 \xb00\x8fC\xc3\xe4\x1a\x8b\x11DL\x0c\x133_\x1e 2\x8d\x1b\x9cJ8\xe4\xdc\x95i\xdc\xa4e(\xd38E\xa8[\x7f\xa7\x08uC(B\x9d\"\xd4G\xc9\xeai\x8c\xf13Fy\x19)B}\xado1\xc1\xb3\x98\xc5\xaf\x18\xefU\xa4\x08\xf55\xde\xc4\x18_bfO\"\xce\x8f\x98\xd1\x8b\x88\xf5!Z\x16\xc4\x14\xa1>\x15\x84\xd7\x10\xbbJ\x8a\xf6\x18R\x84:\xcaO\x98\xe2%\xa4\x08u\xd7aA\xcf`\x84_\x10\x13\xdb\x1c\xe3\x13\xa4\x08\xf5\x94 \xef\x90\x0f\x90\"\xd4\xf1~?\xa4\xd7\x0f\xe3\xf3\xc3y\xfc(B\x1d\x12}|\x11\x1e>\x8aP\xcf\xe0\xd1\x0b\xfa\xf3R\xbdy\xce\xf7&E\xa8/\x84\"\xd4)B}&9\xa2\x85\xb1~\xbah/]\x94\x8f\x8e\"\xd4\x13\xfdr\x14\xa1\xae%5B\xfd\xd8\xec\xce\x15\xdb\xa8\xdd\xa7\xce\x1d\xa4\xfe\xbd8\xf0\x17u\xdc$N\xbd*;\xb1m,u\xe9\x9d\xacNF;\x8a\x984=o!\xf2U\x7fe\xcd\xe1=\xbd\xba:\xe2\xc9\x06\xb9[\x8dj\xca\xa7p\x9b\xb9#\xddQ\xfbE*\xc4\xb2\x9ef\xa1W]\xb5\x9e\xa3\xba\xbf\xe2\x9a\x8e\"\xfdSQ\x0d\xdb\xf6\xf7\xb2\xee\xce\xdd<\xfc\xdd\xdb\xca\xc9\xf0\xf8\x1f\xfbF\xd2d\xec\x0d\x9bS\xfd\\\xab\x06\xbc\xdc\xce\xec\x96Mp|f\x04K\xbfK or\xcd\xc6\x99\xf0*\xcc\x9fF\xb9\x91\xac\x02\xd4Y\xd9\x8e\xad\xb4(\xd4\x9a\xa6\xeb\x0c\x84g\x7f\xfa|\xa6;\xf7g\xcf\xf9\xec\x98\x9f\xde\xbe\x1a\xfc\xfb\xf3\xdf\x02F%\x0c`\xf6+a\x00\xa1\x81=\na\x00\x84\x01\xd8\x850\x00!\x84\x01,\x850\x00\xc2\x00\\B\x18\x00a\x00B\x08\x03 \x0c\x800\x00\xc2\x00\xa4\x10\x06\x90\xe2I'\x0c\x800\x80Q\x08\x03X\na\x00\x84\x01\x10\x06@\x18\x00a\x00\x84\x01\x10\x06\xf0{\xc0\x00|\x05\xc7\x95\xd7\xb0\xf6\xd4\x1d\x9fyB\x8d3\xa4\x8fQ\xceTC\xe1\xf1b\xdc\xae\xb0xZ\x97\x9eY\x03\x0c\x80\xefXq\xdbO\x04b7Jn\xab,\x92A\xdc0\xae\x12\n\xf7o\xb8\x08\xde\x00@\x96A\xff\xbb\xa2 \xb4\x8cu\xd0o\x8a\xaa3\x9bk\xd92\x89E*\xc6\xac\xbc\xba\xe321\xef\xe5\xafb\xb2\x93y\x92\xff\xe1&-\x8c\x8d\x8c\x9f\x95\xaaWZ\xd3\xbb^\xd1\xb4H\xc0`]q\x11\xf9\xcc\x8a\x87T\xecB\x8ecXL\x0b\xbc=w\xfdW\xfb\x07\xd6\xd6\xac\x1a\xd2\xd1\xd7\xec\x9eO\xfd\xe6e\x07\"\xcd\xf1\x05\\)ub\xa5a\xeeeu\xbci\xfb\xe7_&#\x17k\x08\x95\x03z\xaa\xe1\xb3Pw~z\xfbJ\xec\x00\xaa\xed\x0c\xbd#V\xb1}\xb1}P\x9d5^\xd2\xc2\xf7\xd5\x9e\xb6\xfdP\x1csvC\xdd\xdc\xc9\xce_}\xfbJL\x82%\xef\xa0\x9f\x14[v\xaa\x8a\xad\xd8[\x1b\x95|.6\xf4\xbe\xb9\xbc\xdc\x97\xfcp\xbe\x16\xcf\xa6\xba\x9f\xe5\xf5\xf6\xc5\xbe\xb9\xbc\xae\x9a\xeb\xcb?n\xff\xf5_\xbf(\xfe\xf8G\xf6o7\xff\xb6\xdd\xfe\xcb\xd77\x7f\xfe\xe3\xf5\xd7\x7f\xfc\x97m\xf1o\x7f*\x8a\x7f\xf9z\xcb\xbe\xfc\xf2\x8b?\x7f\xf1\xc5\x97\x97\xe2\x81\xeeO\xbd\xdc6-\xbb\x94 \x99/o\xbf\xbc\x14CO>\xef\xff\xeb\xbb\xaf\xff\xa4\x17\xf4\x13\xba\xc5n\x17u\xe4\x93\xa5\\\\\xe3<\xca\xa5\x1c\xd8\x81TpG\x00\x15\x92\x82\xc0\x14\xec\x86N\xc7\x15\x1c7nv\xac\x89-\xe8\xbf\x11\x8f0\xfb\x95x\x84\xd0\x08\x1e\x85x\x04\xe2\x11\xecB<\x82\x10\xe2\x11\x96B<\x02\xf1\x08.!\x1e\x81x\x04!\xc4#\x10\x8f@<\x02\xf1\x08R\x88GHq\xe9\x13\x8f@<\xc2(\xc4#,\x85x\x04\xe2\x11\x88G \x1e\x81x\x04\xe2\x11\x88G\xf8\xbd\xf3\x08\x86W\xdc\xd0\xe3\xe3\x11\x16\xbe\xe6\xb1P\xbcp9\x0f\xf5\x86\xfba\xd2\xdf\xb4\x96\xfd\xfd\xcc\xba\xa9+B\xbc\xf9\xcaN;\xfd\x94\xbas\xbdc\xad\x1a\x03\xc2+>\xf7\xaf\x0b?G\xd3N\xb6\xd3\xca\xfa\x9b\xb9\xf7a$\x0cx{\x0e\x00\x060u\x8d\x0d\x91\xee!\xf0\x80\xdf\x0f\xcc\xc1\x8e\x8d\xfe\xb8S\xd3-\xa1\x82\xf7\xf7\xaf\xc5! \x8fT\xf3w[\xd4]!>\xa8#24\xfc\x8b5C\x83\xbe\x80\xfa\xed\xe3x\xad\xff\xff-\xbb\xf9\x06\x9e\xfd\xafKc\x9b\\Y\xe7\x82\xdf_(\xeb\\\xe8\xb6iG\xef\xe87&7\xec\xecWr\xc3\xe2\xb6\xf1\x80\xdc\xb0\xe4\x86u\x1eInX!\xe4\x86]\n\xb9a\xc9\x0d\xeb\x12r\xc3\x92\x1bV\x08\xb9a\xc9\x0dKnXr\xc3J!7l\x8a'\x93\xdc\xb0\xe4\x86\x1d\x85\xdc\xb0K!7,\xb9a\xc9\x0dKnXr\xc3\x92\x1b\x96\xdc\xb0\xbfw7\xecu\xb33\xdfpe\xbd\xf8\x93\xd3\xa7\x99\xc9\xfb\xc5\xef7\xd7\x0f\xdc\xe6\xd8\xf1\xeeXx\xf7*&{\x01\xfa\x02C\xa0gqg\xf3\x81Z\xce\\\xa4\x06\x1f]\x8a\xc2\xb3<\x86\x8e\xca\x7fr#r\x14\xde\xb1\xf6\xb6\xdc\xb2\x8b\x99\x8bT\xcb$\xab\xf5\xf4'\xbb\xffU\x1d4w\x0f\xab\xcb\xf8\x1c\xc4\x97\xc5\xb1\xac\x1b\x84\x9b\xf8e\x7f\xdc\xe0+.j\x90\x7f0\x8c%\xa3\xedY\xdd\x1f\xb1\x03iV\xde\x88\xe73\x9b/Y\\T\x1d\xf0q\x1c\xca \xa3V\x98t\xf3\xdf\x9d-\xd3\xbds\xdc\xfa\xb7\xa8&\xfdO\x89N\x9e\x8f8iH\xdf\xb8\x8b\x19x\xe46'\xb7\xb9E0\xdb\xae@nsr\x9b;\x8f$\xb7\xb9\x10r\x9b/\x85\xdc\xe6\xe46w \xb9\xcd\xc9m.\x84\xdc\xe6\xe46'\xb79\xb9\xcd\xa5\x90\xdb<\xc5\xf3Lnsr\x9b\x8fBn\xf3\xa5\x90\xdb\x9c\xdc\xe6\xe46'\xb79\xb9\xcd\xc9mNnsr\x9b\x7fj\xb7\xb9t@\xca\x9d\xb4(\x07\x94g\xbf\"\xca?\x19\xf4\x80\xcfN\x7f\\\xefd\x94[\\\xfa\xaf\xbd\x0e\xf17\xe2\x10\xe5\xe9~\x8c\xb8iy\x01\xf5\xdb\x93us\x7ft8C\xa3\x05&s \x0e\x88\xc34\xa4u\xd79\xd1\xd5\x10H\x814\xc8WN\xber\x8b`\xf6Z\x81|\xe5\xe4+w\x1eI\xber!\xe4+_\n\xf9\xca\xc9W\xee\x12\xf2\x95\x93\xaf\\\x08\xf9\xca\xc9WN\xber\xf2\x95K!_y\x8a\xbb\x99|\xe5\xe4+\x1f\x85|\xe5K!_9\xf9\xca\xc9WN\xber\xf2\x95\x93\xaf\x9c|\xe5\xe4+\xcf\xea+Gg\x7f\xd6>@\xe1\x99\xd6^\xd8\x04?1\"|Z^JFKk\x97\xb1;|Z\x0c5\xdeL\xc3\xa8\xb3\xb9\x94\x7fC\xe1\xd3\x1f\x97^0\xcc\x93\xc31\x9c\x97_ \x8f1y\x8c-\x82\xd9q\x04\xf2\x18\x93\xc7\xd8y$y\x8c\x85\x90\xc7x)\xe41&\x8f\xb1K\xc8cL\x1ec!\xe41&\x8f1y\x8c\xc9c,\x85<\xc6)NW\xf2\x18\x93\xc7x\x14\xf2\x18/\x85<\xc6\xe41&\x8f1y\x8c\xc9cL\x1ec\xf2\x18\x93\xc78\xab\xc7\xd8\xe9\xc6 \xf9'3\xa7w\x9e8 \xd3\xc3\xa7\x1f\xc3\xfd\x18\xe5\x16\xef\xca\xe3\xb9*\xb8/\x80\xfa\x9d:\x04\xf4\xb1\x1d\xb0{\xb6=\xf3~F-\xa6.\xf1\xfe]\xdd\xf1\xf2X\x88\x1f\xf7E\x07g\xb9\xd9 uN\x9c\xdcZ\xaf\xfa\xed\xc9\xfa\xb7\xf7E\xb7)\xeb\x9bf9z&\xcd\xd1\x87\xe9q\xd0\xffw{\x94\xd3Xq\xdd\x9c\xb92\x87\xd8\x1d\x96\x9b2\xd2\x00\x8b\xbc\xf5\x10rW\xfa\x9d\x95}C\xee\x8a\x9a\xb3\x9d\xdb\x95\xe9\xdd\xa7\xd3\xbbtg\xb3\x94\xf9T0{a\x00\x7f-\xba\xbf\x89\x86h\x9b\x1c\x8b\xfb\xf2x>\xc2\xb9.\xb9\xd8\xc4\xb9k\xda\x0fp\xa76\xeb\xe5\x1e1\xbf\x07\xde8\x14\x9eX\xdb7\xce\xb6\"\xe9{\xdd\x1b\xf7#\xf5\xf9\xafE\xf7s7v\xac86g\xe9\xb1\xecor\xb1\xe5\xd2\xad\xb6mj\xe5o\x99\xaa\x92>\x88\xc0\x80\x92\x07\x19XC\xff/\xbd\x9f\xf78CgW\xf0b\xa5\x01\x9d[\xbb\xb8!\xf3\xba\xe0\x85pT\xd5\x0f\xa25\xd02~nk\xb6\x93\xb8\x8d~\x95\n\xc7K\xbd\xab\x1c{\xa7\xa0g\xa8\xa6\xbe\x80+\x0e\xdf\xff\xfc\xee\xbdgg\xbcb\xf5\x9e\x1f\xe0\xd4\xb2\x9b\xf2^>\x9fM\xbb\xeb?a\x1a\xe8X\xffv\xe3L\xb6F6\xe2\\\xf1\xf2T\xb9\xf6\x92u\x1b\x87&t\xce-\x90\xd7\xfdjg[p\xb6SNv\xb9(\x17\xde\xf6~\xe5sjNb\x8a\xdc=\x87\xeb3\x17\x0dt\xf6\xf8\xd8\xed7\x03\xfbR\xd6\x1dg\x85\xd3\xd7\x7f\xcd\xb6\x85\xf0\xc2r(\xaa\xae\x99\xae\xfb\xbf\xef\xf6S\x88\xc6\xf1\x0dP5\xfb\xc4\xb1\x82\x1b\n\xdf5\xfbi\xc3\xaaf?\x99USG\x84\xe5\x00v\xcbj\xeeA?\\\xb8 \xf8\x90\x13\x08=\x8cRB\xe8 h5\xce_\x11&\xef\xa5\xe0\xbc-\xaf\xcf\xd6\x14 \xa3\x84\xba+\xc5\xdbi)\x88\xaeK\xc1\x18@\xca\x07f!\xcc\xe6\x82\xb2\x85\x14\xaf?k\x94\x08\x8de\xbdc\xf7X\x8d\xd7MS\xb1\xc2\xed\xea\x04\xf4\xb3\xa2\xe5M?\x8e_\xea\xfb,&R\xe8\xcaz_\xb1\xdev/\xe4\x8e\xc4\xa9([\xdf\x07@/E\xd75\xdbR\xf8\\\xa4\xeb\xa9\x96\xcf\x88kO\x0c\xdbL\xd1@\xf9\xba\xef\xa0\x18}\xf6\xb0c\xb7\xac\xea\xc7\x81p@\x17\x9c\x17\xdb\x83\xb1]\xe1ThN\x08\xdc\xb3E\xaa1\xc1\xbf\x94\xb5\xd8O\xf9\xb6j\xd4f\xab\xfe\xe5\xd5\x81m?\xbc\xbf\xf7\xecW\x7fWp\xd6>7W\xbc\x1d\x1c\x8b\x87\xfe\x03\xf5\xefg\xd6\x96l\x07\xe7\xde\xda\xfdl\xd515\xa9\xd8-\x86\xb3\x97\xb0Vg\xf8\x13\xa1\xab\xca\xad\xf0\xeaIC\xca\xa7K!8w\xac\xed\xbf\x94K\xce\x9d8\xc0\xee,!.9i\xbaz:\xce\xa5\xfeY\xd3|\xe5<\xf1\xc9\xd3\xc7\xee\x01\xfe\x11\xc7\xdd6)\xb1\x1c_p2]:s=\x1e\x81\xdc<\x1f\x84\x99>H\xe0\xfa\xfc\x1d(\xf8\x01\xcd\xf6A.\xbe\x0f\x12\x19?\xaf\xc2\xde\xb8h\xce\x0f\xd6\xb3~\x10\xcd\xfbyU)\x0e)\x8a\xf9\x83\xdc\xdc\x1fD\xb2\x7f\x10\xcb\xff\xf9G\xf6\xc0\x06b\x19@\xc8\xcd\x01\x02\x8e\x05\x84\x9c< \xacf\x02!\x8d\x0b\x84\\l $\xf1\x81\xfe\xc7\xa1\xe8\xbf\xfd\x83\x8c <\x0e'\x08\x8f\xc8\n\xc2\xe3\xf0\x82\x10\xc9\x0cB\x1a7\x18\x9a\x82q\xec \xe4\xe5\x07!\x82!\x84x\x8e\x10\x12XB\xc4\x94\xf9\x07\x04O\x089\x98B\xc0|\x87!\x97g\xc1M()1\xab\xb8h\xce\xd0\xabM0\x88\x08\xd6\x10\"Z\x99\x919\x84(\xee\x10r\xb3\x87\x90\xc8\x1f\xfa\xc7U\x17f\x10!\x9dCt\xea\xeb\xaf\x18b\x11!\x1b\x8f\x08x\xac\x0e0\\\"\xc4\xb1\x89\x10\x02f\x12\x19E@\xe8\xf5x\xeb3\xf1\x8a\x90d\\<\xb7\x08\x88^&\xf0\x8b\x90\xca0\x82\x1f\xd4B\xb1\x8c\x90\x99g\x84LL#\xe0F\xccj\xb6\x11\xf0|# \x19G@s\x8e\x80\x1bP\xf1\xbc#D1\x8f\xe0\xe3\x1e!\x17\xfb\x08\xb1\xfc#$2\x90\x10\xc7A\x02\xe2&\x04\x1e\xb3\xf0\xf9x.\x122\xb2\x91\x80i\x9a\xe7)\xcb\xc7I\x02\x86\x95\x84\x15\xbc\xa4Sa\x7f\xa0\x8f\x99\x84\xdc\xdc$\x04\xd9IH\xe5'\x9d\xda\xe4\xb7\xbd\x7f\x9b#\xccQ\x82\x9f\xa5\x84$\x9e\xd2\xa9\xca\xcbYB*k\xe9\xd4\xa6\xdc#\xee\xcb\xe5c.\x01\xc5]B\x02{ q\xfc%\xa40\x98\x10\xcda\x82\x7f\x16\x81\x00\x1b\x07\x11|\x1c\x96\xc9\x84\x14.\x13b\xd9L\xf0w<\x85\xd1t*3\x08H\xec#\x83c5\xbd\x0f\x84@\xc7<\xbc&\xe4e6!\xc4m\x82\x9f\xddt\x9e\x93\xcatB\xc6\xb1\x1b\xc1vB\x14\xdf \xce\x05\nnob\xe2\x1f\\B&\xda\xc78\x1e\"^4v]\xfd\x8c&\xd1\x9c\x97\xf5C\xe7~\xd3X\xd1\xc8?O\x0e\xf6\x17\x1c\xd1X\xe2\x9a\xbc2\x83\x0e\x83\xe1\x1c\xafN\xb9a&B\xb9a\xb0\xcfS\xbcOYo\xc49\x15b\xfd\xc9Y}\xc9\x94\x1b\x86r\xc3\x8c\x92\xd5G\x1c\xe3\x1f\x8e\xf2\x0dSn\x98\xb5~\xe0\x04\x1fp\x16\xffo\xbc\xef\x97r\xc3\xac\xf1\xf5\xc6\xf8y\x13|\xbc\x94\x1b\x86r\xc3Pn\x18\xac\x8f6\xab\x7f6\xc57K\xb9a\\\x87\x05}\xb0\x11\xfeWLV\x91\x18\xbf+\xe5\x86II\xaf\x12\xf2\xabRn\x18\xbc\xff\x14\xe9;\xc5\xf8Mq>S\xca\x0d\x03\x89~\xd1\x08\x9f(\xe5\x86\xc9\xe0\xf3\x0c\xfa;S}\x9d\xce\xf7&\xe5\x86Y\x08\xe5\x86\xa1\xdc03\xc9\x91\xa7\x03\xeb\x87\x8c\xf6AF\xf9\x1f)7L\xa2\x9f\x91r\xc3h\xf9\x04\xb9a\x90\xd5DF\x07_z5\x11~\xaf\x8e\xdd\xb3e\xc2\x94\xbf2\xfe\xfe\xbe\x93\x01\x9a7\x8co\x0f\xfd$\x7f\xdf\xf5\xef\xf9I\x0c\xed$\x1b\x8aq\x92\xfa\xf9\xe3$DA\x1a\xcdh\x9ev\x8c>\xfbll\x05\xb94'B.M\xdc\x96\x18\x90K\x93\\\x9a\xce#\xc9\xa5)\x84\\\x9aK!\x97&\xb94]B.Mri\n!\x97&\xb94\xc9\xa5I.M)\xe4\xd2L\xf1\n\x92K\x93\\\x9a\xa3\x90Ks)\xe4\xd2$\x97&\xb94\xc9\xa5I.Mri\x92K\xf3\xf7\xee\xd2\x949_\x0d\x15\xbe\xcfhy\xb0\x0e0\xac\xcaN:\x01\x8c\x82\n\xe2\x08\xfd}g\x9e:f\x0e\x17E\x1b\xe0\xf6\x8b\x8b?\xfd\xcb\xc5\xfd7\xe2u\xf5\xf73k\x1ft\x0e\xf0\xe7j\x10\xa8\xcd\xf9\xc1\x971Q'6\x15>\xb35N\xe82\xe7\xc4\xb2\xfeF\xfe\xd1\xf8\xdb\xe8\xa6\xbd)\xaa\xce\x1cGv\xe7\x95\xc5m\xe5\xd8N\xd96U\xc5\x84-\xfe\xa26SD\xf6\xf5\x85\xddO\xc5\xbe\xaceB\xfc\x0f\xec\xc1e\xffY\xb0\xe7\x07\xf6 S$\xcbW\xd7\x90j\xbe_\xcc\x17\xfb!\x02\xf4\xa2f\xf7|\xd3\x1f,6!\xf7\xb3\xdd:a\x0c\x95\xf5\x17\xfaC\xfb\xc608\xf6\xb7\x85\x89\x9d;\xb1\xddw\x01?\xf6\xcb\x89\xa6\x16\xbb\x14\xcd\xcdM\xc7x\xff\x854m.\x18N\x94\x8e\xf1\xb5\x86_\xd8\xd3\xba%e1\xa2l\x1fr\x1c\xab\xce\x08S\xd6\xe7#k\xcb\xad\xfe\x9b\x98\xe5\xb6E\xdd\xf7G\xee\xc7\x1dX\xad\x0d\x7f\xae\x87-\xd0\xd9\xf0\xbe\x12\xda*\xd6u\xa3 \xe5\xa6\xa1L\xb0\xfc\x81E\xdas\xaa\xfe\x91\x8d;+\"a1oU\x1eK\xacu\xc5\xb1z\x92\xe0\x0d/\xaa\xde\xc8\xd7r\xa7Oo\xef\xcb\xedqs\x04\xf3\xa1h\xc4D\xdbIn\x86\x99\x7f\xba\xba\x81\x8a\xddp\xb5\xefZr\xf9\x1a\xd2Kr\xb1\xb3/\x1f\x10y\x91\xde\xce\xd7\x0f\xc0D\x82\xee\xd3\xe9\x13Zq\xdb\x9ck\xbe\x11&A\xda\xd28CTY`\xa2\x7f\xbc=3\xe8\xff\xa3\xacwe?\xa9\x0e>>]v\xa3?P\x0d$S]Yo\xab\xf3n\xb6\xe0.\xe4U\x06'\xeb\xec\x8e\x89\xb9\xcf\xd8\xfb\xef_\x99c\x9f\xe6\xae\x80\x9f\xaf\xe6\xd5#f]\x10\xdf(-\xeb\x14\\!\x1e\xaf\xf1y\xec\x1f\xb9\x0b\xf54\x95\xfb\xbaig\x9e\x13\xfd4N/!-\xb3\xf6\xc6\xce\xb3\xdb[n`\xcbnY;9\xd5w\xf3\xd4\xd1\xf3\x1bW\x8eOA\xd12\xfb\x930\xd1\xd3_\x83\xd5\xc2\xa7,\xca|\xcc\xbf\x87\xac)\x04\xbez$k\x88\x16l\xae\xdd\xaf\xac?\xce\xb6\xde_\xc0\x8f?\xbd~\xf3\xd3\xe6\xdb\xff\xda\xfc\xfc\xc3\xbb\xb7o^]\xfd\xe5\xea\xcd\xebo\xac\x7f\x1d\xb6\xf9\xc5\xde\xfc\xb9\x96\x0b\xd9\xaei\xf9\xd8y\xf8\xb1\xff\xbfo\x1f\xf4\x03?\xdd\xd7\xe6\x0d\xbc|\xf7JZ\xb1\xec`[tsg\x81\xd1\x9e\x97\xef^}3\xf9\x97\xf4\xf8\xf6W\x9fZ\xdc\xa9\xe1\xf5\x9b\x89\x8a\xfe\x9f\x83\x8e\xf9m[yC\x16\xf3\x0e\xab\xcf\xc7\xe9\x9a\xc4nj\xd7!/\xdf\xbdr\xfd\xd4\xf7cr\x83%/\xe5Wo\xc6\x03\xb2X>0\xe3\xd3\xcb2\xd9ts\xfd>\xd3\xc9\xaf\x06\xfd\xb4 \xfb-\xbeD\xe41\xe2\xed(\x99\x8b{\xb1\x156\xad\xd7\xf5\x9e\xd5;\xd6\x1e\xcb\x9a?\xeb\xa6\xc6{\x7f\xff\x8e\x15\xed\xf6`\x16\xb7\x13{KR\xefQ99\xc5\xd7\x88uV\x9eN\xca_\x7f\x91\xd3\x9cn\x00\xd4Q\x18\xef\xdb\xb6)v\xdb\xa2\xe3\xef\xef\xe1Z\xff\xb7i4+\xe8i\x9c\xf5\x99n\xe5\xc7\x00=yB$\xd9\xe3\xc5\x92=J4Y\\\"-\xd4\xb7\x84\xa8\xb4\xc4\xb84\x7fe\xb5plZ\xde\xe8\xb4<\xf1i\x88\xb1\xb1:F\x0d\x1d\xa5\x86\x8bS\xc3F\xaa!\x06N|\xb4ZL\xbc\x9a\xb7Pa\x96\x98\xb5\xc8\xa8\xb5\xb4\xb8\xb5\xa8\xc8\xb5\x90\xd1\xfd\xc5 \x03\xe7\xe2#\xd8\xf2\xc5\xb0\x05\x1b\xe5|~\xf2E\xb2!b\xd9\xd2\xa3\xd9\x1c\xeax\xb0\x14a\xd6\x88\xb6PL[bT\x9bCW\xb8\x04a8\xb2-P~0wt[\xf6\xf86w\x84[\xce\x187L\x94[|\x9c[T\xa4[B\xac[l\xb4[\xa0\xa4\xa0\xbfu\xd8\xf8#l\xcc[B\xd4[d\xdc\x9b\xa7\xbb)\xb1o\x0eU\x88\"\x82)\xf1o\x9e!\x1f. \x981\x06.X<\xf01\xe2\xe0r\x8d\xc5\x88X\xb8\x98h8\xfb\xf2\x80\x97G\xd6\xf1\xe2xJ\xf4\x93\xe1\xf6\x01\xde\x97\xa3{\xe2\xd4\xb2\xdb\xb29w\x92\xf5\xbb\x80\xbf4\xad\x02\xfe:\xf8\x7f\xe0\xcb\xe7P\xf2g\x9d\xe7\xce\xde\x89c\xc5\xf0\xdf\x95E?W\xbbn\x89\x98Au\xfftR\x16\xb5Kr\xdb\xf0\xf1+\\\xb6\xe4\xbb\xa2\xe3\xaf\x9a\xe3\xb1\xe4\xae\xe9vl*\xfc\xfb\xbf\xc3\x97\xcf\x9d\xaf\xd3\xbe\x07\xfd\xb7yWv\xa2\x056\x85>L\x89?\x01\xfa\x8b\x07@\xa4\xe0\xd0\x004|\x14\xea\xae\x14\x04p\x84\xe8\xba\x14\x8c\x01\xa4\xa0\xf0\"\x94-\xa4 \x91\xa2\x08\x8dADO\x8a\xd48\x0fk\xb1 \xee\x99\xd6\"\xf8\x92\x11L\x12A\x85]Y\xef+A\x16\xbd\x18\x81\x99P\x9d\xd3\xa2\xeb\x9am)v\xb3T\x8d\xe6i\xfa\xdd\xb9`\x9b)\x01\x18\xe1)\xe9LZ\x03v\xec\x96U\xfd8\x10n\x80\x82s\x01\xfd\x0f\xcb3\xa7B\x03\x9f\x00\xee\xf9\x84\xd4\x80\xed_\xcaZ\xac!\xbf\x15ps\xffj\xd6\xbf\xbc:\xb0\xed\x87\xf7\xf7\x9e\xef\xfb\xef\n\xce\xda\xe7&E\xd0\xc1Q\x12\x1b\x7f?\xb3\xb6\xff\x0c\x90\x11\x96\xfc\xc0:\xa6&\x955[\xb6\x8a$\x1a\xc0\x1bEK\xa9\xe8b\x0d\x06\xc9\xaf\xac-\xeb\xc4\xb5]\xab\x0c\x93}\x10^\x11\xe7\x8ci\xb6^G\xe9\x01?4\xfd\x1f\xed\x97\x94\xedr\xa8S\xaf\xf2Ne\x14i\xdc_vZ\xfbM\xdb\x1cEG\x8b\x9a\xb3\x0b\xf8\xdb\x81\xb5\xac\xe8\xe0\xbbf?+\x84+\xdb\xe8\x1a\xcb>W\x89\xb1\xf0?2^\xec\n^<\x1f\xae/>\xf4\xa6]\x0cw/\xb2\xaa\xee\x1f/\xbe\xfc\xf2y\xff\x1f\x7f\xba\xf8Z\xfc\xff\xd7\x8b\xb3\xc3c\xe4\xfd\xfd\xc0\x8d\x07\xe0\xac\x96U\xec\xb6\xa89\xf0{\x81\x92;>\x88\xb5-\x843\xd0\xd6\x1f^\xec;\x03\xb3\x93\xdf\xbe*U\x0cT\xcd\xbe\x9fr\xc4\xe2p\xc7\xb6\xcd\x8e\xed\xa6\xa3\xdf\x17~\x05fp\xc7\x9a\xfa\xc1fd \xd5\x0f\xa6d\xdb\xc1ww\xf89\x93\x92\x84TQ\xb2m\x0cH\x95\x05\xa3J\x81\xa8(\xd9vFt*\x06\x9c\x8a\xc2\xa6(\xd9\xf6ZX*\x01\x95\xca\x02J\xc5cR\x94l{\x0d\x1e\x15\x03GeF\xa3p`TF,\n\x0bEYv\xf8(\xd9\xf6T\x10\x18\x14v\x95\x14\x8d@Q\xb2m\x14\xf8\x94\x82=Q\xb2m\xd7aA\xd4)\x02t\xc2\xa4i\x8e\x81\x9c(\xd9vJ\xbe\xea\x10\xd4D\xc9\xb6\xf1 \x13\x12c\xc2@L8\x84\x89\x92mC\"\xb4\x14\x81,Q\xb2\xed\x0c\x88R\x10PJ\xc5\x93\x9c\xefMJ\xb6\xbd\x10J\xb6M\xc9\xb6g\x92#\xf11\x16<\x8a\xc6\x8e\xa2\xa0#J\xb6\x9d\x08\x1aQ\xb2m-\x98d\xdb\x99\xeb\x07;\xdd8\xde\x0ci\"\xefF\x94\xf3)\xb0W1\xd9\x0b\xd0\x17\x18\xbc\x88\xc5\x9d/\x05\xc0\xd1\xe3[s\xb4e\x99\xf6R\xca\x0b\xf8\xf6\xa7\x1f_\xbe~\xf5\xf2\xdd\xfb\xcd\xf7?\xbe~\xe3L\x81\xe98\xfc\xdb\xef~|\xf5\x9f\x98\x03\xdf\xfd\xd7\x0f\xaf0\xc7\xbd\xb4\x1e8\xe4\xd2\x8chmx\xb7ep\xc0~\xdf\xec\x98\x91EU\xf8.\x86T\x7f\xbd\xb5\x1d\x9e\\P\xd9\x0eg\xfe\\\xf8\xe9\xed+\xdb\xc3\xa8\x9d\xbc\xb6\xc7\xc1w#\xbe\x81\xff\xcb\xdaFA1b>\xe8\x9b$\xd2\xa3:\xa62\xfb}\xfa\x06^\xbfy\xfb\xd3\x9bW/\xdf\xf7:\xfbU\x98\xe5&\x0d\x19\xe5m\x06\xb3(\xd5\xfb\xa1jsG\xe5\xaf80x\xf7\xfa?% \xa1\xb2\xd6[\xf45\xf5]\xd1\xee\xec[\x85\xd6\x11\xb4\x18\x00\xa2\xc5#R\xc0\x8d\x1c\x8d\xc2\xd7\xd8\x1bJ\xe4\xf7\x91su%R\x8c\xdf\x15\xa55\xca\xb97m\x01\n\xaf\x19\xb3\xd3\x8cN\xfd~\xf5\x8ak\xecKkk_\xa64\xd7r=\x99\xd4\xb4\x83\xf2(pF\xce\xe6\xcd\xf2\x8f\xfd \xbf \xb2\xa3\x8c\xf8\x82\xfc'\x8f\xa2\x17\x94\x92\xf9\xb86\xd2\x7f\xaa_b\xab\xaf_\n\xc6\xf2\xf2W\x89O\xfeC\x9e\xea(\xc6.8\xa9\xbf\x95\xfc\xf0\xfe\xbe\x1b\n\xb2\x17*7\xa4\xd8\xfcT\xa4\x07\xf0\xfba\xc4M\xec\xf4\xcc\xca\xbf|}\xf1G]\x03}^\xca\xdd\xbc\xa4:\xe4\xe3d\xf9\xc4\x97s7\x9bH%\xdd\x85\x10eB\x94\xc9(D\x99\x10e2\nQ&\x9c(\x13\xbb\x10e\xa2\x85(\x13\xa2L\x882A\xae\x92\x882\x19\x84(\x13S\x882!\xca\xc4\"D\x99\x10e\x122>Q&\xces\x882\x99\x08Q&D\x99\x10eB\x94\xc9D\xb0\x1e\x7f\xa2L\x84\x10e\xf2{\xa0L\x16\xd5\xe3&\x9f\xd1*\x7f\x8b\xf2\x92\xaa\x7f\xa9\xc9Oz\x18u\xf1Ms\x16*\xebo\xe6\xfe\x00'\xaa\xe2\xd8\x95\xb0W\x94\xa0z\xe8\xf8\x82\x8f\xe0\xda\xcf\xa1z\xe8y\x8d\x1b\xae\xe4M%^sX\x91\xea\xa1S=\xf4\xdff=\xf4h\xfc\xe7\xd7C\xd1\x1d\xfc\xd8\xcf\xfb{\x03\xf6\xe1\xf7\xfd3jVe\x9d#;\x1f\xb9\x1c/\x1e\xd4\x19S\xc9\x10\x9eCx\x0e\xe19J\x08\xcf!\xc2\xbe\xe8\x14\x12S\xd4\xc6\xdd\xea[l\xa8;\x16\x13\xe7\xc9\xa1\xb8\x1d\xb6\xa0X]\\Wl#\xd1\xb5y7f\xbbm\xd1\xbd0u\x8f\xe9M\xb8\x9a&% \xa7~\x9d\xdd\x8ej{\xae\xc4\\b>\x8e\x9d\xd28\xe4\x0dq\x8d\xf8Y\xbb'-4\x87\xf9\xccb\xc3=>\x96\xf5f_t\x1b1\xb2\x03\xcamO\xd3\xe4\xfc\xa1\xe3\xe2\xbe\x95\xf5p\xdf\xe4\xafc\xf6\x1e\xe9\xff\x17\xef=6\x99t\xcczM\xb3\x16\xba\x87\xa0\xbd\x99\xffck\xa6c\x88\x19M\x15[\xbb\xd2%\xb0=\x14\xed~\xe2\x10\xe0\x0dt\xac\xde\xb1Vy=\xa0\xa9\xc7q\xf9\x99qq9\xa5M\xec\xf1\xe6\x97\xef\xe1\xd8\xec\xce\x153\xa6y\xf7\xa4\xf8\xff\xf6s\xf7\xb7E\xc7\xfe\xc2\x06 \x11=E\"G\x8bj\xec0N\xcaa*\x9c\xcc\x84\xe2\xf8\xc9\xc8\xb25nH\xc9cSq\x11\xeah?(\xffZt\xd1=\xdd\x17]\xd2\xa3\xac\xba\xde\xdf\xbc!\xf1\x8f\"\x87\xe4\xc3\xbaWnDK\xbfgm\x1d:>\x9c8:E\n\xd8\x97\xb7\xacV\x8f~\xc8\nr\xd4D\xdb\xe0d\xbc?\x17M>\x99#Q\xaeHo\x8f\xcb\x81x13\xe2\x8c\xef\xb0S\x1d\xd6718\xdf\xc6\xe0\x98C \xf3[\x19\xe6of\xc0\xbe\x9d\xc1\xf9Z\x03\xe7H\x82\xa0Gc\xdd\xdbz\xde1\xf9\xee\x9e_\xc2\xfa\x02\x87\xf0K\x1c\x1e\xa5\xc7\xeb^\xea\xf3\xbe\x89\xc7j\xf6b\x87\xd9\xcb\x1d\xdc/x\xf0\xb9\xd4\x92{\x98\xf8\xc2_\x0eS\xfd\xfa\xb7\xbc\xf4\xc1:\x95\x83\xaf?\xd1\x0b\x00p/\x02\xbc\x17r=\xc8k\x17\x04s;\xf3\x83mQ\x00\x81\x85\x01 \x9a\xbe(j\x97i\x91\x00\xa8\x85\x02$-\x16\\\xc3\xd2\xf2\xfa\x98\xe8[\x16\xe5\x1b\xa2\x17\xee/\xd9\xad\xdeq\x98\xbe\x0f\xe6\x1f\xbd/\xeb\x07\xf4;\x89/0\xbf\xf0zu2\x96R\xe1\xbd\xd9n\x83\x1d\xd7K\x01\xf4\x96 ^\x12z\xe7A\xecl{\xc1\x08\xa8.\x11\xa33q9C\xdb\xdc\xbf\x1c\x8d\xca%\xc1q3\x08nj\x94\xc9\xc4\x9f\x02\xc0\xcd@\xb7\xa9vSy*\xe4\xe6\x86\xd9R\xf05;\xa6\xb6\x02LC\xa1h8\xe4,\x112K\xc5\xcal\xf8X\x16`,\x1f\"\x96\x05\n\xf3c`i\xe0\x97\xb8\xcb6\xc0+\x1e\xe9\xf2\xa0[<\x04k\xa5\xe2YV\x0c+\x01\xbc\x9a\xa1V\xdeo\xc4 N\xe5~7%\"S#\x1a5\xb7\xdfg\xee\xeb\xa5\x81P\x16\xe8I\xe9\x1b\xd0\xa7\x95\xb0\xd3\n\xbc\xc9\x862\xad\x80\x97,\xa0R*\x9a\xe4\xe4i,\xf8\x91\x178\x9a\xfa\xbcqP\xd1\xf4\x9c\x7f\xcc\xfb\x12\x8d\n\x85:\xe3\xc3\x81\xec\xed\xf7\"?H\xc8\xc7\x04\x0el \xcf:t'\x0d\xd6Y\xd8:\x01\xc8q\"8v\xe8\xc6\x85\xd9,\x8c\x81Ai|\xf0\x8c\x81\xcb$\x022\x01$\x06\x07\xc1x\xb1\x97\x19!2Q?\xfb\xcd\x87\xaf\xa4\x03+\x8b\x06\xa8\x7f%a(6\xe4d\x0dd2\x03JR\x11\x92\x05.\xb2\x02\x10\x99,sm\xf8\xc7\x04\xf8X\x8fx\xa4C\x1d\x06\xc0\x91\x84lX\xf1\x8c0\x90\xe1E0\x10\xd0E\x08\xb3\x980\x07S\xedXG\xb6\x1b\x9e@\xe0\x12\x01@bh\xde\n\x08b\x02<\xac@\x1c\xe68C\x1a\xc00\x87\x15\xf2\xe0 iw\xce\x8b \xf8\xa0\x83~\xb6\xdc\xb7\xa7\xed\xc5\xbe\xe0\xec\xaex\xb8h\xcf5/\x8f\xec\xe2\xcd\x18\xd7\x8a\xd8\xdb\x99E\xc1ZV\xd4\xd3\xa8W\x1er\x14\x0fQ\xae\x8b\xe8V\x8b\xeeE4\xab\xef\xdf\x1eu\xbf\xe8k?<\x87/\xfa\x85M\xd5\xb2b\xf70\x9e\xa0\xdf\x8d\xbb\xa2\xd9\xf4\x87\xc5\\u\xf2\x114U\x00\xdb\xa6\x95\xec\xa2\xdc\"x\x7f`\xaf_\xfe\x08\x87\xa2\xdd\xbd\xe8\x8f\xd2-\x94\x07\xabv\x1a\xda\xfac\x16MS_(\xf3\xc6a\x82\xc7\xe6:\x06\xc8\xf2\xee\xc0\xd4\x873\x83\xba1\xbe\x83\xc4GKs:5z\xbe~\xfd\xf2GC\xe1\xd0\x13\xf57V\x9e\xbe\xfc\xfa\x8bd\xebMN\x97Q\x18_\x8c_\xdb\xb2\x01\x7f\x1d\xf8[\xb5\xfba>\x06\x9f\x8bo\xfdo./\xf7%?\x9c\xaf\xc5\x10\x17=c\xe7\xe3\xe5\x9b\xab\xb7\xdde\xd9ug\xd6]~\xf9\xf5\x17\x7f\xd0\x17\xf8\x8f\xbf\xa0n\x80j\xdc\xa1\xe8\x0e\xe9]\x13g\x1b\x17\x16\xb1\x8ef<\xc0\x81\x15\xbb\xfe\xeb\xbc_\x0b\xc8\xf2\xd1bS\xb0\xff\xb7\xa1MC\xc8\xe3&\xd0n\xd2\xcc\xafcn\xc1\xb3\xc9)*\xf8E\x84\x89\x0c\xa6yf*\xff\xd7x\xe5\xff:Q\xfe\xaf\x0b\xbd\xd7\x0f\xff\xb7\xa8yy>\xc6\xa8\x9e\xd8w\xae\x01\xbe\xd5\x7f\xb0>d\x96\xc9`\x12\xc26\xa8\xd3f\xdd6\xe2\x9b\x87\x97us\xaaXr3\xadj\xe0\xd5\xe4\xaf\x81\x06\x1b\xdat\xd3\x8b-/o\x0b>\x0e\x82\x93\xa0\xa0\xaf\xcf\xed>\xa6\xa5\xcf\x16\xa7\xc1\xdb\xe1/\x96Vub9\xda\xcd\x9a\xff\x07}S\xcb\xfe\x8f\xd7\xe7*\xa6 \x13c\xcd\x14\xc0\x95\xfaw\xd2\x1d\xd5\xca\xb4\x89\x8e\xe7\xb2\xdd\xec\xabb[\xb26\xb9\x85\x16%\xf0\xa6<\xbd\xf8\xe3W\xff\xfa'\xf8\xfc\xba9^\xc3\x8eU\xc5\xc3\x1f\xbcM6\x14\xfe\xbb\xfb\x9e^\xb3\xb6*\xeb\xe4\xa6NN\x87o\xc5\xbf,\xad\xfaw\x84)\xa5*\xdd\xae\xaa\xa9wMz\xbb&\xa7\xc3w\xe2_\x89\xed\x92\xaat\xbb\x8a\xb6m\xeeV\xdfa\x9b\x16q\x8b\xff\xf4\xd5\x9f\xbe\x0e\xdd\xe2\x7f_\xbeM\xa6\xcd_\xdc\xe4}[<\xacn\xb3E\x89\x88\x9f\xf9\xfa\xcb\xaf\xbe\xc24Y6\xd4P\xe8m\xf2\x91\xb5{\xb6\xa9\x19\xefNU\xc9\x93\x1bmU\x03\xbf\x94-?K\x97\xe6\x07\xf5\xe5\xdb\x7fd~\xdf\x1f\xac\xbd\x84b\xf1_3~7\xaeC@\xecaW%\xe7\x83\xcb\xbe\xeb_\x93\x87\xa2\xdc\xf0\xf2\x18\x02jU\xfb\xf4)\xdaL\xfd\x99\x81\xd18\x9c3\xbc7\x8az{\xae#.*O\x88\xb9\xa4\x1c\x0b~\xb8\xb8\xaa\xb5kFe\x16T\xff*k\xb1j\x87\xe6\x06\xfe\xf7u\xb9\xef\x8f\xbb\xb0}y\xbc\xe9xy,8{\xdc\xd0\xdc\xb336\xd7\x8c)f\xaa-\xbb!6\xb7\xff0\xc5F\xf2O|A\xb6\xc7\xa7e|\x11\n\xbc+x\x017ms\x14A\xb3\xda\x0f\x01\x9f\xab\xea\x10M+\x8f\xe8\x97\xfa\xd5\x14\xeb\x16[)\xa2p\xc14d\xe8\xb4mvC\xea\xd1\xdb\xe3&\xcc\xd2\x0c\xad\xd5G\xebV\xeal\xf7:l\xf9\x01n\x8f\xc0\xee\xd9\xf6\xccu6\x01u\xa6\xe5.\x0e\x83\xca\xf8m\x88\x12\xb3\x8d\x84\xef\x1a\xfc\xb7g\xb1\xdb\xb5\xac\x0b\xdd}\xd58u\xb0\xde\xa3\xda65o\x8b\xad\xaa 3\xbaxD\x8fo\xd90\x9eys*\xb7i\x14\xd0\xac\x1d\x93\x07P\xaa\x15\x0c\x00Te'\xe9\x16\xf97s\xd3\xd3l\xa9\xde?\xed\x87\xc2\x8a\xc1(F\x92\xdc\x0f)\xbbaH\xcd/\xf6|`G^~{\xf5BevQ\xaa\xc4\x8c\xbf\x91\x15G\x90\x0d\xb1?y\xa6\"\x98\xd4x*k\xd5D\xb1\xdb7\xc6e\xc2\x9d\xa0sDU\x14\xdd\x1c~\x1f\xf1\xa9\xa7\x0e\x1e\x92\xd8\x18\xaa\x8d\xc47\xfc~S\xd6;v\xbf\xaawZ\xc9@\x17\x19\xd7R[\xbf\xa2\xb3\x13\xab\xe2{2\x1e\x9fn\xba\xf5\x9d\x9c\xf4\xb0j\xf6\xb6\x9e\xb5\xec\xd8\xdc\xb2\xdd\xfc:\xf3}\x10\xb7\xc3Z)\x107MUd\x11\xbcD\x7f\xbd;1\x9f\xf4\xf3_?\x8f\xca\"BE\xff\xa9=e\xb8Z\xd6\xb4\xfb\xa2.;Y\x18\x06\xfe\xab9K\x94\xe6T<@\xc19\xab\xc7\xfd\xbf\xb2S;\xd0\xe5\x0d<4gh\xd9\x96\x95\x13\xdf{\xd5\xec'\xbb\x19\xfc\xd06\xe7\xfdA\xecAV\xfd\xd2\xc7(Pf\xef\xd6w\xcd~\xdc\xd8\x14\x1e\xf8\xc1\xbf\xa1\xa9\x95\xcax\x0b\xf7\x87+_\xba\x8a\x00\x1f\x9eT\xdd\x8e\xde\x18b\xe2\x12$L\xa7f1 \xeb\x8c\xd3\x9bz\xcc\xbf\xfb\xf1\xaf\xea\x1d!\xb6e;\xde\xb4lw)n\xe6\xf8\x98\x0f\xe0\x97\xdel\x1a\x1d\x0b?\xfc\xf8\xfe\xcd0\xa5>\xd73W\xafJL/\xfd5\xfb\x0fhVwge\xccN\xf2q-\xeb\xf8\x146\x94\xbfj\xc5\xfd\x99;\xd6\x96\xb7l\xf7\x1c\xca\x0bv\xd1[T\"A\xba\xedb\xdb\xeb9\\\x9f\xb9@W:\xb6=\xb7\xb2g\xc3%\xadk\x8c\xef\xbb\xbd\xb6\xe7\xfb{\xf4;\xc66\xdb\xa2\x92Vp+\xdai}\xc4 \x08\x8cd\x84:\xddHg>\xa03\x1b\xce\xe9\x849y:\xca\x99\x0b\xe4\xf4c\x9cI\x10g^\x84\xd3 p\xe6\xc57\x1d\xf0\xe6Jtsann\x017\xf3b\x9b+\xa1\xcd\xcc\xc8\xe6\n`37\xae\x99\x0d\xd6\xcc\x8bjf\x035\xc3\x98f6H\xd3\x85h\xae\x014\xad@&\xc7\xe0\x98\xeb`L\x0b|\x99\x88^Z\xc0K\xe7\x8b\xd2 ]\xfa\xdf\xa0\x89\xc0\xa55\x96\x1a\xb4}?\x0b_;3j\xb9\x04-3`\x96Y!\xcb\xf9\xcbp%`\xa9\x0cmj\\\x83Tz\x99B\x07N\x19\x84)\x97l\x13\x1e\xa4\\\x9e\xfb\x0f[_\x93\x10JLgC\xf8\xa4\xbboAt2\x02\x9c\x9c\x03g.hr=2\x99\x0eLZ\xefK\",\xe9E%\xdd\xa0\xa4\x0f\x93\xb4\x1a\x0b\x8bH\x86\x00\xc9\x19\x1e\xb9\x02\x8eD\xa0\x91x02\x88EZ\xa8\xc3\xc5\xe5,\xc7\x84p\xc8u0\xa4\xb5Q\xc6_\xb2b\x90\x99!\xc8\xac\x08dN\x00\xd2\x85?.\xe0\xc7<\xe8c6\xf01/\xf6\x88\x83\x1e\x83\xc8\xa3\xfa\xd6\x0f\x01\x8f\xea0/\xee\xb8\x80\x1d\x97W\xc3\x82o~\xd0\x11\x899\" \xc7I\x93s\x02\x8e\x99\xf1\xc6|pc>\xb41\xfd\xee\x06\xb1\xc6\x10\xd48\xce\xd2\xa6\xa7\xa3\xec\x97\xa8u? \x19[\xe1\xe2\x17\xf5\xcc\x0e{\xac\xc6\x01JSW\xfe\xdf\x85kVz+\x86?\xea\xaf\x91]s\xbe\xae\x16\xbe\x96^\xc1\xe0FS\xd9\xf1;\xde\xb4\xbd]\xc5o\x16\xd7\xc0\xe7\xaf\xdf\xbc\xfd\xe9\xcd\xab\x97\xef\xdf\xbc\x1e\x88\xc2~\x88l\xfb\x05r\x84\x7f\xc0\xf4\x0c\xcc\\\x0f\x07v\xaf\x1a\xbe\xbc\xc0M\xdb\x1c\xbd\x17\x08\x1e\x10\xe1\x0b\x15.Oe\x9f\xfe`\xb1\xf0\xd7\x18 t\xe5\xbe\xbfqj\x97YmCj7\x9e\xda\x1e1\xf7\xbc\xb6\x07\xb6\xfd0\xdd\xd6,\xf6\xfd\xe4)S\xa3\xea3\xd5\xf6\xb2\xbc\xb8\xf8<*\xf7u\xc1\xcf-\x83\xcf\x7fy\x0e?=\x87w\x7fP\xfe\xedy\xda>\xb6=\xfd\xf1\xeb?\x7f\xf8\x12XU\xf5_{\xdb\xfe\xc3\x7f\xf0\x0c\xb4\xc5\xdd\n\xc3\xb4\xc5\xdd\xe0\x17.\xeeFs\x88\xb1\xe3\x1a\xa3\x93\xef\xce\xc9\x06w?\xde\x8aSw\xae\x8a^OQ[\xc7\xb9 2jx\xf7\xfa?\xc7\x0f\xc3\xd0\xcey\xb4\x7f\x1e?d'c\xc3\x1c\xbf\xb6\xfeO\x07\xb2\x1a\x1d\xe2\xa4]\xd9\x7fBw\xe2\x06\x1b\ng7\xf3\xbd\xc8\x9b\xdaw\x13\xbaC\xf1\xc7\xaf\xff\xec|b\xc4\xad\xb8\x80wlr\xbe\x05`\xe5\x83J\xf3?\x15\xc8\xfa\xe7\xaf\xbf\xfa7\xb1\xc0i\xd9\x0dkY=\xa4\x92\xae\x9a}\x9a\x7f\x19\x9deb\xe1'7\xb5X\xb6X\xd6\xfa\xcc\x95\x8e\x99\xe7\xdc\xbc\xa8\xad\x16\xbc\xa3\x12\xbc\xa7\x95\xb9<\xeaJ\xdb\xc4\xd3\x13\xbc\xb8'\xf87\x9b\xa7]\x8a\xdd\xdf\xae.\x15n\xe0y\x99s:\xb3\x07^\xa9\x9c\xfb\xe1\xd5\x9f\x83\xa3\x0c\xe7\x93\x1f.2sZ\x07\xaf\x82\xb1C\xa4\xaf^\x8a\xcdc\xaf\xb4\x06\xfb\x9c\xc3{/\xe51\xcc\x81\xf1\xeaKY\xf8\xf6\x95\x1e\xab\x87_J(4>\x83\xb7_+J\xf6\xf9[t \x06`\xe1\xf9\x97\xe2\xf3\xffK\xf1uz5\x0b0\xd16\xe7\x02\xa4\xac\xa0\x03&z\xa6\xa4\x80\xc1\x08H\xe1\x0bR@JF^@\xca\x94\x1a\x90\xb2\x86\x1d\x98\x9bp\xe4\x08\xa4\xb8k$\xf5#b\xf6\x99>\x9b\xc0\x86\xed\x14q[_\x18\xf7T\xafkf\xea\xf4e\x89:\xf4R\x87\x02\xfd\xdc\x9c\xbb%Z\x14\x850i%\x83\xab\xa7\x83Cs\x07\xc7\xf3\xf6 \xd8\xd0~\xce\xe9G\xc4\xf98>!\xcboE4\xbe\xe5\xbbej\x827\xde\x07b\xfc\xf4\xab\xc6\xff\xee\x9a\xfaE{\xda*\x97\xbd8\xd3\xbd\xfa\xb7&\xe7\xff\xbe\xdb_\x1a\x1f\x08\x93\\\xfd\xd6u\x7fd\xc14v{\x945G\x02\x16p?K\x83\x06s>\x14\xf6n>\xb0\x1a\x86\x82&\xfd0\xd5\xb5\x11\xda\xb3|7\xbd\xf9\xe5{\xe8x1Y\x8c\x89\xdb$=\xff\xfa\x99R\x055\xb6-+xR]\xb7\x89\x02\xe0\xcd~_\xb1N^\xd9\xbc\x9e\xc2s\xd4\x0e\xe9\xed\xf1\xe2\x958\xc1P\xa4\x1f\xb8Y\xc3\x8ajQ\xcc\xc0\xd1,\xe3\x8c\x98v\xf4\x87\xcf\xaf}\xcf\xdbb\xc3\xcaS\xda\x87\xc8b\x9da\xafv\xa2\x9b=\\l2:\x8d\x8d\xd07Wo;\xe9\xecVM\x16\xf8\xb9\xd2#^\xf6\x9b\xad\x11\xa5j\xe86\x7f\\\x14\xba\x10?\x82\xfcQm3\xcd\xab^\x80m\xa4\x83\xf3\xd3\xca\x19\xfc\n\xbe5\x98\xde\xa0Y\x1d\x04\x0b\x9e@XL\x0b\x16\x8b\xaf\xb5A\xb13u\xaa\x17\xd6\xe6.\x82c\xc1\xbbl\x0c\xb689Pv\xa6p\xd2C\xf3\xb1\xb7\x06\xccB\x8a\x95W\x07\xcfB\x96\x00\xda\xf0\xcd\xb2\x06\xd2\xc2\x8a.'\x06\xd5\xce\x94\x89_=\x81\xb5\xe0\x0c\xae\x05D\xdb#\x82l\xc1\x19h\x8b\xbfP(\xe0\x16|A\xb7\x98\xcb,\xee\xc5\xea\x00\xdc\xc5\xedX\x06\xe1B0\x10\x17R\x9a\xbe:(w\xa6\xcf\x13,\x07\xde\xe0\\Hi}Z\xd0\xeeL\xc9,\x84\xd7\xf8\xd5\x15\xc5\x0b)m\xcd\x1a\xd1\x0b\x96\xa8^\x08D\xf6BJ\xab\xd7E\xf9\xce\x94!\x82@\xc1\x19\xed\x0b)\xcd\xcf\x18\xf9\x0b\x8b\xe8_pF\x00CJ[3F\x03\xc3\"\"\x18BQ\xc1\x90\xd2\xe4\x9c\x11\xc2\x80\x1f \xbeHaH\xe9\xc7\xda\xa8\xe1\xb4n\xf8\xa3\x87!\xa5#\xeb\"\x89g\xcaT\\\xf1<\x9a\x18\xdc\x11\xc5\x80hs\x8e\xc8bpE\x17c\x1a\xb06\xca\x18\\\x91\xc6\x98\x8b\xaf\x8b8\x06\xef\xbe\xe7\xaa\xc8cC\x8f\x19\x83<\x8b>\x06w\x042\x88\xa4\x1cUs\xb79\xd7\xa7\xb6\xe1l\xcb\xd9n\xc3\xef\x17\x1f\xc0\xde(\xb5\xc9\xe6\x85U\xdd\xd0\xb5\xf2\x06Zv\xaa\x8a\x87\x17\xc3\xef\xf0yy\xd1\x7f\x9c\xd4j\x91i\x8e\xd8r_\xb3\xdd\x1f&%)E\x9c\xc45S\x9b`\x03\xad\xaf>\xf9\x8f\xc5\xf6P\xd6\x03\x92,\x17\xd2b\xc1\xbd\xa9\xcf\xa1\x1d\x19\xc7\x06\xd9\xa4\xaf3\x8dz\x9fn\xf4\x1d\xa9\xb5\xbbX\xd3\xf3\x06N\xac\xed\xcaN\x19[\x8d\xa7\x88\n\x94\x8b\xcd(Qz\xf2\xe5v\xdb\x9ck\x1e\xed\x83\xbe.\xaa\xa2\x0e\x16\x1e\x9f\x155\x15\xa7\x0cx\x82\xfa\xa7\xa6F~\xf9~\xb2\x1d\xa5\xed\xbemv\x0c\xb3\x0b8\xb9\xd4p\x92\xbe\xd8\x81\xdd\xbf\x90\xf7\xa4\xbf\xcfb#^\xf2\x00\x03\xb3\xf0\xe6\xc7\x97\xfa\x92u\x13\xee\x19\xe6\x06\x0b=\xba\x05\x854\xf4\xb3\x0e:\xf6\xf73\xeb\x7f\x91w\xda\x17\xd4h\xbbE\xff\x1f{o\xff$\xc7\x8d#\x88\xfe>\x7f\x05N\x11o%\xed\xb4K\x96<\x1fqz\xe7\x8d\xd5\x97\xed\xde\xb1\xa5>ukv/&\xe6\xb5\xb2\xaaX\xdd\xb9\xaa\xca,gfu\xab\xe7v\xfe\xf7\x17$\x93\xf9 \x92\x003\xab-\xcf\x12\x11\x13cu%A\x12\x04A\x10\x00\x81\xd6\xea<\xac\x0c*\xff\xaaZ<\xa9\x9b\xc0\xfb\xb3W5&\x1df\x88\x1a%\xeb\x9a\xe0j5\xbeT>p\x90g0r\ny\xea&,\xf2\xfcC\xd6s\xefN\xf1U\xbe\xe6\xcf\x0f\xab\x17B1\xcf\x8fv\xeb\xd0>=\xdc\xa2I\xd6\xc6\xac\x98\xf8\xa519\xfe\xab\xc7\x19\xdd\x19Q\xd8B~\xcf\xe0\x89W\xaa\xf4q\xa8\x00\xd5\x85\x93/i\x19\x17\x06\xe4\xea\xb64\x133\x85\x98\xfb\x01&\xb5\xd41\x92\xcd\x88\x1e\xe2\x92\xb9\x84[#\xc5h\xf2\x0d\xcc\x07s\xa49\xe8\xa3\x1a\x8c\xa0\x1bP\xe8\x10\x1b\xe8\xea9\xb9\xa4\xdb\xfaI\xaf\xb9Q\x8f\xde\x9f\xbd\xf2rM\xbf\xd63\x99]\xf6\x1d\xcf\xd1hf\xfb\xae\x16\xa0& nvc%`1\xa09\xc9\"\x8f\xf8\xa0\xc0\xa5\xe8\xba\x83\x11&\xfa\xa3\x06\xd8\xb4wj\xf0G\xc4E\x05v7\x15X\xf5Rp\xdc\xb3fsY\xc1\xd8m\x056\xd7\x15L\x1a*\xdf\xa7E\x18&\xe2\xe5\x82f\x94\xe3\x9044 \xcd\xcaI6\xaf\x17\xc0\\\x9e/\xb0z\xbf:}\xcc\xe1\x01\x03\xdb\x9e\x03G\x90\xa1\xc7\x1b\x06n\xda\xcd\xec\x15\x03\x8fg\x0c\x88\xa3A\xc2\x93&y\xc9\x10l\xdd\x99Y\xa7\x80z\xcb\xc0\xb9\xc3\x80:\x8b \xcf\x19\x82\xb0\xd2IgQ\xef\x198=h0e5f\xf1\xa6\xc1T\x8f\x1asa\xad\x9e5\x98\x81\x14\xf3x\xd9\x80\xe8i\x03\xa7\xb7\x0d\x88\xf3az\xdd\xc0\xe9y\x03V\xa7\x14\x0f\x1c\xf8\xbcp@\xec\x12]\xb7`\x8f\x1c\x82\xabc\x8bC\xbdr@\xf2\xcc\xc1\x94\xe9\x04{\xe9\x10\\D\xe34x\xbdu0eF\xb3x\xee\xc0\xe9\xbd\x03\x8f\x07\x0f\xa6\x8c?\xd0\x9b\xe7f/\xcc\xa3\x07\x04\xaf\x1eL\x99\xc9\xac\x1e>\xe01\x98\xdd\xd3\x07S\xa64\xc9\xeb\x87\xe0\x93;\x7f\xe4\xf9\x03\xa7\xf7\x0f\xa6\x8c\x7f\x92'\x10\x1f\xff\xd8\x1b\x08\x14\x8f L\x99\xc64\xef \x82\x10\xd5V\xad\xcc\xe5\xf3\x12\xc2\x94\xb9M\xf2\x18N\x9e\x9a\xdfs\x08S&7\xab\x17\x11\xdc\x9eDp{\x13\x818\x8f\xb9\xbc\x8a\xe0\xf2,\x02q0sx\x18\xc1\xe5e\x04\xe2@\xa6{\x1b\xc1k\xd1\x99\xcb\xeb\x08~\xcf#\xb8\xbd\x8f\xe0\xf7@\x02\xb8.xvO\xa4\x15u\xa07\x12\xe6\xf0H\x82\xcb+ .\x16q\xbcX\x9a\xcfC \x10\xe2\xa5t\xdal\xfb\xb6\xd3\x1e\xbe\xb1\xc5V\xbd\x18\x92W\xac\xcfO\xc4\x8dy\x10\xd27\x86\xe2\x16\xdas\xfd\x9e\x9cm\xa2\x1d\xe4\xdcB\xa9o\xdfK\xfa\xf9uwJ\xcd\xbbv\xb5\xf8\xfaw\xfd\xfa\xa5,\xf3U\xaa\xde\x17\xa9w#\xf2\xe3\xab\xf4Ft\xb9\xf9\x93\xc0\xb2\xa5\xf6\xfd#\x83\x89R\\$u\x13\x86\x97\xe4\xa2HVB\xdd;\xd9\x04\x9d#/\xf3pN\x9d\xcc]i\xfd\x10\xf97\x9d6\x96!7\xeb\xd2\xfe\xe4\xcc\xb9\xdd\xa2y\x95l\xb7\xbf\xae\x89wG\xdc\x9fw\xf7\x17\xf7\xac\x03\x1e\xb5\xff\xa2sF\xde\xf7\xd4\x7f\xf7/\xf3\x9f\x93m\xbaN\xaa\xbc\x08\xf5\x04\x1aoV\x80+p\xd0\x94\xe4\x0bT\xa4\x10\xab\xebo\x9e\xd5\x04\x8d\xce\xc1\x91d\xb4\xad)\xdd?8\xc4\xe0\xf3\x0d\xea\x0d\xc6\xab\x14W\xc96>b\xd5T\xd1\xdf\xea\xc7\xfcu:\x9b\xffLn\x12M\x81\xfaW\x836\xdd\x89\xfc\xe0{(\x89] \xea\x96\x90\xdf\x88\xa2P\xe9\x0e+\x95\xc3I\xe7\xd1j~\xdd\xc0\xef\xa1\x14+e\xdf\xdf\xe4\xdd\xdb\xc0\xbf%7\xc9\xb9\x1a\xd2W:\x7f\xaa\x1c\x98\xec\xb5\xf3\xcd*\xd9n\xdb*\x12RS\x9a\xc4.\x1aE\xef\xe0m\xf5\x1bu\xf5\xa9\x1d\x94\x0d\x01o\xd3\xedV\xe52\xc9\xe1*\x87e\xd2\xd8\xaa\xd7i\xa9|me\x95\x8c\xeb\xc0X\x9e\x9c\xf5\xda\xd4\x9a\xba\xf6\xd0\xad>\xc1*\xd9W\x87B\x8c\xd0\xab3\x98\xddA\xadM\xb4]\xe8?\x0c:\x11\xcb\xc3\x15\x15\xb5\xfc\xd6\xa8\xac\xc6[\xbb/\xd2\xac\x82\xfcP\xed\x0f\x15\xac\x0f\x852r\xeb.@4o\x9f\xb7\xe9.\x1dqX\x9aU\xe2\nI\x05\x94f\xd57\xcf\x86\x9d+\x0c\xbde\xdb%\x9f\xd3\xdda\x07[\x91]U*\x0b\x80\x1e\x85~\x9d\xfc7Q\xe4\xb0\x13IV\xc2!S\x8d\x9b\x07\xb8\x0d\xbb>\x1fv\xd22\xf2`\x96\xb5\x82\x0e\x89\xe6\x8b:\xbb\xcd\xe6\xa0\xa6\xa9n\xc8\xc5a+\xe2\x13\xb8i\xce=\xe2\xab\xaa\xf8\x04n&\xa7\xdd$\x87\x1dq\xb1\xe2\x138\xbf3.>\x81\x8bO\xe0\x88\xa3\x9f\xc5\x91\x16\x9f\xc09F=\xab\x83\x8ch\xe4\x8fO\xe0\xf8\x8e\xaf\xf8\x04\xae\x03\xecyLrh\x05O\xc3\xef\xc8bOdV\xe7U|\x02\x17\x9f\xc0\xf1\x9e\xc0\xd5\xe1\xb6;\xb1\xcb\x8b;\xe2=\xba\xd7\xa6\xbd\xa0\xd7\xff\xee\xdf\xcf\xebo\xf5\x13\x8fK\xcch\xea\xee\xa4\xd3\xb0\xedI\xd9\x0c\xeb;z\xbe\xa9\xdf\x8f(\x93j\x8dE\x1b?.\xff\xb3\xcc\x91D1^\xabS\xb7]\x13++zf\x15}\x7fNt\x8a\xe5\x1e.\xe5\xfd\xb8\xc4\xae\xe8.[\x8f7}W%v\xfb\\\xd7\x0c\xd1\xbe\xb5|\x9dn\x9a\x02?U\x0e\xdf\x8b\xea\x1a\xd2\x0c\xf2B^\x1e\xaa\x1c\xcat\xa7r\xbf\xaaa\x8b\xcdF\xac\xaa\xae\x1e\xa5\xf3\xec\xaa8\xeb\xfa\xafJ\xf4\xcc2r-k[c\x84\xfe\xb7).\xa53\xb75\xe9\x90\x93R\xa5\xb6R8z;\xa5cb\xacs[\xab\xf0\xe9\xee>\xa8\xf2\xda\x9e\xd1\x14\x16\x91|\xad\xcd\xc9\x8beR\x8a\x85\xce\xc3w\xf3t)\xaa\xe4\xe9\xe2L\xb9\x8f~>\x88\xb2\xbet\x8f\xec\x1cc\x1b\xc7'1\xda\x17\x14R\xd8\x9d\xb3\x9f\xc4\x9d\xb6kj\x17Y\x93\xe1,\xcd\xe0\xac\xe3\xdeZd\xe2su)?Ve\x90\xae\xd2\xae\xba\xd08\x0b\xd5\xd5^Ru\x9f\\I\xae(+\xb9\xd6\xe9*U\xc5\x88\x16\xf0N\xde\x13\xf3L\xed\x93|\xb3)\x85J\xeb\xf6It/0m\x91\xb3R4\x82A\x7fL\x9c\xb9\xcb\xb6\xde\x9b{=\x045\xfd\xec\xb0\x13E\xba2\x7fS!\xfd]\xb3\xd5\xed\xb5\xc8\x0c\xb1\x0eYSV\xa9\xebN>U\xa8\xb6\xa2,\xdbY\xeb*Fz\x83~\x12.\x12\xd4\x13\xef\xe0\xeb\x93\x005\xfa\x05P\xa0\xb7\x91\xb5\x1d\xd0d:\xcd\xabd\xdb\xb1\xdf\x9ab\\\xba\xf0U\x973j+\xfea\xdbK\xf7\xab\x0b\xf9\xb4\x7f8\xdd\xc0Vl\xaa\xbaVSZ\xe9d\xf2\x8dA;o\x98Nw I\xb1\xbc\x03\x91\xac\xae!\xd9\xef\xdb'\xac\x87\xac\xbaTc\xf3 k\xfb<;H\xe4l\xd5\n\xe7:\x9f\xa7\xfc\x8f4[K\xe9%\x9a\x1au\xf5\xec\xd4\x87\xa3u\xa9\xd3\xe2\xf5\x12{\xeb\x1e\x9a|\xad\x03J\xaa\xa7\x1b\x9dZ\\\x9b\xbc\x90\xe42ou\xd2\x0c>\x9c\x96=\xda\x0d\x06\xac\x0c,\x85(\xf7:6B1c\xcb\xbd\x92A\x175\xfb\xa5WY^\xd4\x9f\xf4\xb7y\xef\x0c.\xbb\xac\xa5R'\x96^\x9b\xb8\x9d\xbc5\x82!i\xd3\x96\x87\x92BX\xf8Hb\x15\xd9\xba\xafB\xa8s\xa3\x9f\xb5\xf3<\xcdV\xc2\xbc\xdf\xfb\xaa\\\x7f\x82\xaf\x17\xbf\xfb\xe67\xa3\x815;\xdcT\x0c8\xcfwF\xcc\x8e\xeb\x01|\x97\xe7P\xe6;q\xd9\xc8q\xb4\xb6DGTw\x17\xae[`B\xe7\xfb\xaf\xcf\x9cf\x10\xdd\x86\xa9\xd9JM1\x854\x83\xab\xf7g\xaf\xa0\xa8\xbf\xa8\x87\xac\xdf\xdc42\xa4F\xd5\xf6\xbb\x807*\xc5\xae\xefha\xbaR\x8d\x88'\n\x19\xe2\x01\xd3\x1c\x1c\xb5\x94i\xce\x10\xd8'e\xed\x10\xe8Pi\xa1\x7f\xef P3\xf3\x1e-\xa7U\xa7V\x85\x927\x9b\x0e\x0e\xa5\xc1*&\xccr\xd8\xe5\x85\xd9\xe0\xcd#7T\xbe\xd0\xa4\xebp\xc9\x1btz\xc1q\x99\xda\xa9\xcb\xb7\xe9M\xbf\xb3\xf1;\xf8n\x13\xb5\xb3N \xad\xdaZ\x03p\xc8\xb4\x9a\xbe\xd6\x15\xf3nS,\x11\xe7\x80\x15;\xaeX\x1b/\xd6\x9f4\xccx\xab\x88\xd7\x1a\xe6['\x84<\xd5\x06\xbc\xabJ\x8e\xa8\x13\xb3;\xabf#\xf77e\xdd\xd3hW\x16b/T\x84\xce\xcb\xa4hHf\xdf\x975\x1a\xc5\x19\xc3-\xb9\xf9\xbc\x10\xc5\xea\xd9\xd7\xaa\xac\xff\xfbW\xcf\xbe\xbe\xc8?\x89\x8c\xbc'T[bpA\xcd\x08\x9d\xc0\x01\xd5a'O\xbd\xec\xba\xfe\x9c\x92\x99\xd4\\8u@\x82z\x84\xde{\xe3\xa9Wp\x97\xec\xf7j\x1b\x99!\xab\xbb\x8a\xb7\xbeus\x9d\xceo\xcb\xfa\x01\xa9\xc4$\x97TcP\xba\xfd\xa1l\x16]O\xe22\xbf\xcdzns\xe4z\xa0\xa7\xad>l\xa8\xf1\xe6\xed\x87\x9f\xe0\xd1\xd7\x90f\xaa\xe0\xe1 <5\x11lup\xc1 <\x93*\xb5(\xb2\x1e\xe7\xd7\xed\x1f\xbb)%\x06\xe1{_\xc1\xbb\x7f\x7f\xfb\xe6\xfd\xe5\x87\xb7\xe7go^\x9d~w\xfa\xe65\xf2\xebO\xef^\x7f\xf8\xf1\x0d\xf2\xc3\x9b\xff\xb8x\xf3\xfe\xed\x8b\x1f\x9b\x9fj\xa5\xe5\xb9\x03\xad]\x02*r\xbcS\xd4\x10J\xcdT50\xa4@S$*\xaf\xd3\xbdd\x96d\xc0.\xfd*m\xc8\x8c\x90\xd1\xb4I\xb83C\xe9'\x1d)!\xbb[`X5%\x9e\xf7\xfe\xa5y_i\x1f\xb7Y\x9bkX\xff\xb5\xbfv(NC\xc4\xe7`\xfe\x0b\xc1\x98d\xcd\xa2S2\x13\xb4;\xb8?S]%\xcfT0Z\xe5\xc5\xba\x84}\x92j\xffy\x9e\x95iY\xc9\xff\x94T\xae1\xe9'\xe8 w\xd2\x8d\x80Wy\xaa\x0b&%Y\xbd\nzGt\x86\xd4\x15$\xef\xda=0b\xc7.+\xda\xd9\x10eA\x94\xfd<\xac\xe7\xa0\xd3\x14\x96\x9b\x9f\xdd\xe6f\xb59\xd8\xac\xbb\xa6\xdc\xec\xd2\xda\"\xa4\x9a\xbbDm-\x1f\x91 \xde\xde\xect\x12\x82\xc1\x90\xe6Ly0j\x827\xb3O\x0d\x9f\x1e\x04L\xd1\x19<6\x88R&D\xd5\xd6\xfdbA\xb5#b*\xd1q\x96\xa4\x05\x9b\x9eZ\x11\xa8Z\xe5\x01m\x87\xb7\x05\xbb\"\x01\xb6\x13\x0d\xb8\n\x05\x8c\x95\n\nr\xa6r\x01\x98\x82\x01V\xd6\x00\xbe\xa2\x01\x0ee\x03,\n\x07\xcc\xact\x00\xa6x\x80\x8b\x9aC\x05\x04\xbcJ\x08\xb8\x14\x11p)#\xe0?\x15\xda\xcf\\\x8f2&\x9f\x12\x06\xe6?-\x86\x98\xe7:5\x86x\xa7\x9c\x1e\x1a\xea[\x90\x81B\x14\xe4 \xa9Md\xb2,\xca\x83\xb66\xfb\xf2\xe0\xb39\x8c\xcc\x96\x83\x9f\xa5]X\xefr\xbb\xf4J\x8a8U\x03V\xff\xe7{\xb5\xe9\xc8j\x85\xb7Xp\x95;\x7f\xbe\x16\xe9\xd55\xd5 k\xd6\xb6?p5\xd7z\xf4\xaf\xae\xc5\xea\x13\xe5\xe1\x9b\x1d\x85&\x00[\xbf\xda\xe4\x87\xcck!\xee\xbffNJ\xa8\xc7\xa0\x9c{_\xfd\x8b\xf9\xe7\xfa\x046\xc9\xb6\x94\x7f\xc9\xf2\xaa\xf9\xab\xd9\x1b\xf5\xbf/\x8b\xceR\x8d\xb0\xef\xba\xb3\xe9I/\xf9?\xd3\xafF\x11$\xb5\xfa+\x0f\xf6\xcd\xd9\xe5\x00\xc7gCNp|:\xe6\x88\xae\xdf\xcex\xec\xe4!@^>\xbf\xf3 \xd9I\xa6r|\x82o_u\x145G\\}\x0e\xa9g\xd2I_\xf7\xac\x8f+\xddM\xa3P\xe8\xba\x8a\x17\xd7\xa2\xfe\xc1\x14\xb1T\xc7\xe5iV\x99\xf2\xb3\xfd\x97\x15\xf5\x8b:\xbd\xd5kLM\x11\xecR9\x98R]\x16\x11\xae\xf2\xab\\\x95-\xac%\xc2U\x91\xdc\xa4\xd5\xddbU\xe4e\xa9\xd2 \xca\x0d\xf2\xb2H\xd7W\x82\xe7\xe8A-;=\x92\xba\x89\xee\x19L\xf3\xa2\x91<\xa0}~\xeb}\x9e\x88\x9e#F\xc9!x\xad\xea\xc3f0\xc4^\xf5O\xb81\x7f~X\x8e\xf4'\xc5\x06\xf2\xb4P\x83uQ!\xc0\xf5f\xd4\xd5\x19\xf9\xbc\xa3\xc7\x1d\xb2\xf4gy\xc0\xadEV\xa5\x9bT\x14\xea4\xea\x16&\xef\xa8bNn\xfb\xa9\xbc\xd2\x04|\x95l\xb7*B\xac\xd8\xd1'\xa9\xf2cf\xc9\xce\xfdpx\xa9:(\x08K\xcaZ\xff \xd9\xda\x9b\x0d\xca\xdf\x11?\x95W5\x99^&\xd5\xea\x9aL\xab\xe0\xb1\xaa5\xbc$\xf1\xd3\xd1\x08\xed\xa7\x17\xd0\xd8\xc1E\xd6wE\xb2\xda\x8asQq\xd90\x98\xb4\xbfbzib\x91I\x94\xab\xcfIc?\x1aQ\xd6b+\xae\xa42\xe5\x15{*\xf4\xb7\xa8.\x834\xd6\xfa\xd3\xda\x1e$\xf1\xd4\xb3\xaf\xd5\x1eC\x91l\x9bf\x9e\xa8\xb1f\xc47\xfd\x03\xd02\x96r\x9b\x94\xd7*,\xdeM\x08T\xcbv-\xf3\xb9\xa0\xc7\xd8\x06o\x86\x9d\x90\x97\xb2#\x1b,\x07zA\x17\xc7`\x8c\x1a\x1cwM;\xef9\xb1\xe2W\xd4\xc9J\xc4x\x96\xf5_X<\xdc\x99\xe600\xab\xe1\x04s\x1bmF\xa2\x1e6\xd43\x80\x9f\xe4u:\xbd\x82sy\x15V\xd1\xa85c\xb5\xb3\xa8\x11&\xdb2\x87]\x92\xd6\xc5\xb6\xbb\x06\xa6\xda^!\xa5X\x13Hu\";-\xb5!\xc1<\x85_\xc9+\xa0a\xfeV\xe7\xcd;\xa8\x96b\x95\x1c\xca\xa6\xc4\x87\xfcJ\x05\xdbg\x95zr[&7ivU:\xb7\xc0\xa1\xba\xca\xd3\xac\xa3\xa6\x90\xf7B)\xb2\xb5G\x0d-\xc4\x06\xb9L\xf6>\xb9\x0fC\xfe\xf8x\xef\xa2A\xb6\xc6P\x86:?\x9fM\x8dT}\xb8\xad\x0c\xded>;\xb1sc\x08\x96`\xb4\xec%\xb8&\xa0\x1el\x84\xeeU]<=8\xc6]\xdc\x88\xac\xba\x0c\x9a\xb6w\xd7\\\x14IVnDq\xf1\x99\xbck\xd2\xa0\x12\xf0\x84\xbd\xb6\x16%-\xd5Qx\xa0\x02\xbe\x8f,\xdb\x02\xdbC\xe8\xa7\xb3\xee\x1f\xa4$\xd0?\xc6\xd4\xea\x13k\xccy\xbd\xd34S\xef\x15n\xd2\xf5!\xd9*\xa6\xd1E~\xcc)U\xe5\xf0\xe6\xe2\x07\x12g\x7f\xe6]\xc0\x96\xf2\xeb\xb0]\xd66\x9f b\xba\xc9\x1e\x8f{\x98\xa4\x16\xcf)W\xc3\x1ani\x0f.|{{\x1a\x0d\xb6z\xf7\xeb\xd1|\xc11gp\x1c\xa2\xe0\xa6\x80\xed0\xf54\x9bq\xe7\x18\xe8\x89\x86\xee\x00\xfe\xbb\x91b^Q\x02\xc0\xb3\xa2\xf4\x9f\xa2\xd3w\xf8F(G\x81Ho\\\x12fx\x01\x19\xc8\xb3\xfe\xd5CI\x1d\xa5!\xeb\xeeXy\xe7\x0d\xca\xb5\xfa\x0e\x9cN\x0ep\xb4\x0b4\x89[9\xc1\xd1\xc2\xc6\x0d\\~h\x8c\xba/\xef\xde\xe6AU\xa8[A\x1a\xb4\xcb\xb1K\xaee\xd6C[\xb1\xe3\xd3\xa1\xcd\x18,\xbc\n\xee\xd2\x98\xff\xed\xee}\xb4\xf8\xa5\xbe\x8d\xd9\xf1a\xdf\xd6\xec\xf8p\x1eY?\xd4c\xc2\xd0\xe0\xb6\xe80\\\x88>\x14\x86\x08\xb5Q\xf3P\xd1%\xc1\xb9\xda\x93SD\xc1\x91\x8f\x08\xa6e\x0c\x13\x1c\x8e\xcf1\xe1a\x17\x1f\x16\x01\xe2\x14!n!\xe2\x16#\x1eA\xe2\x12%\x9e\xa6\xb3\x8b\x93\xb1@q\x8c`,T\x1c\x1f\x8f\x05\x8b\xe3\xe39\x15\nL\xc4\x84\"\xb3\x0b\x9aP\x8c\x16q\x13\x8a\xce*tx\x08\xa9\x82\xc7\xc4u\x05j\"\xf7\xa3\x9d\x92\x15\xaf\x16\xee]\x9d\x9c\xbcb-p4S\x91\xe5\x87\xab\xebK4\xf6\xb4\xbdLS\xb9\xe1\x7f\x1f\xf2J\x84\xf2\xc2\xcf\xb2\xf1p\x0c$}t\xe8\xbc\xa1\x9f\xafM\x8b\xb1K\xc5\x82d\xe4o\xb0|\x97w\x82\xcd<\x9f\xce\xa7p|\xde\xa7\x05\xf7\x9d\x0e{\xcb\x97/\xef\xbe\x13\xe2\xbd6\xdaG\x8d\x03\xfb\x1e\xf2|\x84\xf1\x90\x8f\x87|<\xe4\xbf\xacC^\xfe\xed\xc7\xb4\xe4W\xe3mMka\xe7|\xc3\x9c\xa4a\xe6i\xf6\xf2\xee\xb5\xc8\xf2\x90\xa8\x864L\xde\xc4\xf8&_|\x13e\xe9\x94\xfa\x10\xacG\xde\xc7s\"GT5\xa6\xa2\x10R{\xb9\xe92\x0c\x1db\xd3\xa6\x8d\x15\n\xe2\xebI~I\x03\xa3\x07\x90`Y\x1d\x98\xd9i\x8f>\x8a\x04\xb76\x02\xee\x93\x0f\x08\xe6{p\xf7`O\x7f6\xe9\xb1\xe4\x08[7\x03\x83\x819\x9c\xdf\xd8\xf8\xa7>\xa2\xec\xa0j\x9fSv\xfe8\xfdMe\x07\x99~]\xd9\xf9\xc3\xd1\x9eX\xaa=\xac\x8e\xa2\x8b\\ 7\xf6\xfeu' qw\xfccRVo\xa4J\xae\xaa\xa2\xfe\xa0\x96\xfe\xe5\xdd\x8b\xf5:\xc0\x1e?\xe1\x19\x1fq\x90\xca\x1f\x148\xbcc<\xf4kF\xf7nY\x8a\xe2F\xac;T\xe4\x0f\xb0\x1f/\x1fFH8\xfaBt\xce\x19\xa5\xa1\xf2\xcf\xe2\xf6\xbc9\xf2I<\xcb-S\x03z>\xd9O\xa8c\x18p\xac'\x95\xf7\xac\xf2\x9eV\xb4\xf3\xca\xd3\x8f\xfd\xcc\x9a\xfb\xd4\xc2\xcf-\xfc\xe4\n[p|.3\x9e`\x963l\xe6S\x0c9\xc7\x8e}\x92I\x11q\xa6c\xeaU\xbcq-%\x02\x85\xf6\xb2}e\x8a\xb6\xc0[\x81\xed\xc5)\x04\xa82\xd6\xd7\xa7a\xc8\xf0\x97\xa8\xe0\x90%sj\xbb\xe3\xd7\xa9\xe0\xdb\xd6^\xe1\x81\x1b\xce\xc1\x87\xd7\xf5b\xd5\xdb\x18\xbdc\x81O\xbe\xfa$\xac\xcfH\xee\xa5\x94\xdbP\xeem~\x04c9`\x91&\x1a\"\xa9\x86\xa4\xb2\x9f`S\x1f\xc3\x8e\x10\xb6\x8fc\x01\xc2\x1e\xaa0j6[70\xfah\xd6\x8a\n\xbd\xd4\xcd\xf1\x80\xb6G \xdf#\xda\xd1)\xd3\x89]\x0e;c\xa2\x8bq\xdc HC\x8d.F\xcf\xc7\xd1\xc5\xf8+r1\x92%\xd0\xf0F\x1c(\x87\xe2\xb58H\xe8\xc4kq\x0b\xf1Z\xfc\xa5^\x8b5\x8d\x02e\xc2P\x1c\x90.\xc0\xb6\xac\xa3`_\xfb{{\xfcl\xcdF\xeah\x83g%u4h\xf9\xd8\x1a\x9c`\xcfP\nH\x96Rh\xfa\x1a\x97\xc1qe+\x05\xc7\xa4\xb0\xac\xa5\x8e\xef\xc7s\xa2\xb0]\x9b\xd6\x97\xcd\x80\xbf\xf8\x1b\xfe{\xe3\xc9_\xe0A\xfepu\xca\xd0\x17/\xf7\xf3\xfaiF\xbd\xe1\xde_Eq\x9e2i \xbf\xf5\"\xaeq\xad\x1c\xb2\xd76z\xe7\xc7\x7f\xf6\xa8\\^\xc5\xce\xc7F\xe0\xee!z\xe7\xff{y\xe75mB\x1d\x9dG\x96\xca.=\xcf\xc1\x1a\xf7.\x81\x9d:\x9fKr[\xf5>\xd2\xe1\x83 \x00\x92\xf6\x87\xeb\x7f\xa6O\xac\x10\xa2O\x07tM\xd2\xa6\x07\x06\xcc\xb1g\x0f\xabYP\x99\xe6\xf4\xc6\xdbn\xd5^\xf8\xf9 \x8aT\xac\xcd\x07\xfe\xf0\xbb\x81\xa5\x97\xbd\x19\xa2+o\xde\xa31\xba\xf2\xfe\xdb\xf9\xa7\xa2+\x8fL\xaa\xe8\xcas\xa2\xfa\x82\\y\x83n\x03\xd4\xac\xa5n7<[\xe6U\xb3\xac\x87\x10\xe9\x84\xc6\xae\xc0\xf6\xa3(\x14\xa5\xfd@\xb2\x1fI\xc70\xc9\xe3G\x93W\x10x\x8f'\xd7\x01\xe5\xc5\xee;\xa4\xbc\x08\xac\x07\x95W\xfe\xfa\xe8\x05\x04\x19\xec\x1d\x1ex\xe50\x01\xc5Qd1\xd8\x0f\xaeH:\x1f\xe9\\\xee\xa3IG\x19\xca\xe1\x83\xc3,<\x89\xe6\xf8H\x0b\x15j\xd6\x83\xcd\x8a\xd0\xe2\xa5\x9ar\xbc\xf50\xb5\xba\x00\xe9\x80\xd3Y\xdf\xd9\xa7\xda\xbe\x93,\x1em\x827\x03K\xe2x\xb0\xd3\xcb\x95@\xde\xd1\xcc\xb1j\xbed\xf2aXI\x89\xe5\xc3P[\x92\xcc\x07\"\xb3$\x9c'a\x1b\xd8\x92\xe5w\x06O\x13\xb4\xfe\xc3^S\xee\xcdg\xb1:T\xe2\xd56I\x03|\xee\xb2\xd5\x91\xaf\xb3\xf2\xf3\xcbC\xb1%\x8b[\x9f\x1c\x02x\x01\x1f\xde\xff\xf8\xa4\x10e~(V\x02\xb2d'\xa0\xbaN\xaaZ\x03\xde\xde\xb5:p]\xa0\xffno\\3#d\xa5(\xd2d\x9b\xfeM\x8c\xe4\x88\x9aS\x95\xaf\xf2-,\x0f\x9b\x8d(\x8c\xcfh\x01\x17\xd7iY\x8f\x1dv\x87\xb22VoH*\xd8\x8a\xa4\xac\xc6\xb8\xf2L\xc0\x83'\x0f$\xdf\xc9\xf3Z\x14\x0b%\x03\xb7IYA)\xae\xa4\xa43\xde\xa3\x0f\xef\x7f|X\xc2>\xa9\xae\x15\xf2\x11\xaaF\xa1\x1c\xf7\"\x9bo\x0e\xdb\xed\x1d\xfc|H\xb6\x92\x02kM\x9f\x1a\xb5\xa2\xc4\xa3\xa4\x844\x1b7\xfe(\xbb|r\x95\xe7W[\xb1Ps_\x1e6\x8b\xd7\x87B\xc9\xf5\x8f\x8f\xf5\x88\x15\xba\xf2:?l\xd7\xb0\x14 '=\xc2\xb4J\xb2\xdd\xca\x11U\xb9\x9a\xec2\xcd\x92\xe2N;\"\xee\xf6\xa2D\xa8\x95T\xf2\xcb\xbbqW\xe2\xf3^\xac*H+\xa9|\x1fJ5Ou\x0e\xe5Y%>\xab\xa5z\x91\xdd-\xe0\x87\xfcV\xdc\x88\xe2D\xdd\xb5>\xbc\xff\xb1\xd4\xc7\xd7\x08\x9fD!\xd9o\xcc\x7f\xabk\xb1\x13\xf0\xf1\xba\xaa\xf6\x1fO\xf4\xff\x97\x1fO / \xcb\xeb_O\x14\xf7\xac\x92\x0cr\xb5+\xd4\x8cKQ\xc1a?\xc2\x97\xa8\xb9\"\xfd\x88\xe2F\x14z\xca\xbbd_jVP#\xae\xf2&\xdf\x87:\xdfS})IJ\xd8\xe4\xdbm~[>G\xd6\xe2\x9f\xa5(mF(\x97o_\xe47\xe9Z\xac\x9bI\xa83\xbd,\x0f;\xb1^`\x08^d\xf0\xc3\xc5\xc5\x19|\xff\xe6\x02\xf2\xcc\xb0\xbe\xdePwJ)H\xe0/Cv\xbc\xb8\xdb\x8b\xbf\xfe\xe5\xaf#t`\xf2\xafdf\xdd\xf5\xc1\xa7(\xb9/\xf2\xf5a%\x943\xb8(\xf2b|\xfb\xfdgx\xb1\xdfo\xd3UR\xcf\xbd\x10\x92o\xf2\xdb\xba\x04n\xb2\x92{5\xcf?\x1d\xf6M\x92\x93eR\x8au=pd8\x1f\xde\xff\xa8\xfa\xbeNn\xd4\xd2\xef:<\xba\xd6L\x9a\x98\xa1\xca\xff\xbe\xc9S\xa97a\xd7e\xdd\xb1\xda~\x85\xd8\xe4\x8581\x0d%\xbe\xa4J\x97\xe9V\xde\x133!\xd6&q\x8c\x12\x11\xc5\x8d\xc0\xa27\xf3\xac>\xfe\xd4\xc7jo,\xe0\xd1\x87R\xc0\x8d(\xca4\xcf\xe4\xac%{\xa8,)\x8a?\x92,\xb9\xc2f\xb9,D\xf2I\xee\xe1\x1a\xe1\xe2\xf1x\xa5\xdf\xe6\x95x\x0e\x95\x94\x99\x9bC\xb6\xd2\x1c,\xc7[\xef\xf9\x95>m\xb7w\xdd\x8c<8Ys\x95\x86h\x9c\x88\xa7\x96\xd5\xcb\xc3\x06\n!%\xb08\xa9k6\x9bN\x94o_n\xd2\x96\xef\x97\xe2*\xcd2\xcc\xcc\"\xd5ZD\xb8\xde\xed\xc5B\xf3c\xb2O\xcb\xc5*\xdfaR\xea\\\xed\x88R'\xff\x91\x1b.\x1b\xeenx$\xc7qm\xb2'\xe9-\xf4\x18v#\xc7\xb0\x84%\xb2\x99\xd5d\x94\xee\xdd\xa8\xc9Z\xf7.\xf7b\x95n\xd2\x15\x94b\x97dU\xba*\xfb\xac\xae\xf6\x08\xe3(\xb6\\\xe4\x80pJ\xff$\xb7\xf1R\x98p\x94\xceA;:W\xeb\xc3)Y\xe67\xc8\x01\xad\xa7T\xb3d_y\xb7\x8f\xe0\xe3\x8b\xec\xeec\xc7\x19\x9dAR,\xd3\xaa\x90\x9b\xc61\x12#\x07\x93m>\xa0\x85\xbe\xe9\xf4\x97BJ+%P\xf5H\x96cu\xa3\xdb\x97\xd1\x1e\x06,sf\x18w\x9b.\xd5\xf0j9ZBy\xd8\xef\xf3B\x9d@\xfbd\xf5\xe9\xc9!\x93\xff'\xcf\x1d\xbd\x8e%\xb6K\xc6\x07n\xbe\x81C\xa5\x05\x84\xd9~\xa5\x14L\xc9z\x9d\xea\xbd\x08W\"\x13\x85\xca\xe2\xa4\xafT\xa5\x19\xfe\x8b\x81<\xd2K\xd0\xc7\xff\xe6s\"\x99\x10\x9e>\x8739>\xb9\xef\xea\xa1&\x0dA\xd3\x0c^\xfd\xf6\xb7\xc81\xf0]\x9e\xc3&\xcf\xe1[X,\x16\xe3\xa4Qr\xb2Iv7\xfe!\xc9\xee\x16\xb2\xbb\xef\x8a|\xf7h\x93\xe7\x8f\xc7\x9f,\x16c9\x9fn\xe0\x91l\xfaA\x0d\xf0\"\x7f\xf4O\xb2\xedc4\xb7\x15\xd6\xfe\xef\xf8\xdc\x9fy\xe6\xfeo\xc9M\x12y\xd8GW_\x9aL\xd7\xfa\x96$j\xbe{\xb0\xc9\xf3\xc52)\xd4\xa0??\xb9[\xfc\xed\x81\x9e\xb1\xd6\xfd\xc7\xd7\x18\xd5\xe5\x03\xf9\xdd\xf0\x08\xfa\xb7\xf3wo\x7f3\xa6\xb4\xfcs{[\xd6\x1aR.wU\xad\x1e\xe8\x1b\xc3\xa1\xac\xcf\xedB\\\x1d\xb6\xc9\xe0=\xd0\xb8\xb9\xfct-\xda\x83\xfd\xa4M\xd2X\xef\x9a\x93Z[\x18\xdc\xb1;\x07\xae\xb6y~\xfcW9\xc9\x8f\xb5\xc5\xb3QV\xba$[\x98m\xfa\x1cQy\x93\xd5'\xb9G\xdb+\xd2&\xdd\x8a\xb1\x144{\xf9L\x14e\x9e\xa1\xcc[\xdb26iQV*\x14\xdd\x96\xc2\xb1\xfeP.\xb7\xf9\xee\x99W\xeeJ\xc0z}\xa0\xe6\xff\xe09<\xc0\xf8\xb8?\xad\x85\x1e\xfd\x83\x13\x0c\x8f\x1a\xf7\xdbd'q\xfd/=\xc4\x7fA?\x94\xe3\x1e|\xe7\x1b\xfc\xe9\xa6V\xd5\xfbk\xacW(-\xe1Vl\xb7_}\xca\xf2[m\xf9\xbeNJHLrB\xcd\x97]l}v:\xd1\xea\xe3\x80\xc7\xda\xdc\xaau\x97\x92q\xb2+H4\xdb\xf4\x11~TLlx\xe8:\xdf\xae{\xe9\x11\xd5\x16H\xb3\x86\xf7\xa0\xb6\x8d\xd4\xac\xd7\xc7\xa5\xd07\x1c\x07\x8f\xe4n5\xd3\x1d]\xc4\x8d]\xe8\xaf\x7f\xf9\xebc\x849\xa7\xacw\xbf\x03|\xc9\xd5\xb4%\xaa\xa7\x8bgO\x9f\x95\x0f\x90e\xd4\xff\x1f\x93\xf7\xc6\xe4\xbd1y\xef\x17\x92\xbc\xf7\xac\xc8\xe5\x9e\x13k\x15\x1aq\xa1=d\x81i\xec\xa6U2w\x8fSE\xd4\\\xe4a\x89{\x07\xae\xda\xc1x\x1c\x1d\xe7\x958\xcd69\xb9#O\xbd~\xcb\xc6sgq\x84a\x0c\x15\xf2;\xfeX\xb8\xf7\xc9\xb4\x12\xdd\x83\xaaP\xb4\x96\x9b\xcf\x8b\xe4P]KR\xbe\xca\xb3\x1bQT/t\x10\x1e{\x01G\xc1{\xc8\x12\xe67\xaa#u\xca\x9eu\"h\x08\xe8\xd7b\x9f\x97iu\xa9\x8e7\xcf,1\xf9\xf8]^\xc0\x9b\xef\xbf\xd3\x81;\xa2\x12Ey\x02\xb7R\x8f\xa8}\x87rk\xe6\x1b\xd3\x8d\x14G\x8d\x1f\xbc\xcaAdU\xef\x9dW+{n\xf2*\xcd\xae.\xf7\xa2Hs\x1fg\xf5D\xa19\xa9\x8dv\xac\x11\x81Fd\x0e\x8d\x9f\x0fyq\xb0o\x0b\x04mO\xc2\xfe\x94f\xe9\xee\xb0\x1b\xccQ\x9f\x0ee\x95|\x12\xca\xfa\xad\xa7x\x93WB\x07\xbf\xd5BM\xcb\xe3\x0e\xb6U\x9e\x95\xe9ZH\x92(\xeb\xe4\xa2\xb7\xaau\xb6\xe3vi\xd9\x1c4!\xa6\xca\xc2\x1d\xe0:`m\xa7\xe8$N\x19\xe0R|38\xa9,\x1c\x03\xae\xb1\xf29\x07\x10\xee\xa1w1\"\xcaTN\x1a\xa0\x1b\xdb\xe71\xe6\xb2\x0d\xca\xcajF\x13lT\x06u\xdf\xd8\xd4\x8e\x03\xd5\xecI\xb7]\x8d\xef\xfd\xd9+3\x1c}\x97G8\xfb\xfc6\xadV\xd7\xbf\x00g\xa7\xa5\n\x00i\xfd`G\x88\xd72\x9d\xec\xca\xabK\xf9\xc9\xac]\xe0\xe2I\x11\xf5\xcd\xf7\xdf\xf1\x17\xb0i\xa4\xd6Mc\xc3\x96\xad\xbbb\xe4\x95r\x92\x1b\xa3\x83\xaf\xe0\x01\xb8\xc9\x1b\x82r\x95\x97\xbb\xbc4\xe7\xf6RT\xc9\xd3E}j\xbf\xbc\xabDy\x91\x9f\xabO\xd9lZ\x1f\xe1\x97\xba'\xc7\xa9\x83oK\xd7\x18\xec\x0b[\xb7\xd2\x9fC\xb1_\x0d\x96\xd4\xec\xcc\xf34[\x89\xe7\xf5\xe4\xbf*\xd7\x9f\xe0\xeb\xc5\xef\xfe\xe0&\x87Fz\x91\xab!\x05\x93C^K\xedz\x8d\x86\xd1\x15\xd6I\"t\\^\x12\xa9\xaf\xe7\xa2\xd0\xcb\xa4\x14/V\xab6\xda\x91N\x10')\xf6\x87e\xff\xe6\xcf\x90u\x15\x1a\xf6\x14xb\xcd\x18\xf0d\x0fw\x9a/\xd8i\xb6P'k\xa0\x13f\x95&\x869\xcd\x15\xe4\xe4\x0eq\n\np\x9a7\xbc\xc9\x1a\xdc4oh\x93%\xb0ibX\xd3\x88\xdc\x15\x12\xd44oH\xd3\xc4\x80\xa6\x99\xc3\x99&\x043\xcd\x1d\xca4[ \xd3\xbcaL\xb3\x051\xf9C\x98f\x0b`\xb2\x85/M ^B\x83\x95*J\xa8\xd2\xb4@%\xe4\xe2\x13\x18\x96\x84\x04%Y\x0fJ\x9a}}|\xe7\x0b\x0bFj\x83\x8f0\xfa\xfe\xc6\xdf\xf7\xccaH\xe3 \xa4\x19B\x90f\x0d@\x1a\x1e\x86\x13\x83\x8fjBw1N 7r\xc6\xdbXB\x8d\xbc\x81Fc\xbf?=\xc8h\xdc\xf6\xef\xd8\\\x83\xc2\x8b(\x93\xf5\x85\x16\xd9\xe7\xe6\x0d+b\x04\x15\x0d\x831l\x01E\xd3\xc3\x89\xc2\x83\x89\xd0u \x0c$r\x86\x11\xd9\x83\x88\\!D(\xb1\xa8\xe1C\xbe\xe0\xa1A\xe8\xd0\x84\xc0!B\xd8\x10=h\xc8\x1b2\x84D\xe4\x8c\xbaC\xbe\xf1\x85\nM\x0b\x14B\x07\xd5\xf9\xcb\xac!B3\x07\x08\xcd\x1a\x1e4gp\x90-4h\x14\x184OX\xd0lAA\xf3\x86\x04\xd1\x02\x82\xbc\xe1@\xc4` J(\xd0(\x10h\xdc\x1b5(\xc4\x1d\x04D\x0c\x01\"\x04\x00\xf5\x86\xb2\x1e\x97\xd4^7\xb3\x1d+\xa5s\x19\x1fy\xe3\xa4\x93\x8b\n\xbb|}\xd8\n\x1b\x83+?^\xbd\xbb\x1b\xdf\xc6\xe9k6\xaf\x1b\xb1\xe5\xf7K\xf4\xe6\xf1\x10\xe7\xcb\xc53\xfd\x16~\x18\x17\xe0\x19\xadu{\xd4\xcd\xc7-;[\x85@\xa0\xd3l\x93\xb3)\x936\x11Q\xa3\xd9\xcb\x9f\xcc\x98\x8dxS\x7f\xabSH\x94\xed\xf1\xaa\xd5\xe7\x8e(^\x0c(L\xf2\xeap\xd2\xbc\x8f\xbcG`\xeb\x0b\x1c\xcf\xe7m\x9e$p\x19\xc9\xc0k\x0f\x83y\xbdJ\xe0yH?\xa7w \xe6\xf40\x81\xfb9\xfd$O\x13\xcc\xe8m\x02\xaf\xc7 B\xbdN0\xc5\xf3\x84Q\xecn\xaf\xf8\xc5\xfa\xb4~\x82\x07\n\xc1\xa5\xb7\xba\xf5y\xfd4O\x14\x82\xee\xb0\xb7>\xb1\x9f\xdb#\x05\xd3\xbdR0\xbfg\n\xa6y\xa7`\x9a\x87\n\xdf\xa2\xe8 g\xf3[\xc1\xec\xbe+\x98\xd3\x7f\x05$\x1f\x16\xcc\xe9\xc7\x02\xe7S\xfci\xfe,l\x8f\xa3\xcf\xf1\x89^.\x98\xec\xe9B\x10b\x8f\xf2\x83\xfd_`{\x98\xef9\xe2\x1d\x8f\xf3)\xe7\x7f\xa0O\x0c\x13{\xd6'\xfa\xbeqL\xf3\x8f\x0d\x90)o\x19\xfaP\x7f\x16?\x19\xcc\xed+\x03\xc4_\x06\xd3}f\x03l\x15\xf2d\x7f\x9a\x17\x0d|\xce%p=\xdc'x\xd4\xc0\xf6\x9a\x96\xe1Y\xb3\xe3\x18\xd9$'y\xd9\x80A\x0c\x9f\xb7\x0d\xbc\xf3\xf6z\xdd\x80\xe7y\x03\xfc\x05\xb5\xe3I\xff\x1c^8\x98\xe4\x89\x03\xd7\x1a\x06z\xe4\xc0\xe7\x95\x03\xcf\xf3~\xdf\x03\x7f\xc7\xc2R\xbdt@\xf0\xd4\x01\xf6\xd0\x7f\x92\xc7\x0eh^;`y\xee\x80\xe2\xbd\x03+\xd1P\x96\xb5}\xeb\xf3\xe6\xc1d\x8f\x1e\xb8\x06:\xf8\xeb\xac\xde=\x98\xe8\xe1\x1b\xa0\xc2\x12\x02\xcc\xec\xf3\x83\x99\xfd~\xe0L\x0b\x80&\x06\x98\xcb\x07\x08s\xfa\x01av_ \x90\xfd\x81@\xf1 \x02\xdd/\x08D\xdf \xe0\x89\x02\xf0\xa7\xe3tO\x92/Y\x00\xd9W\x084\x7f!`\xd3\x98\xd3o\x08S}\x87\x03\\H\x12\x819\xbd\x890\xabG\x11&\xf3\x83\xd7\xb3\x08\x04\xef\"\x0c\x0e\x1d\x9b\x97\x11(\xb1\x8b\xe3<\xde#\x8f#\x17\x8f\xe3a\x12b{76s\xfd\x08\xa9\xf3A\xdf\xf2\xefv~\xfd\x91`\xf0g\x1b\xfb\x93\xee3\x0e\xb4\x0d\xde\x0e\xac\x86r+\x15\xe3\x93\x8b\xf8\xe4\"\xdc\xf0\xad\x0dv#\x1a\xc5'\x17\x1c\x03\xf7D\xe3\xf6\xcc\x86\xed F\xed \x06m\xd4\xba:\x9b\xe9z^\xb3\xf5l&k\xbf\xb9z6Su|r\x11\x9f\\0L\xca\xf1\xc9\x05b0\x9eb,\xa6\xbcB\x88O.:\x10\x9f\\\x18\x88O.\x1a\x98`\xc0%\x18o\xe9\x86[\xaf\xd16>\xb9\x98b\x90\x8dO.\xe2\x93\x8b\xf8\xe4b>\xd3\xe9$\xb3i|rAzr\xe1\xc8k5\xb0\x02R2\"\x99\x87\x12X>$\x9f\xb51 -N\xddpho$%1\x8a%\xb0X&\xca\x19\x8d\x94\xb1\x04\xd6L\x06\xcbX\x02+\xdcx9\xd9|9\xbb\x01s\x92 s~#\xe6\x8cf\xcc\xb9\x0d\x993\x9a2)\xc6\xcc\x19\xcd\x99\xb1\x04V\x0d\x81\x86\xcfX\x02+\xd4\x10\x1aK`i\xa8b ,t\xeeA\x06S\xea\xe4}F\xd3X\x02+\x96\xc0\xf2\x99Tc ,o$\xec43k,\x81\x15K`y\xa2\\\xe75\xbeR\xcd\xaf\x04\x03,\xd9\x04K3\xc2\xa2\x91\xadSJ\"\xf9\xa2Z\x89\xc6X\x929v4\xf89M\xb2\xb3\x1be\xe74\xcb\xcei\x98\x9d\xb6\xde^\xe3\xac\xdf<\xdb=\x18\xeaD\x10\xc6\xde\xa9.\xf7jI?\xa7*\x81K\xf3K\xdd\x02+\x9a\xd5\xbbk\xb4\x1f\x0c\x92h4\x7f\xae\x05\x9f1\xf6\xb6\x07\x03j=\x8d\xc5\xb7j\x88\xc5\xb7\x90\xe2[~\x1f\x03!\xf5\xfc\xc8\xc9\x80U]0\xe3DC\x9e\xbfq9!~Rybj\xd4/\xef\xa4\x88\x0d\xf5G\xc4\xf0g\xa6oa6\xcfB\x0c\x7f\x9e\xe0M\x88\xe1\xcf<\x0f\xc2D\xff\xc1\xcc\xde\x83 \xbe\x83\xb9=\x07\xb3\xf9\x0d\xe6\xf5\x1a\xcc\xe63\xf0{\x0cf\xf3\x17\xc4\xf0\xe7\x18\xfe<\xc5\xea\x1f\xc3\x9f\xa7Y\xf7)\x11\xc11\xfc\xb9\x031\xfc\xd9@\x0c\x7fn`\x82\x9d\x9e`\xa5\xa7\xdb\xe8\xbd\x16\xfa\x18\xfe<\xb3=~Vk\xfc\x9c\xb6\xf8\x18\xfe\x0cd\xfb\xbb\xd7\xfaN\xb4\xbdS,\xef1\xfc\xb9\xc55\xb3\xa5}>;\xfb|V\xf6\xf0\xd5\xf5Z\xd8}\xf6uo\xf8\xb3\xc3\"\xe8\xb4Rvq\xab\x1c\xc4g\xb1:4w/e\xb3\xd7\xe7S}8h)\xd7\x19\xb9\x9c\x89\xdb,\xfbblm%\xd8h\xd5$\xba5\x10\x91U\xd6\xdf\x08\xe77\xd1\xd6\x1bm\xbd\xd1\xd6\x1bm\xbd\xd1\xd6\x1bm\xbd\xd1\xd6\x1bm\xbd\xd1\xd6\x1bm\xbd\xd1\xd6\xab \xdaz\xa3\xad7\xdaz\xa3\xad7\xdaz\xa3\xad7\xdaz\xa3\xad\xb7\x07\xe1\xab\xfb\xa5\xd8z\x87v\xde\xb11\x12\xc4\xe7Jdk\xb9\xd0\xc6\xe4[]\xc32\xaf\xae\xf5\xbda\xbd.D)eG-\x15j{c\x8dOrIm\xa5l\xce\xd4Su\xcfS\x97\xa74S\xeap\x99\x96\x9a(\xea{\x95\xceY\xff\xdbf3U\xa1\xaf\xdf\xeb\x9e\xd4\xff\xf1\xc3\xb2\xd5\xa8\x8e\x9c`cd\x9f\xedbAn{#[\xad\xe7{\x8b\xdd\xb6\xdbj4Vp\x8c\x17\xac\x96\xdc\xf67\xcbkd\xf0\xdeI5\xcch\xdb\xd5\xe0J\x12\x02\xb3\xday5\xccf\xed\xd5\xe0H\x18\x02\xd3,\xbf\x1a\xe6\xb2\xffj\xf0%\x0f\x81P[\xb0\x86`\x8b0N\xbb\xbb\xbd\xe2!k\"\x11\x98b\x1dF\xb1\xe9\xc3\xc9\x9aP\x04&Z\x8aQ\x84\x87\xbd5\xb1\x08\x04Z\x8dQD\x8e\x84#0\xdd\x9el\x90\x10\xac\xcahK\xb2\xa5Y\xc3\x04{\xb3\x86 Vg\xdbF\xb7\x0cu6{\xb4\x86y\xad\xd2\x1af\xb3Mk\xf0[\xa85\xccf\xa7\xd6`O`\x02\x13m\xd6\xb8\xac@\x13\x99\x00\xd5\x9a\xad!\xd4\xa6\x8d\"\xb3\xd9\xb95\x04Z\xbb5\xa0\xc9M\xc0\xafR8\x92\x9c\x00Q\xe3\x08\xb4\x85\xe3\xc2\xd4\x9a\xf0\x04\x08\xa3\x99f\x1d\x1f\xa1S\xd6r4\xf9 \xccc)\xd70\xcd^>B\xa74\x1aTy\x98h;\x1f\xf7\x84$D\x81\x89\x16u\x0d\x9e\xdc \xe0J\x8e\x02\x14\x1b\xbb\x064k\x01\xcb\xde\xae\xc1\x86\x07y\n>\xc9\x02\xaf\x81N\x1c\x9f5^\x83\x8f\n^\xcb\xbc\x06\x86}^\x03\x92\x86\xc2\x99P\x05f\xb1\xd8k\x08\xb7\xdbkp\xacl\xa0\x0d_\x83'\xc9\nx\x12\xad\x807\xd9\n\xb8\x17\x9cj\xe1\xd7\xe0\xb3\xf3k\x18%_\x81i6\x7f\x0d\x04\xcb\xbf\x06\xba\xfd_\x83\xd7\x0b\xa0\xc1FD\x0b[\xdb\xbf\xf7y\x074L\xf3\x11hp\x0cy\xf4\xf7I^\x83\x11\xb6Q\xf2\x16\x98\xe8K\x18\xf7\x80$t\x81\xa9\x1e\x86\xf1\x90\x87I^`f\xbf\x83\x06{\xb2\x17\xc0\x13\xbe\xc0l\x9e\x08\x0d\xb3\xf9#4\xcc\xeb\x95\xd0@\xf3Mh\xf0z(4\x10\xfd\x14\xbd\x8f=\xc9`\x00\xdf]`I\x12\x02\x0c\x0b\xb7/1\x0c\xd0\xbd\x18\xf5\xc7~_\x86\x06dBs\xfa54L\xf2n\x8c\xb0!\xc9c`V\x9fG\xa7\x9bY<\x1f\x1a\xa6\xf2\x88\xd7\x0bR\xa3\xf3&\x94\x81\xd1\xc1\x86\xf9E48n\x9c\xf6xx[\xc1\xc6\xc9\xfe\x92\x1e\xb6\xda\xfe\x8fzM4\xf0|'\x1az\xd7R\xed\xf6P\x968\xd8\xa6\xa52p\xd6\x7f\xd3=\xae\x0d\x17\xd5\x831grHY\xd2$\xeb\xfe\xd5\xe4-\x89eIcY\xd2c\x96%E\xfd\x82\xf4\xdcQ\xbd\xe6\x94\xbc:\x9dN\x8b\xe8\x8c\x8c\xce\xc8\xe8\x8c\x8c\xce\xc8\x11T\xd1\x19\x19\x9d\x91\xe8\xc7\xd1\x19\x19\x9d\x91c\x88\xce\xc8\xe8\x8c\x84\xe8\x8c\x1c\"\x8a\xce\xc8\x11\xd0\xfdm\xd1\x19\x89}\x12\x9d\x91\xd1\x19\x19\x9d\x91\x1a\xa23\xd2@tFFgdtFFg\xa4\xed\xe3\xe8\x8c\x8c\xce\xc8\xe8\x8c<\xbe3r\xa9=h\xcd\x004\x96\xe8\x8c\x8c\xce\xc8_\x933\xb2\x98\xe6\x8c,B\x9c\x91_\xa6\x172z \xa3\x970z \xa3\x970z \xa3\x970z \xa3\x970z \x11\x88^\xc2\xe8%\xecA\xf4\x12\xd6\x10\xbd\x84\xd1K\x18\xbd\x84\xd1K\x08\xd1K\x18\xbd\x84\xd1K\x18\xbd\x84]\x98\xea\x01\x8a^\xc2\xe8%\xf4\xf1\xc8\xaf\xc9K\x08\x0e\x1f\xca\xb4r>cd=)\xaat%\x15DX\xcb\x81\xd5\xdb\xce0\xc92\xd9\xca+\xf2\xb0g\xd2\xa6S\xf8H\xcc\x95\xec\xe4\x02\x13>\xb5\xef\xbfWy\xda\x91 P\xe5\x9fDV\xeb\xaa\xbd\x89\xa93$\xc9\xea.{w\xd6\xb7\xef.\xdeW\xb4W\x86!NC\xd6\xf3T2O\xbd\x0d\xbe*\xd7\x9f\xe0\xeb\xc5\xef\xfe\xe0\xda\x18\x1f\xb2\xb4\"\xef\x8b\x01\x87\xf9YF5h)\xa8\xe7[+\xf9]\x87\xb0\xa7e\xa5\x0f\xede\xb2\xfat\x9b\x14\xebr\x10C\xd9\xd3\xd1\xeay\xc1&\xdd\x8a\xe6\x9c\xaa=\xd2\x97.&\xef\xf2Ro\xd1\xf4F\xea\x9dFjaD%\x8aVY\x92{\x0fv\xf9\xfa\xb0\x15\xb6\x1d\xa9\xac\x82/\xb6\xdb\x97\xda:\xc2\x7f\xecP\x9bU\xbe\xa8+\x13f\x9a\xb3~\xee\xd2\x1dg0\xd0\xcdm\xa2\xa3\x1a\xe9FS3\x0be\xb4\x88\xe6\xdf\xf2h\xda\xea\x1b\x90\x14>\xe5\x147\x88f\xc4\xe6\xcf\xf5\xbe\x8en\x90\xe8\x069\xa6\x1b\x04\x91_$_H\xdb\xac\xc6\xf6\xfe\xec\x95\x19\xa4\xdb\x1f\xa2\x10\xd4\x8dCE\xe6Pb\x92v\x03\"\x08-\xab\x1e\xfd\x13\x08\xa7\x0c\x96\x8c\xc2%u\x13\xb2\xabL\xb5R\xb7i\xa3D\xbf\xbcS\x7f;Wdgs\xcb\xaeg\xefD\x1b\xe1\x0d\x87\xa4\xf0s\x82\xc5\x06\n\x96C\x1dlF\x1f\xcb\xe1\x0e\x9e\xf7\x87\xe8!\x0f.\xb9f\xda\xb9\xad\x89\x00\xe16R\x14\x19\xe2Xi\xc1f+\x85f\"\xb8\xbd\x14<6S \xcet.\xdb)\x84\xd9OQ\xd59\xd8\xe35\xc24\xc5\xf15BV;\xc2F\x7f\xa7\xf9\xc34\xb8\xa6>\xf9\xedN\x0f\x9by\xc7\xd3\xfb\xe3\xe4\xe7<\xfd\xcdP?\xed\xc1\xb8\x12\x1c/|z\xdf;\xe5a\x8c~\x88\xd1\x0f\xbf\x8e\xe8\x07\xe4\xf8\xeaq\xe4\xfb\xb3W\xed\x01\xaa\xb4\x91N\x8b\x8e[[\xa7\x99n\xf6\x08\xeb\x19\\;\x90r\xb2\x89\xeb\xc8\xe7\xa8\xd5\x18\xe6T\xfd,\x061\xd7m\xdd\xf9\x1e\x02=$\xdd\xc7\xa4\xe3\xa0\xf4\xde\xfd\xfd'\x9f\xf9jF\x03\x99\xc7D\xe66\x92\xf9\xcdd~C\x19u\xd6s\x1a\xcb\xe63\x97\x91\x0df\xa1&\xb3\x10\xa3\x99o\xa4$\xb3\xd9\x14\xc3\x99\xd3t\xe63\x9e9\xcdg\x84M4\xab \xcdw(\xc3\\f\xb4\x10C\xda\x11Li\x981m\x92\xb2>\xa3I\xcdaT\xb3\x98\xd5\xe8#G\x16v\x06\xe3\x9a\xdf\xbc\x86\x19\xd8\xe8\xa3&\x19\xd9\xe63\xb3\xe1\x866\xfap\x11\xf6\x087\xb7\x8dPu\x1eQa\x067\x9e\xc9\x8d`tC\xccn\x93H1\xa3\xf1\x8dl~\xf3\xda\x9b\xc0j\x82\x9b:\xd79\x0dq>S\\\xa81\x8e@\x1e\x97\x14 3\xc9\xa1F\xb9QW=\xa2\x1a\xad\x1c\x9a\xdc\xbf\xcaN\xa1\xc4M\xef\x85\x8d\x92\xfc\xf5;\x82B\\\xa5e%\x8a\x1e5U\x97\xf1uA\xbc_\xff\x1a\xef\xd7\xa3k-\xd34]\x06\xda\xa6\xf5C/\xf6]z\xdfyh9\x9a^\xfd\x84\xaf\xb7\xa1;\xaf\xc7\x1a\xd5\xb0\xf7xL\x03cg\xe1\xef\xda\xc0\xa1\xa3\xff\xf2Q$\x96\x87\x9dm\xbb\xf1\xe3N \x1cIs>\xf2\x84\xe6\x96>|\xe8 \xf8cO\xf0\x0ep\x86G\x9f0\xf7\xc3O\xc0\x1f\x7f\xc2\xf4\x07\xa0C\xfeR\xe2x\xfc\x08\x14B\x1f\x82\x0ep\x0c\x9f\x85\xe2\x8fAA-\x92\xebA(\xa0<\xe8\x10[}\xc9\xd1;C\xc72K\x9d-\xf2\xfa\xfa\xf9\x89\xdc\xf7])\xa2\x84\x82SFu\x98\x85-\xa8\xe2\x13o\xd6\xee\xc7w\xfeh\xd7{\x95\xab\x9e\x86\xc2\xd7\xb4\xf4M\xa8\xf1h\xc9\xbd\xd0\xc5\x97\xab\x9d(EG\xc7\x13S\xf6\xb7|\x1d2)\x9b+=%\xe8\x8c\x89\xda[\xd4\xde\xc0\xba~6\xe1\xe4\xf1\x8e\xb4-\x1a\x97\x88\xc6\x87^\xd8\xfe\xe8\x94\x8c\xfbzg\xd6\x8f\x08_je\x92-%\xe3\x8bQ\x9a\xe3\xfc\x08/F=K\xd8\xe3\xa5\xab\x1e35\x1e\xf4\x1a\xdd&o\xf2\xd97\xc7m\xebN\x7fXBi\xbaj<\xd9\xda\x9a\xdaTYR\x14\xf4x\xe8X\xfc\xc8\xbfX\xc4t\x0f\xbf\xd2t\x0f#\xe6\x8a\x89\x1f\x14\xc4\xc3}8\x86/\xfapw\x0bg\xfc\xbac\x11\xcbJ kdF\x1e\x9b\x81\xba\xc5r9%H\xe2\xfc\xb0\xdfo\xef\xdem\xd8\x92w(\xe5\x18;)\xaa\x00~\x01\xea\xe2\xb2\xc1\x929M\x7f\xb5\xd1\xcf\xb4\xe1\xa5\x8d\xb8\x90\xbbE7e\xf3G\xa9\x9a\xc5s\xf9\xcb;\x97kI\xab\x17\xa89\x8f\xf5\xbfjc\xab:\x7f\xeb\x06\xde\xe3w\xe2\xe5\xbdK\x16\x8f'\x92!c\xe2i\x1dOk@\x06j\x93k\x14!\xdaiVc\x1b9O,\xd2\xb4s\xeb'\x0b\xd0\x81pCV\x89\x9b\xa5\xafa\xdf\x89&\xc0\xd6\xec\xa7\xd1\xf5\xec}\xcd\xf4K\xb1\xa8D\xb6\x16\xc5.\xcd\xaa\x86\x12/^\xbe:U\xd4d\x1f(\xab|=\xb28P\xea\x04l\xf3+'\x15\xd3l\x93{>X\x8b\xcf\xce/\xf0\x8e{\xd2\xc7\xd9\xaa#u\x06\xe5\x89\xa9\xcd\xf6E\x9eo.\xf3\xfd\xe8\"L\x12\x96\xbdv`9\xacaf\x97\x98j6\xfa\xabC\x1c\xc1\x90\xa6\xc46\x9e\xda\xcd\xfdg\xec-\x84\xe3\xf4\xf9\xdf\xce\xe4b\xbd\xdbw\x8b5I2\xd5\xe1p\xa6z\xf7*\xd9\xae\x94\x07)\xbb\x82\x9fD\xf1i+\xa0\xc8\xf3j\x1c\x82(u\x08\xe5\xca]\xe5\x07\xacv\xdbRt\xaa;\xeba\x9f\xd4\xdeV\x15G+V\xa2,\xe5o\nI\xa7&\xe3\x08S&\xd2\xab\xebe~(T\xbb|\x8dTd\xbcN\xcak\xf4\xfd\x89\xaa\x90\xae\xec\xf4U]\xea.\x81\xf5A\x17\xaeo\"\xb3\x0ce\x94\xc6\xa2?\xac\xc5\xfa\x08a\x9a\xc1E+^\x9a\x9f\xed\xb4\xafq+\x0bDMO\xb5kL\x0fR[\xaa:a\x84\xe6\xfb\xfelX\xf3(\x91\x89\xf4]~\xe3)\\K\x1a\x8f\xeeU\x04q#\xe5c\xb9O\xc6f\xd9N[\x9c:#\x99\x8c{\xe7z7U\xf5S\xd3P\xddikl\x83\xb8}\x1a\xc1L\xcf\x1a\x1bN\xb5\x1aa\x9fd\x9e\xe3\xe6\xe56_}\"\x1f1\xd7\"Y\x9b\x92Rh\x13\xbc\x19\xe8\xdc\xd8e:\xcag\xa1\x95\x0f\x1d\xe2\xb4\x94CQ\xa7M\xff\x1b\x9b\xf4\xb4\xcb\xcee;\xa9.8\x05\x96C\x97\x03H\xf6\xfb\xf9\xd0\xb9\xa5\xdf+\xb9\xcaYy(a\x95\xec\xf5uE_8\xcc\x9f\x8b\xc3\xb6\x0eW\xde\x17\xb9\x94L\xca.\xddPo\x80N\xb6U?\xa9\xa8\xc1\x93\xa1\xdcI\xb3\xd5\xf6\xa0+]J\xd5\xb9\xf9P\x8b\xba\x86\xa1KS-\xb7\xee]3\xe5\x98H\x8ag\xd3<{8\nu\x90:\x92\x80\xaaH\xb2R\x17\xc0\xdc%\xab\xeb4\xeb\x15\xe6W=_\xa6\xa8\x13}D\xe6\xa1\x18p|j\x7fxP\xa5\xe4\x17\xed\x06\x05VpR\x95nU\xc4\xb3\x8c\x9e\xc5\xbdX|%\x91\xdb\x90\xb3v\x9f\x14\xd5e)\xaa\xcb\xe1\xde5\xe0\xd0N|\xef[\x90\xbbR\xf3\x13\xaa~v\xc1\xf7\x18\x04'\x03\xf8H\x01>u\xa6\x969gIQ\x95\xa2\xfaAQ\xe57\xc8\x07J2\x9e\xbe\x1e.\xf3*\xdf\xed\xd2\x8a\xf3\x0e\xdd:\x9a\xba#\x89J\xef)\xbd\x87\xe5\xd6\xeb|'\xff9CwuQ\xd0\xbc(g@6\x1c\xfb\xa6P\xe1\xefB\xca\x00\xc8\x0f\xd5\xfeP\xb5\x7f\xdb\x17\xe2FO\xad\x83A\x19\x06f\x1dS#!g\xc0\x95\xec\xf73`Q\xfcR\xdf\xebg@'n\xd2\xb5\xc8Vb\x06T\xcd\xfa\xb5\xc7\xca\xe0\xdc\x95\x1b?/Eq\x89>c\xb7\xf6\xe7>\xdb\x86H\x8dM!/\xd2\xab4K\xea\x03\xa8\xf9\xcc\xbc&>\xa9\xa7Q\x8d\xb4\\U\xfc\xf9\xa5X]\x7f\xf3\xac\x1e\xcd(\xfa\xec\xb4\xab\x06\xd7\xb1`F\xcf\xfa(\xc9R~\xfc\x87E\xf3\xd6r\xa7\xa7G\xb6\xea\xa3\nkhG]\x93E\x0bp\x83/8\xb9X\xf5y\xfa]\x16\x95\xbd4\x13\xe1\x88).>\x97:\x00\xdeX\xef\x94\x1e\xa1\xaf\x1bZk\xf8WM\x80\xc5\x0f\xea\xc8\xff\xed\xd3\xd1\x1akSq\x96W\xda?\xfa\xb9\x84\xc6\xd2\xa7D\xcc\x02\xe0\xdf\xc5\xc3B\xc0\x7f\x1e\xca\n\x92\xabB\x08\xa9\xf2\xe4\xc3\xe2\x12\x12\xf4\x93?U\xed|\xd4\x8fR\xd2w\"\xc9\xea\x11\xeba\xbd\xd8\xef\xd5\x03\x86u.J5\x08\xadT\xa9x\xcaR\xc8\xe1\x8cL\xcb\xaf\xf5m\xb4\xf3\x80\xbe\x14\xfa\x8d\x97T\x90\x92U\xa5+\"k\xa4Y\xe7\x8ag\x1e\xbb9[$e\x99\xafR\xf5\x1a@\xab\xb7\xd6\xaf\xc5\xe7Jdc\x9bn\x1f~aZ6c\xac\xfd9\xad\x17\xa3c\xad\\\xc0\xbb\xfe\x83\x881\xa8%\xa8\x8d\xaeB\x9b\x80\xdcd\xac\xd5\x89\x92@\xbe\xcb_\x03S\xb6\x84\xf4\xb3\xa7\x13[\x97u;N\x0b\x1cF\xbc\x8b\xb0\xa7\x13\x81\\Xl\xf1\xbc\xebC%\x90\"N\xefM\xf7\xbe\x10\xf2\xee\x01\xbd\xee\xd4_6\x05\x92S\xc4@k\x0b\x83N\xe0\xf9\x18:\xca'\xf6\xb3\xba\xf6,\xe3\xb5'^{ ^{P 2'M/\x8d\xd7\x1e\xa0\x93\x14\xe8\xe7S\xbc\xf6\xf4\x80\xb2\x08\xc0[\x08\xe0,F\xbc\xf6P{\x8f\xd7\x9e\x1a8\xc7T\xbc\xf6\xccL\xcbx\xed\xc1a\x02!\xfd\xec\xe9\xc4\x16\xaf=8\xcct\xedQ\xe7\xf4\xe5M^\xa5\xd9\xd5\xa5J\x05\xea\xbe\x029\x19\xca\x7f6\xb7\x82\xfc\xf8}y\xcfHF/\xae\xb3\x91\xb2\xf4\xaf\x8d\xfbN\xae\xff\x9b\xday\xd7:2\x8d;O;\xb0\x1b\"\xa1\xa8\xea\xfbGu\x9b\xcb\xf6\x9bm\xbaR\x81\xbc\x92c\x905\xdeJ\xad\xfeRg1\xbbL\xaa*Y}:\xa6\xf3\xb03\xa2KK0\xa1\x06\x82\xda\xe9\xeb\x0b\x1ab\x10T]B\x7f@\xec\x13\x90xN\x1c\x88\x9d\x02\xa3c\xb0E\x84\xe2@\x89\x13\xb5\xb4\xa4\x8f\x1d\x98\xe3\x07{\xa4)\x0e\x84\x8d:\x04\xb3q\xd1\xa8T\x1c\xd0XU\x1c\xeec@\x14\xb12\x04z\x0c, \x1d\x1a'\xeb\x8b\x8c\xc5\x81\x13/KB8\x8c\xa9uG\xd1\xe2@\x89\xad\xc5\x01\x8f\xb8\xc5\x81\xc5,~3\x8c\x01\x16Z\xcay\xd9\x85q|\xaf\xe5\xbb\xb0A\xf8\xaf\x9a\x06\x1c\x11\xc28\x1cYnQ\x0d\n\xc0'\x0e\xd0\xd5\xf1\x16\x98\xd6\x1e\x03L*A\x00\xa5\x00\x18V \x03\xd4\xdb\xfb\x10x\xdcm\x80\xb3\x98\x10\xb6\xa0\x10\xb2\xa8l\xab\xd1\xa0\x99\xcfzd\xc0\x1d\x97\x8d\x03\x93\x06\xcc\xb9\xd3\"\xbbq\xb0\xc4{\xe3p\xcci8\xa3\xb3q8\xe6p\xeco\xaaq\xa0\x86\xa6\x93\x90\x0d\xc3\xd7q\xf0\x07\xb5\xe3pL\xb2\xb9\xc2\xe2q8\xe6h\xf0\xc0z\x1c\x8e9\x0eOh>\x0e\xc7\x1c\x90#\xb8\x1f\x87c\x0e\xc6\xff<\x00\x07\xf7\xa3\x01\x1c\x8e7\x0ff\xbc=\x16d\x8f\x83>j|\x93c\xe8&\x1c\x9d\xe4\x0b\xd1\xac\xbd\x8eO\x03\\U\x88\xe6\xd00\x10Uj+D\x95Z\x01\x8f\xad\x0dp\x16\x13\xc2\x16\x14B\x16\xf5\xbeT\xea6Y\x12\x85\nz\xf6\xf6\"N}p\x96t\xea\x03\x9b\x19\xf9\xach$\xc8\xe5f\x9b \x95dl\x10\xb4\xe0\xfe\x80\xa7>|\x05/\x7f|\xf7\xeaO\x97\xa7\xaf/\xbf\xfb\xf1\xc5\xf7\x84\xe0\xa0!\x0c1\xbcxy\xfe\xe6\xad;\x9e\xa9\x0fC\x04\x84\x80\xa8>\x0c\x11\xbc=u\xc5E\xf5\xa1\x89\x92\x9aF\x06\xde\xbdA\x83\xde(\xeb\xef\xb6\xc9U\xa7\xea\x93N9Vo\"o\xc0T\x1fZ\x07bJ7]2\x83\x15\xfa\x10\xc4\xa3A\"\x89\x10\xc5\xd1\x87IC\xa3\x9b\xdd4\x90\x1c\xcd}\x984>2\xe9Bl\xe3\x00\xaf\x94\xfay\x9e^\xe9\x80>y\xce\x1b\xe3\xb1r\xcb\x9ag\x83Dti\x06I\x8d\xd3g0\xe6\x8eWc\xed?tl|\x84\xea\x05\xa5Q\xbbo\x13OT`\xa3v\xd75\xa0\x12\xf3b\xb2\xbdn\xdbG\xdf\xee\xa1R\x10b\x03\xbd\xe7\x0d\xf5\x94i\xc7\xe6\xe3<\xfa J<=\x893\xd1@\x9d\x8f\x06\x96\x1cbo$\xe6&\xda\x1f\x96\xe3,\x866`\x11\x05\xd8\x84\x91 \xd6\xcf~\xff\xfb\xa7\xff\x93\xfay\x00\x81\x80O$P9\xe8V\xfbg\xbf\xff\xc3\xa7\xa7_\xda\xd0\xb8\xa7\xf3\xd9a\xb9MW\x7f\x12w\xbd\xcb\xfc'q\xd7\xcd\x9dH?_\x0f\xa5\xd0\xa9I\xff\xdclVBKJ\xa4I\x1f\xd8\xc4\xe4^\\\x1a\xe3\xcb\xbeH\xf3\"\xadX{\xe2(\xe32#\xf2\x0d\x84\xb1-9\x1b\x92!\xa7\x98D`\xf18CB1\x08\x01Lb\x00_61\x89\x02\\\xc2@\x88T:\xfe\xa0x\xf2\x88*\x8d\xa4\x9c!!\xe4\xca\"\xae$b\x12\x90\xbe\xdb!T\x06\x1dmD\xf4\xa0\xc0\xa6\x05}(\xfeaH}5\xcf.\xdd\x06[B\x8f\xfe\x9e\x96w\x7fK\xb2*\xcd\xc4\xa5_\xe3\xf4k\x9a\x1e\x0d\x93$\xa4h\xa2\x89$\xa1 \x14\xd2@\xdc\xe7$yL\x9a$\x90'\n\x1c\xe9K\x9e0\xd0'\x0d\x9a8'\xec\xe4L\xab\xce#(\xe0\x80\xb4\x1c;\xee#\xc7u\xdc\xccy\xe2:\x8f\x17\xf4h\x19\xbc\x9f\xa9\xbfy\xd8\xadp\xbe\xdf\x8a\xa4\x14J\xd7\xffX\xae?\xe9(\xfa\x8f\x90fe%\x92\xf5\xc3\xa0e\x9dg-\xac\x0f\x98\xa8\xcf\x95&\xa8\x1f\x8e\x87Gd\x15\xc1\xfa\x86\xc7\xfa\x84h*j\xbfbN\x7f\xfa\x83<\xebA\xf0\xd1\x1e\xfap\x9e\xf5\x8c\x9e\xec\xe0\x04t?\xe2\xa1>\xd9\xb1?\xd0q,\x85\xcd\xe2D\xda\xd4\xd8\xc2\xe1\xcfhH\xe8lg\xb2\xe7A\xcc\x84\x9dq,\xdd\x99p\x9d\x00\xdf\xc8\xc1;z\xb0\xcb\xf8\xe6g\xef\xf5\x02\x08W\x0c\xf0F\xb9y\xc9\x05~\x92\x11\xae\x1c`;\x1b\x0c\xf8\x9fw\x908\xd1u!\"<\xd4p<\xcb\x08\xed\xde\xfbR \x14\xf1p^\xde7\x10\xa8\xf8\xa4\xbdf\x08\x1d\xa3\xef]B(^\xfb\x0b\x83P\x8c\x84\xb7\x02\xa1\xa8=Q\xff\xa1hi\xf1\xfb\xfeh\xfd\xb0\xfeg\x8a\xbb\x1f\x97\x1d\x0bP\xd1F\xc9\xee\xa1\xc1\x83\xbb@\xac\xce\x8f\xf0[\"E\xed\x99! >\xcc\x9c\x08\x1f<\xc9\xf0a\x96\x84\xf8\xd02\xeb\xf4\xa4\xf8\xe0\xc9m\xcfb\x1d{z\x89 \xfc\x13\x9c\x91\x82\x918\x1f\xfc\xbd\x01\xa1G\xf0&\xd1\x07ZG@\xec\x0c\x0c:\xe7\x17\xde\x9d\xd8\x05Z\xc0uX\x96I\xbc%%\xd3\xa4\xb5%1\xb8:(\xe3$L\xcb: $1\xd6\x87Y\xb3O\x02'\x03%L\xceBi\xc3@\xcfD \xe4\xc7Z\x0c\x86\xa6h\xf5\x1aH\x0f\xb4hW \x0d6\xdf\xcf\x18\xa8\x8f\xb2\x88\xb2\x03\x18\xf2\x03\xbc\xb7\x9a\x16\x18d\x07\xdf ?\x04\xd2U\xb1\x0f\x0cj\x00\x93\"\x12X\x0f\xae8|a\x80\xce\x9a\x06\xa8\x0b\x05\xfc\xc5\x02\xee\x82\x11/\xaah\x13\xca\xa3*\xaf\xeb\xbb\xf9\x90>Q\x9f\x8d\xa5\x0f$\x17N\x17\x02F\xe2%5#\x03&0\xf9\x90.\x9f\xc8\xefA\x8eA\x01\xfe1J\xcc\x8e\xe9\xc53HA\xc8\xcd\x90 \xac,\x99@\xcd\x94 _\x16\x9d\xe7\xca\x9c !\xd93\x81\x94A\x13\xf8Y4\xe1K%\xb2\x93\xad\xbd\xc8FIa\xbd\x995a\x8e\xec\x9a0%\xc3&0\x896[\xa6M`d\xdb\x04\x7f\xc6M\xf0\x16\x1b\x00\xbaRCUf\xe2\xf50^\x0f\xed\x10\xaf\x87t\x1d<^\x0f}\xc0 ;\xf0\xce\xccx=$\xb5\xa1.\x14\xf0\x17\x0b\xb8\x0b\x16\xaf\x87#\x08\x18\x89\x97\xd4\xf1z\xc8?F\xe3\xf5\xb0\x03\xc7\xa6s\xbc\x1e\xde+\x91\xe3\xf5\xd0G\xb4/\xf9zH\x7f]\x04t\x06\xa4\xe9\x11\xc4\x02\x0d0w\xbf\xa4s\x9c\xd9\xa3\xef\xfc\xa6\xb2\xcb\x8c\xc5\x1b\x80]\xc0\x01\x02\x8a8\x00M\xed\xa5\xa8\xba\xe4\x82\x0e@\xeb\x13\x88\xfd\x02\xa7\xb8\x03\xd0\xfb\x06F\xff@.\xf4\x00\xbc\x01\x00s\x10\xc0+\xfa\x00@\x8f\xa4\xc6\x819\x17\x08\x98\x0fp\x8b@\x00]\x00\x0c\xc1\x08\x04r\xed\x05\x0d\x8c\x82\x10p\xcf\x83\xa3\x8a\xae!\xd0\xa2\xc4\xc9\xe8\xf0hr\xaa\xd9\xc9\x80'\xc6\x1c\x07j\xe49\x19!\x16\xa1\xee\x8fG\xc7\x81\x1a\xa5\x8e\x03\xa7\xb8\x04\x840\x1e\xcd|f\x80\x8d\x9ez\xe6w\x81Zp\x02\xa6\x0d\xc8\xa7\x12\xf4\x81]|\x02\xeeOvr\x8c<\x10F4\xe0]YZ\x08\xb0\xd2\x19\x08\xa0\x1e\x04R\x10\x80i\xbd3\xc0\xb1\x9e\x0c\x81\xbf3\x0cp\x17\x1c\xc2\x17\x1dB\x17>\xc8\xdag\x80a\xf53\xe0\x7f\xe1\x80C\x00]\x02\xe8A\x7f#\x81\x03\xab\xa0\x05\xdc\xd3\xb4\xbc\xef\x1ap\xb8\x8f\xa1\xd1\x13\xa5\xb4@}\xe8AFh{O7\x06\xda3\x11\x1c\xee\x83\x9c\xbe\x87&8\xdc\xc7\xc88\xc50\xe0\x9e\xc6Dx\xec\x82\xc3}\x0c\x8e]$\x03\xeei`\xb4\x0778\xf8\x9f\xe1\xe0p\xfcy\x85\xdc\xce\x88\xef}H\xb8(\xb58\x80\\\x8f\x03\xf8j\x19W\x1d\xfb\x02/$$?\xbf\x81\x10\x8d\x90\xeeW3\x10o\"\x8c=\xa8!\xdeD\xac\xc0\xdf\x12\x06\xb8\x0b\x0e\xe1\x8b\x0e\xa1\x0b\x7f\xdf7\x11^\xdd\x0fh(B\xc9\\n\x80\x98\xc1\xdc@\x10\x03\x87\xb1\xaf\x91L\xccZ 0\x851h1\x88}\xe0\xa4\xad\xb2\x03#\xa1\x95\x1d\x18\xa9\xae\xec@K\x82e\x07vz,;\xf0\xaf^\x1a\x88\x99\xb6\x98X\xbdy\xb9\xec\xc0\x8e\xe7\xe9C0?\x07\x8b9\x82\xe3t\x0c\x93\x87\xc9\xb3\xa4j \xc7T\xf4a\xf2XY$\x0dQ\xde5P\x13\x991P2j\x8c@\xe0\xd8\xc9i\xd2H\xd8\xac\xa9\xd4H\xf5F\x80Ss\x04xg\x1c\xe7d\xf3g\x83\xee\x02\xef$g\x9c\xe2\x8c\xd9i\xe0\xccQ\x03[\xc6\x05m\xc6\x80\x8dH\xca6\xdd\x056\xb1 \x88`\xc0\xc9H\xdd\x85 \xc2A\x18\xf1\x80\x97\xb5\xba\x0b\xf7;\xcc\x10\xad\x81\x9a\xe5\x9a\x812\xac\x96 \xb0\xb2_w!\x88\xc8!\x17\xb6=/Cv\x17\xeea\x8c{b\x9d\x13\xe0oo\xee\xc6f\xca\xc1\x00\xe2\xb0\xf7\x07S\x022 \x04\x01D\x820\xd9\x17@,\x08!\x18\x84J\xbd\xfb\x1b _\xde\xcd.\xedBe]\x88\xa4\x0b ,O\x82\xc0\x14\x19w\xf4\xd1\xf1\xe2x\x9bV\xbca\xd1\x86D\xaa\xa9\x02\xf4\xdei\xbdr\xea\xab\x00Y\x93&h\xd0daH\x17\x81\xe4\x13\x82HA\x0d\x0c\x19B>\x0f\xc8\x93\x07\x16\x01\x80+\xfdY\x84\x00\x1e1\x80/\xeb\x8f;\x1c\x8ed\xa7\xcatb\xed+\x9e4\xe7\x89#\x16\xd1hBAC\x80\xd4>\xc2Xx\x12\x9a8\x00b\xd7\x14\xc3\x1d\xb3G\x9fQ\x8ej\x1f\x9a\xb3\xc6\x0b\x84\xd7y\x01[\xad\x17pI9\xbbD\x9b=\xbf\xb3\xc5I\xac\xf1\x11\x92\xca\x8f\x1c\xbf1\xb13\n1\xb1s\x0f\\\xceF\x97\nu\xac\x1c\x9b$\xf7\x1f\x81xn\x97\x1e\xd7y\xc7t\xd31\x1drt\xd7[\x90\x93m\xee:4\xc0\xf1l\x11\x96\x8a\xc0\xe5\xf7S\xb2\x8c\xe0Ub\xf4d\x99\xce\x8c\xf5jF\xe8F\xc70\xd9!cq\xb6\x0c\xd0\xa1\xae\x97\xa6\x1eHK3SB\xe4<\xcdV* \xaf\xdc\xe5\xe5W\xe5\xfa\x13|\xbd\xf8\xdd\x1fc\xb9\x90\x11x\xd9\xca0U,\x17\xd2~E{\xb4\x15\xcb\x85t\xffJA\x17\xcb\x85\x0c\xc1\xa7\xb4D\xad\x12c\x95X.d\xf8#c^\xdeW$\xb1\\\x88\x03#\xe1\x05E(\xea_s\xb9\x10\xffY>\xec@\xd5\x1f\xbc\x16\x90\x17\xe9U\x9a%\xf5A\xdb|f,\xd9'\x08*=Y\xa9M&R\xb7}\xd9/:\x8848\xcd\xe0B\x98\xe2\x83'P]\xcb\xbe\xeb\xb4\x84\x1f%\xc9\xca\x8f'\xb00\xa8\x01L\x8aH`\xbdv\xe3\xf0\x85\x01:k\x1a\xa0.\x14\xf0\x17\x0b\xb8\x0bF\xbc\xce\xa3M(\xaf\xd6\xbc\xc6\xf9\xe6C\xfaD}\x96\xa8>\x90}\x11\x06\x02F\xe2%u\xcc\x9a\xcb?Fc\xd6\xdc\x0e\x1c\x9b\xce1k\xee\xbd\x129f\xcd\xf5\x11\xedK\xce\x9a\x1b\x8b\xaap[\xc6\xeba\x0b\xf1z\x18\xaf\x87. \xca\x0e`\xc8\x0f`\xdc:\x18d\x07\xde\x99\x19\xaf\x87\xa46\xd4\x85\x02\xfeb\x01w\xc1\xe2\xf5p\x04\x01#\xf1\x92:^\x0f\xf9\xc7h\xbc\x1ev\xe0\xd8t\x8e\xd7\xc3{%r\xbc\x1e\xfa\x88\xf6%_\x0f\x7f\xc1\xa7>\xb1\xa8\xca\x18bQ\x95XT\xc5\xf7\x1dk\x00\xc0\x1c\x04\xc4\xa2*\x1a\x88\x02`\x08F \xb0\xea\x96\xc4\xa2*~\x88EUp\xa0\xc6\xf2\xe3\x10\x8b\xaa\xb8a\xc2\x80|*A\x1fbQ\x15\xce\x95\xa5\x85\x00+\x9d\x81\x00\xeaA \x05\x01\x98\xd6;\x03\x1c\xeb\xc9\x10\xf8;\xc3\x00w\xc1!|\xd1!t\xe1\x83\xac}\x06\x18V?\x03\xfew 8\x04\xd0%\x80\x1e\xf4\x97$8\xc4\xa2*\xbc\xa1\xf12\x9bh\xa0>\x87!#\xa4\xe7\x1f\xa5=\xa6\xc1\xe1>\xc8\xe9{\x8e\x83\xc3}\x8c,\x16Ua\x0e.\x16U\xe9\xc0\xf1\xe7\x15r;\xf3?\xfd\xa1K\x96XTe\x08|\xb5\x8b\xe4\xe77\x10\xa2\x11\xd2\xfdj\x06\xe2M\x84\xb1\x075\xc4\x9b\x88\x15\xf8[\xc2\x00w\xc1!|\xd1!t\xe1\xef\xfb&\x12\x8b\xaax\xb3*\xe1\x10\xcc\x18\xb4\x18\xc4>p\xf32\xe1\xc0\xcc\xd6\x84\x033\x87\x13\x0e\xf4\xccN8\x04\xe5{\xc2\x81\x7f\xf5\xd2@L\x1b\xc5\xc4JJ2\x85\x03;\x9e\xa7\x0f\xc1\xfc\x1c,\xe6\x08\x8e\xd31L\x1e&\xcf\x92\xaa\x81\x1cS\xd1\x87\xc9ce\x914Dy\xd7@\xcd\xb6\xc5@\x19\x8b\xaa\xb8>e\x9dq\x9c\x93\x8d\x96\x02\xda\x00\xef$g\x9c\xe2\x8c\xd9i\xe0\xccQ\x03[\xc6\x05m\xc6\x80\x8dHN!m\x80M,\x08\"\x18pSK\x1b\x08\"\x1c\x84\x11\x0f\xf8)\xa7\x0d\xdc\xef0C\xb4\x06jJj\x06\xca\xd0B\x03\xdc\x14\xd5\x06\x82\x88\x1cra\xdb\xf3SW\x1b\xb8\x871\xeecQ\x15\x070% \x93@\x10@$\x08\x93}\x01\xc4\x82\x10\x82A\xa8\xd4\xbb\xbf\x01\xf2\xe5\xdd\xec\xd2.T\xd6\x85H\xba\x00\xc2\xf2$\x08L\x91qG\x1f\x1d/\x8e\xb7i\xc5\x1b\x16mH\xb1\xa8\n\x0et\x11H>!\x88\x14\xd4\xc0\x90!\xe4\xf3\x80\xa3\x1c\xd5>\x14\x8b\xaa\xb4\xe0Z\xcdXT\x85\xe0^\xf5\x1eG\xfe#(\xa6\xbf\xeeA,\xaaB\xf1R1\xddtL\x87\x1c\xdd\xf5\x16\xe4d\x8bEU\xc8\xc7\x9a\xd7\xab\xc4\xe8\xc92\x9d\x7f\xb8\xa2*\x831\xfcWw\x0c/\xf5\x1b\x9e\x12*\xd1\xe4\x9a\x96$\xd4?\x9chuS\x0e\xaa\x0eY\xdb\x0f\x92uwPmR\xb1]\x9bt\xd9b-O\xfce?O\xf7h(\x0d9\xbe\x17\x95\xea\xf0\xe5\x9d\xce\xdc\xfc^\x94\xfb<+\x85I\x19^\x98\x7f\xab\xb1\x99\xa7\xf6\xba\xed\xff>\x88\xe2\xee\xc9\x10\x03\xbc?{\x05;Q]\xe7k\xd9\xb1.\x1b\xb3X&\xa5X\xb4S]\xdc<]\x8a*y\xba\xf8^T?\xca\xdd\xa6q\x98\xde5\x8f\x8d\xe4\xe5XB\x8eOrT\xc8\xe2\xa2u|\x0cYy\xd8\xc2\xb9\xce\x939@u\xb2\x9c\xc0dMgt\xe2\xce\x99\xde\xdey\xa2\xa2'\xe9\xe0\xe5\xa1)(\xf4Z\xec\x0b!e\xec\xfa9\xec\xb7\")\x852\x97}lj\x10}\x844++\x91\xacc\x91\xa1\x11x\xc5\xacY\xbfXd\xa8\xfd\x8a\xf6\x881\x16\x19\xea\xfe\x95\x82.\x16\x19\x1a\x82O\x89\x8f\xb7,\x8cUb\x91\xa1\xe1\x8f\x8cyy_U\xa1\xe2\x93\xf6.*t\x8c\xbeWM\xa1xc\x91!\x00\xdak\x1e\xff\xbb\x9d\xb0\xfe\x99\x95t\xf4\x8e\x8b\xe5sb\xf9\x9cX>\xc7\xae\x15\xc4\xf29\xfdo|z\x89\x06\xda\xdb\x84\x98\x1f\x996_\xbf\x18\xebC\xcc\x8f\xec\x0f\xf3\x00\x1eCS\xb4z\x0d\xa4w\x93\xb4\xab\x84\x06\x97\xbb\xac\x0f\xd4\xf7\x91D\xd9\x01\x0c\xf9\x01\xde[M\x0b\x0c\xb2\x83\xef\x84\x1f\x02\xe9\xaa\xd8\x07\x065\x80I\x11 \xacw\x8d\x1c\xbe0@gM\x03\xd4\x85\x02\xfeb\x01w\xc1\x88\x17U\xb4 \xe5}\xa2\xd7\x0d\xd3|H\x9f\xa8\xcf\xc6\xd2\x07\xb2\xd7\xc9@\xc0H\xbc\xa4\x8e\xf9\x91\xf9\xc7h\xcc\x8f\xdc\x81c\xd39\xe6G\xbeW\"\xc7\xfc\xc8>\xa2}\xc9\xf9\x91c\xf9\x1cn\xcbx=l!^\x0f\xe3\xf5\xd0\x05D\xd9\x01\x0c\xf9\x01\x8c[\x07\x83\xec\xc0;3\xe3\xf5\x90\xd4\x86\xbaP\xc0_,\xe0.X\xbc\x1e\x8e `$^R\xc7\xeb!\xff\x18\x8d\xd7\xc3\x0e\x1c\x9b\xce\xf1zx\xafD\x8e\xd7C\x1f\xd1\xbe\xe4\xeb\xe1/\xf8\xa8+\x96\xcf\x19C,\x9f\x13\xcb\xe7\xf8\xbec\x0d\x00\x98\x83\x80X>G\x03Q\x00\x0c\xc1\x08\x04V\x85\x9aX>\xc7\x0f\xb1|\x0e\x0e\xd4(u\x1cb\xf9\x1c7L\x18\x90O%\xe8C,\x9f\xc3\xb9\xb2\xb4\x10`\xa53\x10@=\x08\xa4 \x00\xd3zg\x80c=\x19\x02\x7fg\x18\xe0.8\x84/:\x84.|\x90\xb5\xcf\x00\xc3\xeag\xc0\xff\xc2\x01\x87\x00\xba\x04\xd0\x83\xfeF\x02\x87X>\x8774^\x0e\x1b\x0d\xd4\x87\x1ed\x84\xb6\xf7tc\xa0=\x13\xc1\xe1>\xc8\xe9{h\x82\xc3}\x8c,\x96\xcfa\x0e.\x96\xcf\xe9\xc0\xf1\xe7\x15r;#\xbe\xf7!\xe1\x8a\xe5s\x86\xc0W\xbbH~~\x03!\x1a!\xdd\xaff \xdeD\x18{PC\xbc\x89X\x81\xbf%\x0cp\x17\x1c\xc2\x17\x1dB\x17\xfe\xbeo\"\xb1|\x8e7\x7f\x16\x0e\xc1\x8cA\x8bA\xec\x037\x03\x17\x0e\xcc\xbc\\80\xb3u\xe1@\xcf\xe1\x85CPf/\x1c\xf8W/\x0d\xc4\x04aL\xac\xa4tb8\xb0\xe3y\xfa\x10\xcc\xcf\xc1b\x8e\xe08\x1d\xc3\xe4a\xf2,\xa9\x1a\xc81\x15}\x98\x96\xcfq\x00S\x022 \x04\x01D\x820\xd9\x17@,\x08!\x18\x84J\xbd\xfb\x1b _\xde\xcd.\xedBe]\x88\xa4\x0b ,O\x82\xc0\x14\x19w\xf4\xd1\xf1\xe2x\x9bV\xbca\xd1\x86\x14\xcb\xe7\xe0@\x17\x81\xe4\x13\x82HA\x0d\x0c\x19B>\x0f\xc8\x93\x07\x16\x01\x80+\xfdY\x84\x00\x1e1\x80/\xeb\x8f;\x1c\x8ed\xa7\xca\xf4X>\xa7\x07G\x18\x0bOB\x13\x07@\xec\x9ab\xb8c\xf6\xe83\xcaQ\xedC\xb1|N\x0b\xae\xd5\x8c\xe5s\x08\xeeU\xefq\xe4?\x82bb\xe7\x1e\xc4\xf29\x14/\x15\xd3M\xc7t\xc8\xd1]oAN\xb6X>\x87|\xacy\xbdJ\x8c\x9e,\xd3\xf9\x87+\x9f\xd3\xd4\x03iifJ\x88\x9c\xa7\xd9J\x05\xe4\x95\xbb\xbc\xfc\xaa\\\x7f\x82\xaf\x17\xbf\xfbc,\x172\x02/[\x19\xa6\x8a\xe5B\xda\xafh\x8f\xb6b\xb9\x90\xee_)\xe8b\xb9\x90!\xf8\x94\x96\xa8Ub\xac\x12\xcb\x85\x0c\x7fd\xcc\xcb\xfb\x8a$\x96\x0bq`$\xbc\xa0\x08E\xfdk.\x17\xe2?\xcb\x87\x1d\x98\x02\x83y\x91^\xa5YR\x1f\xb4\xcdg\xc6\x92}\x82\xa0\xd2\x93\x95\xdad\"u\xdb\x97\xfdZ\x87H\x83\xd3\x0c.\x84)=x\x02\xd5\xb5\xec\xbbNK\xf8Q\x92\xac\xfcx\x02\xcbCe\x14\x84\xf3\xd7\x7f:\x81[L\x84\xd5E\x16!\xad\xa0\xca\x87}c]K\xddd)\xaaJ\x14\xf0\xe1?\x1c\n\xb6\xffeE;\x83XT\x05bQ\x95XT\xc5\xa7;\xc5\xa2*\xfdo|\xda\x9b\x06Z\xc4z\xcc\x9aK\x9b\xaf_\x8c\xf5!f\xcd\xf5;\xff\x81\xc7\xd0\x94\xbb\x8f\x06\xd2k:\xda\x85K\x83\xcb\x89\xd2\x07\xea\xab9\xa2\xec\x00\x86\xfc\x00\xef\xdd\xaf\x05\x06\xd9\xc1w\xc2\x0f\x81t\xa1\xee\x03\x83\x1a\xc0\xa4\x88\x04\xd6k7\x0e_\x18\xa0\xb3\xa6\x01\xeaB\x01\x7f\xb1\x80\xbb`\xc4\xeb<\xda\x84\xf2j\xcdk\x9co>\xa4O\xd4g\x89\xea\x03\xd9\x17a `$^R\xc7\xac\xb9\xfcc4f\xcd\xed\xc0\xb1\xe9\x1c\xb3\xe6\xde+\x91c\xd6\\\x1f\xd1\xbe\xe4\xac\xb9\xb1\xa8\n\xb7e\xbc\x1e\xb6\x10\xaf\x87\xf1z\xe8\x02\xa2\xec\x00\x86\xfc\x00\xc6\xad\x83Av\xe0\x9d\x99\xf1zHjC](\xe0/\x16p\x17,^\x0fG\x100\x12/\xa9\xe3\xf5\x90\x7f\x8c\xc6\xeba\x07\x8eM\xe7x=\xbcW\"\xc7\xeb\xa1\x8fh_\xf2\xf5\xf0\x17|\xea\x13\x8b\xaa\x8c!\x16U\x89EU|\xdf\xb1\x06\x00\xccA@,\xaa\xa2\x81(\x00\x86`\x04\x02\xabnI,\xaa\xe2\x87XT\x05\x07j,?\x0e\xb1\xa8\x8a\x1b&\x0c\xc8\xa7\x12\xf4!\x16U\xe1\\YZ\x08\xb0\xd2\x19\x08\xa0\x1e\x04R\x10\x80i\xbd3\xc0\xb1\x9e\x0c\x81\xbf3\x0cp\x17\x1c\xc2\x17\x1dB\x17>\xc8\xdag\x80a\xf53\xe0\x7f\x07\x82C\x00]\x02\xe8A\x7fI\x82C,\xaa\xc2\x1b\x1a/\xb3\x89\x06\xeas\x182Bz\xfeQ\xdac\x1a\x1c\xee\x83\x9c\xbe\xe788\xdc\xc7\xc8bQ\x15\xe6\xe0bQ\x95\x0e\x1c\x7f^!\xb73\xff\xd3\x1f\xbad\x89EU\x86\xc0W\xbbH~~\x03!\x1a!\xdd\xaff \xdeD\x18{PC\xbc\x89X\x81\xbf%\x0cp\x17\x1c\xc2\x17\x1dB\x17\xfe\xbeo\"\xb1\xa8\x8a7\xab\x12\x0e\xc1\x8cA\x8bA\xec\x037/\x13\x0e\xcclM80s8\xe1@\xcf\xec\x84CP\xbe'\x1c\xf8W/\x0d\xc4\xb4QL\xac\xa4$S8\xb0\xe3y\xfa\x10\xcc\xcf\xc1b\x8e\xe08\x1d\xc3\xe4a\xf2,\xa9\x1a\xc81\x15}\x98\x16Uq\x00S\x022 \x04\x01D\x820\xd9\x17@,\x08!\x18\x84J\xbd\xfb\x1b _\xde\xcd.\xedBe]\x88\xa4\x0b ,O\x82\xc0\x14\x19w\xf4\xd1\xf1\xe2x\x9bV\xbca\xd1\x86\x14\x8b\xaa\xe0@\x17\x81\xe4\x13\x82HA\x0d\x0c\x19B>\x0f\xc8\x93\x07\x16\x01\x80+\xfdY\x84\x00\x1e1\x80/\xeb\x8f;\x1c\x8ed\xa7\xca\xf4XT\xa5\x07G\x18\x0bOB\x13\x07@\xec\x9ab\xb8c\xf6\xe83\xcaQ\xedC\xb1\xa8J\x0b\xae\xd5\x8cEU\x08\xeeU\xefq\xe4?\x82b\xfa\xeb\x1e\xc4\xa2*\x14/\x15\xd3M\xc7t\xc8\xd1]oAN\xb6XT\x85|\xacy\xbdJ\x8c\x9e,\xd3\xf9\x87+\xaa2\x18\xc3\x7fu\xc7\xf0R\xbf\xe1)\xa1\x12M\xaeiIB\xfd\xc3\x89V7\xe5\xa0\xea\x90\xb5\xfd Yw\x07\xd5&\x15\xdb\xb5I\x97-\xd6\xf2\xc4_\xf6\xf3t\x8f\x86\xd2\x90\xe3{Q\xfd(\xb9\xbdR\xdd\xbe\x17\xe5>\xcfJa\x12\x86\x17\xe6\xdfjd\xe6\xc1\xf1\xff>\x88\xe2\xeeI\xbfe\x8d\xee\xfd\xd9+\xd8\x89\xea:_\xcbNu\xc9\x98\xc52)\xc5\xa2\x9d\xe6\xe2\xe6\xe9RT\xc9\xd3E\x83\xa1\xd1\xaa\xcfEe\x86\xa0\xd9l$2\xc7BR\x8b\xc5\xa1\xd2\x81r#v6aWfL\xba\x8f\xa4\xbaE\x9a\xdb\xa4\xb8E\x18Xw\x8d\xe5\x1e\xea8C\\\xe7\x87lvy(\xd0\xd3\xdd\xb3q)\xda\xec\x0b\xf8\xf0\xfe\xc7'\x85(\xf3C\xb1\x12\x90%\xbbz\x0f\x1d\xb2\xf4\xe7\x83\xd8\xde\x81\xdcXU\xbaI\xeb[XUgR\xb2\xc5\x1c\x94\xa2H\x93m\xfa7\xb1\xc6\x9f\x83\xed\x8b\xbc\xcaW\xf9\x16\x96\x87\xcdF\x14\xe6\xdd\xfaB\xa7\xfc\xd6s\x81\xdd\xa1l68$\x15lERZr\x18\xe4\x99\x80\x07O\x1e\xc0\xea:)\x92U%\n\x89I(\xb5\x18Jq\xb5\x13Y#}>\xbc\xff\xf1a \xfb\xa4\xbaV\x1d\xa0\xe8\x9a\x17\xefxo\x12\xcd\xe6\xb0\xdd\xde\xc1\xcf\x87d+\xa9\xb2\xd64\xab\xbbP\xd4y\x94\x94\xd6\x84\x00\x1fe\xf7O\xae\xf2\xfcj+\x16\x8a\x16\xcb\xc3f\xf1\xfaP\xa87t\x1f\x1f\xeb\xd1+\x94\xe5u~\xd8\xaea\xa9\xd2T\xe1/\"VI\x96g\xe9*\xd9\xaa\x0d\x82\xf7\xf8H,\xae\x16'\x92\x84\xea5\xe0\x83\xc5\x03)#T*\xf7\xd5J\xec+\xb1~\xbc\xf8\x0d\xde\xf44\x83\xbd$j\xba\x12'P\x89dW\xc2\xa1<$r\xfa:\x03\xc0>\xdd\xca\xd1U\xb9\x9a\xfc2\xcd\x92\xe2\x0e\x92\xed\x16\xa7\xdd\xdd^\xd4\xe9\xdcU\xde\x10\xf4#\xf1y/V\xa6r\xc0\xa14)\xba\x143\x88\xcfj)_dw\x0b\xf8!\xbf\x157\xa28Q\xa2\xed\xc3\xfb\x1f\xf1[\xbdV\x04$\x1ak\x9a\x91ru-v\x02>^W\xd5\xfe\xe3\x89\xfe\xff\xf2\xe3 \xe4\x05dy\xfd\xeb\x89\xe2\xb2U\x92A\xaev\x93\xa2\xc0\xf8$\xd1p\xd8\xd7\xf9\xc6,\xfd\x89\xe2F\x14\x9a\x0c\xbbd_\x97X\x903P\xf7\xbd:1\x99\xb2{\xa4:1}\x82\xcfm\x93o\xb7\xf9m\xf9\xdc\xb2v\xff\x0c\xa7\x9bv\x06r\xc9Mb\x91f\x92\xea|.\xcb\xc3N\xac-\x99'\xfe\x19^d\xf0\xc3\xc5\xc5\x19|\xff\xe6\xa2\xce\xe6/\xc7\xaa7\xe8\x9d:\xbdp\xce\xfc\xcb\x90\xc5/\xee\xf6\xe2\xaf\x7f\xf9+\xfa\xb1\x92\xe5\x07\xb5\xd65\x0fiy\x7f\xa2sM\xe4\xeb\xc3J@\x92\x81(\x8a\xdc\x12\xb6\xfd\xcf\xf0\xa2}\x8aZ\xaa\xc2\x04\x89\xa4\x8f>TW\xc9J\xca\x84<\xfft\xd8C\xfd\x08\x01\xe4\xe1\xb6\x86<\xb3mt\xcbP?\xbc\xffQ\x8d\xeb:\xb9Ql\xb5\xeb\xec\x85\xb5\xde\x0c\x89\x99\x86\xfc\xef\x9b<]C\x92\xd9\x0c\xb6zPj\xdb\x17b\x93\x17\xe2\xc44\x968\x93*]\xa6\xdb\xb4\xba\x83L\x88u\xa9\x15\x04P\"\xaa\xb8\xb1F\xca\xe4\x99\x14\x87\xd9\x95P\x0d\xd4\xbe[\xc0\xa3\x0f\xa50\xaf\xe4%U$\xdbI9\xa3\xf9.\xc9\x92+\xdb\x8c\x97\x85H>I\xd9Q#]<\xc6\xb9\xe5m^\x89\xe7\xban\xc8\xe6\x90\xad\xf4N\x91c\xaf\xe5\xcd\xeaP\x14\"\xab\xb6w\x1d+\x9e\xe3)t\xbe\xd9\xa4\xab4\xd9:\xce\x91\xe5a\x03\x85\x90\xa7\x838Q\x0f\x94\xd3\xcatv\x90\x8b\xab\xf4\x9ef\x7f-\xc5U\x9ae6%W\xaam\x16\xa1\x7f\xb7\x17\x0b\xcd\xcf\xc9>-\x17\xab|g\x93\x98\xe7j\xb7\x95\x90W\xd7z\x93gC\xc9\x02\x8fj]L\xec\xf6\xd5]\xbd=\x1f\xa3\xc8v\xca\xe4\xb3\xb4\x08\x125A\xa5k\xa6\xbb\xfdV\xc8\x83N1?\x94{\xb1J7\xe9\nJ\xb1K\xb2*]!\x01Ej\xbf\x05\xa8\x14\x9c{\x80E\xe3\xf8I\x8a\x8e\xa50\xa9@:\n\xc3H70\x8f\xcc\x97\xf9\x8dE\xd9\xd0S\xad\xd9y8M\xdfh>\xbe\xc8\xee>\xb6\xf7\x88$\x83\xa4X\xa6U!7\x9fcT\xb5\x8c\x1e\xa1K\xb6yv\xa5W$\x19/\x99\x94\x9aJ\xe8\xebQ-\xc7\xeaT\xb7O\xa3\x15!lvf\x18\x7f\x9b.\xd5Pk\xb9^By\xd8\xef\xf3B\x9d\x9c\xfbd\xf5\xe9\xc9!\x93\xff'\xcfK\xbd\xdeJ+\x19\xa2S\x1a\x0d\xaa<\xe4\x1b8TZ\xf8\x98\xed\\J\xc1\x97\xac\xd7\xa9\xde\xdbp%2Q\xa8\xfcE\xfa\xea\xd0\xe4\x05x\x81\xc8;\xbdD\xe3~\xde|N$\x03\xc3\xd3\xe7p&\xc7+\xf7q=\xf4\xa4\x9b\xa9\xf3\xd5o\x7fk9\xa6\xbe\xcbs\xd8\xe49|\x0b\x8b\xc5\xe2\xffE?\x91DH\xb2;\xfc\xc7$\xbb[\xc8\xae\xbf+\xf2\xdd\xa3M\x9e?\xc6?[,\xf0\xb3'\xdd\xc0#\x89\xe2\x83\x1a\xf4E\xfe\xe8\x9f$\x8e\xc7\xf0\x7f-\xf2\xd4\x86\xe7\xefv\xda<\xf3\xd0\xe6\xdf\x92\x9bd2q\xe0[\xa5[I\xec\x13\xa8\x90\x96\x8f\xbe\xcb\xf3\xc5j\x9b\x94\xa5\x83\x08zH\xb2\x81\x9eO\xa7\x11\xde\xef\xdf\xd1\xbf>y\"Y\xd2?\xa6\xf3d'\xa4\n\xf2B\x8f\xeeJT\xaf\xb5\xd9\xe94+\xab$[\x89G\x8f\xb9\x83Eq\xd8\xc6n]\xd9o<+{vW]\xe7\x99em\xf5\xb8\xbe\xcb\xf3G\x8b\xc5\x02?D\x9au}d\xfd]\xf1\xbeZq\xee\x82\xcb\xc6\xa7\x9a\xa2\xaf\xdf\x9c\xbfz\x7fzv\xf1\xee\xfdc\x9b\x9d\xa9\xdd#\xf6\xcetwVj\xfd\xceC\xad\xefsK\x12\x12I\xa9\xe7\xdf\xc2?\xed\x97\x8b\xef\xf2\xfc\xff.\x16\x0b\x9c\x9f\xe4 O\xa4\xa2)\xbfN\xb2\xbb\xfdr\xf1V\xdc:\xc6\x9bn\xd4\xd7\xff\xe3[\xc8\xd2\xad\x95\x81\xacD\xb4\xb0\xb5\xfd\xfb\xc1D,\xcd\xebQ\xe99,>d\xbb\xa4(\xaf\x93\xedE\xae7\xf6\xd4!\x8f\xfe./\xadj5\xcc9\xd0\xcdb\xb8\x1f\x9eX\xba\x16\xd9\x9d\xb1\xfc\x8e\xb0\x1dJD\xe7y\x88\xa8aO\xe4]|\xa1~\x90\xaa\xecCH:\xa7\xaae\xf9m\xa6v\xf0\xb5\xaa`\xb9:\x94U\xbe\xab\xf9y\x88\xb1\xcf\x82'Z\xd5\x1e\xf0\xa5)\x81\xd8t+\x19-\xbbB,\x18\x8a\xed\xc6\x9d|T\x1b\xc2\xf0\xe1u\xbe]\xd7\xe9\xc1\xda\x91)[]\xcd\xbfP\xdb\xc5j\xf6\x1d\xe3S\xdd4\x9c\x0b\x8f\xa4$0\xa4\x18\x19P\x8c\x8d\xf0\xaf\x7f\xf9\xebc\x0b\x93O\xe5\x91~Gv6Qd\x90\xe8\x9e.\x9e=}V>\xb0,{\xf7_\xae\x10\x12\xc7\x9d\xd3\xee\x93\xf6\xc6\xc7\x04`\xed]\x18\xff\xdcf\x84\xed\x88\x1a\xe3Ii\x9c\x0f_\x95\xa2\xf1^\xed\x93\xab4S\xb4k\x07\xd3\xc3\xd9~\xd0D6%Y\xf7\xaf\x06\xbdq\xdf\xb4'p\x85\xb9\x0fp\xc7\x81J\x9c2\xf2@X\xe9a\xbd\xd3\xdb]`\xd0\xe9\xc5\x90G\xfegm\x9eJ\xcaR\xdb\xdd\xce\x92+\xf1^\xfc|\x10e\xb5\xd0\xbf\x0f\x90\xfc|\x10\x85N\xc0+\xd1IJ\x08\xd8\xe5e\x05B\x19\x7f\x94\xb5h\x01\xa7Ug\xef\xee\xab\xbbq\x8e\xde\xaa)G\x9a\xe5\xb0\xcb\x0ba\xac|]\x15\x06\x89\x92\xf0\x12\x05\xc9:h\x8bdS\xe8\x155\xd4\x7fd\x87\xddR\xdb0\x8c\xc1\xb1c\xf5\x1a\x8e\xbfK\xa8U~\xc8\xaaK\x85d\xb8\xcdo\x93\x12JQ\x9d@Z\x95\xc6fZ\xc2!\xd3\xcc\xb4\xd6f\xa7\xdb\xb4\x8e\x8a\xf3\xf8\x0d1\xdf\x9d\xd3}X#h\x9c\x88]\x04/\xeft\xfdX\xb6\x1f\xf1m\xbe\x16\xa7\xd9&g{\x0fk\xe5\xf12\xcb\xd7\xe22\xcd6\xf9\xd0\x0bH\xda+\xc6\xb8s\x89\xe6\x0fE\x11\xd9\x91\xa9_\x9e!\x1e}\xa7U\xcd\xc1j\xd6\x14\xa0\xe1\x08\xd1\xa4\x9da\xe8\xfa+\xb0&\xed\xacmZV\"S\x01\x16\xa4\xef3Q\xdd\xe6\xc5'\xd2\xb7\x8e%\x1c}\xbb\xbaN\xb2LlK\xd2\xc7V\x19\xb9\xcb\xb3\xf4\xd3\xf0@\xb3 Q{s2{U\x9fm\x15\x0c\x1ckX\xecW\xac\x8a\xe5\x9d\xac\x9e\xe3}\xc1\xd8\\R\xd1%\xd1&\xd9\xef/\xc9\x1fs\x96\xf9*u\x05G\x8e>_\x1e\xd2\xed\xfa\xb2J\xaeh|q\x95\xbb\xc4\x86\x05\xfbZ\xecQ\xec\xe3\x9044\x1c\xcd\xca3\xee0\x82}R\xa1\x81{\xce\x9d\xdf\x9cu\xbb|}\xd8\n\x85d\xf4\x91#\xf12\x0by\x8dg\xf4]\x89\xc7\xbc\xd1p\xaf\xae\xc5\xeaSy\x18f\xa7\xaf\x7f\xfdI\xf7<\xd4\xef\xfe\xacGr\xdaO\xb4\xa5\x8f\xb2\xcbr\xfd\x89\xb5\xe8Mg\x0f\xcf\xd3l\xa52yI<_\x95\xebO\xf0\xf5\xe2w\xdfZcG\x83\xa3F\xb5)\x7f\x80\xcd\x12/:%RTE\x85\x0eg\x838\xf3B\xa2C\xed\x91\xa0\x13c@I\xd1\x9f\xf4H\xcf 1\x9e\x13\xa2;\x11\x811c\x0c\xe7\xbc\xd1\x9b\xb3\xc5m\xfa#6g\x8b\xd5\xb4EiN\x89\xcfDc1+J\x14fh\xfc\xa55\xd620\xca\x12\x89\xaf\xb4\x1e\x944\xff\xcb\xe8\x04\x0d\x8c\xa3lc&1\xfa\xfe\xc6\xdf\xf7\xb4\xa8I\x1d%\xd9A7\x8e\x97\x9c!RrZ\x8c\xe4\x80\xcb\x87\x87\xe1\xc4\xb8\xc8\x9a\xd0]\x8cS\" \x9d\xe1}\x96\xa8Go\xbc\xe38\xf4\x87\x1e\xe38n\xfbwl\xaeA\x11\x8d\x94\xc9\xfa\xa2\x18\xeds\xf3F.2b\x16\x87qY\xb68\xc5\xe9\x11\x8a\xe1\xb1\x89\xe8\xba\x04\xc6#:#\x11\xed1\x88\xae\xe8C\x94X\xd4\x88C_\xac\xe1 \xcapB|!!\xb2\x90\x1eS\xe8\x8d&D\x82\xf2F\xdd!\xdf\xf8\xa2\x06\xa7\xc5\x0b\xa2\x83\xea\xfceRt\xe00\x1apJ\x1c \x12\xf77)\xe2o\x18\xe17gl\x9f-\xaao\x14\xcf7O$\xdfl1|\xf3F\xef\xd1\xe2\xf6\xbc\x11{\xf5]\xdf\x17\xabW\x7f\xe6\x8c\xd2\x1b\x85\xb3\x8d{\xa3\xc6[\xb9c\xf2\x88\xd1x\x848\xbc\xde\x90\xe7\x8c\xbd\x9b\x14u7\x8e\xb2\x9b/\xben\xbe\xc8\xba\xf0\xd5\xf5F\xd3\xf9\xe2\xe8\x8c\x94\xc6c\xe7\xd0\xfb\x04\xe6\x9awD\xca\x11qL\x89\x8b\xf3\x999[\xa7\x14\xd9\xd0\xd9O\xa1\x82\xcca\x9cg\x05\xf9\x88\xe2\xa4\xc3\xf2\xaa \x9fa\xf9T0lH\x1e\x15+\xb6~\xfe\x94\xea\x08~\x14,W\x8a\xf5\x92\xea\xcd\x91b\xc9\x8fBF\x88\xe5EAr\xa2\xf8\xf1!\xb9P8~Q\xf0\xe4@A\x07@\xc9}2g\xde\x93\xceFZ\x15w\xfb*_4\xb5D\xc9\xbbhT\xc3\xd5)\x0c:\xc6 \xa4\xde*\xad\xa9\x89\xe7a\x94=E\x8a\x9av\xe6\xbe\x7f\xb6_\xd4\xd7\x1cC-\xf2\xf4\xed\x19\xd1\xd0mdI\xab6\xcc\x82feOk\xc0\xe0\x97\x10uh\xcdp\x86\xa0A3\x9b!\xdf\x8d2\x9a\x05\x8a\xe0q\x063\x1a\xb3!Y\xcb\x90\x86\x83le\x8c\xa5\xc73\x94Y\xe8n\xcdL6\xf8\xde\xcd\xdb\xef\xda\xc1\x12\x18|<@dp\xe8\xc0\xdc\x83:\xab7\xce\x9f\xbb\x8bG\x18Oo\xaf8\xd7\xb0\xc7\x9b\x83\xfdAo\xd8\xdb\x13\xb4f\x9d\x99V\xca\xf8\xfe\xb2\xed\x9c0\xc3aL&\x83\x9b\xf0T[\x9e\xd8fk\x1f\xe0\x8c\xf9\xfc\x92s-\xfa\x8c\xdeSc\xa0\x07\xe8\x94\xcf\x11\x8f\x83\x86\x19c\xa1\xc1\x15\x0f\x0d\x84\x98h@\xe3\xa2\xc1Nf\xac\xc4\xb1\xf7L\x18.F?V\x9a\x84\x02+\xd1i\x89\x9b\x860\xee\x9d3\xc0\x98P\xb9\xd8:Bp\x8eR5\xb5W+\xd6X]\x95\x8amkb\xe0X\xc5\x9c\xbdU\x89\xad\x15\x89\xed\xb1\xd7@\xe1\x1c[\xf4\xb7#\x0e\x1b\xf0Xl\x08\xe8\xce\x1a\x13\x1d\x82lZ\x8c6x\xe3\xb4!`L\xb6\x98\xed\x10\\\xe3\xf8\xed\x10,\x8eX\xee\x10t\x96\xb8\xee\x10T\xee\x18op\xc6y\x03\xbb?f\x00\xf40\xea\x19,a\xb2$\xb5\xa3\xfa\x8c\x0e\x9d\x95\xa3\x15\x954\x81>\xed\x8b\xcfu\x828c4T\xa7\xa6\xf6\x13\xe83\xf2_5\x01\x16\xfa\xad\xd9o\x9f\x8e\x1cQo\xdf]\xbcy\xae\xc3\x92\xb6[9Ah\x9e\x06\xaa\x0d\xb5\x00\xf8w\xf1\xb0\x10\xf0\x9f\x87\xb2\x82\xe4\xaa\x10B\x1e\xf0h\xa0H^\xc8\xc5Pf\xd8Q?*\x84l'\x92\xac\x1e\xb1\x1e\xd6\x8b\xfd\xfe\x87\xa4\xbc\x86u.t\x98C]\x05Z\"/\x85\x1cN\xe7E\xa7f\xb2\xd7:R\xb3c\x15/\x85\x0e&\x93\xea@R\xfb\x97\xbb\xd5\xa4\x1b\xad\xa5FeX?\x88\x05\xc6\x8d!\x8c\x0f\xd8\x99-\x9b \xca\xcb\x9b\xbc\x12\x97\xf8@48Oa\xdf9\xac\x0c\xa8\xe2r\x14\xbfk\xc0\x83\x1c\x08\x1d\x80Ac\xfd\x95p.kp\x17\xbf\x07Ur\xfe\xfc\xf4\xfb\xb7o^_\xfet\xfe\xfd\xe5\xc5\xff9{\xe3-\x81\x8f\xb7:{\xff\xe6\xcf\xef.\xde\xf0[yJ\xe2\xdb\xda\xbd;{w\xfe\xc2V\x1d\x1fZ3\xc4\xf3\x80\xf9\xf9R}u\xe1<\xbd\xca\xc4\xfa\xa7\xf2\xea\xa2\x89\xe7\xad\xea\xd8\x92R\xfd\xd4u\xf8\xda\xf3\x00jh\x8e\x08K\x86\x9e\x06\xac\xf4\x7f\xae\xca\xc5\xe39\x1e\x9d\xad5=\x9f\xc3\x99:\x8c\x92\xad\x1d\x05v\x1b\xe8\x03\x919}Z\xa9\x86\"?dk\x7fo.\xf5WC\xa7\xbbo\x9eY\xbf\xc3\xaf\x16} \xecq \xeespj\xdf-\x10I\n>\x8d\xbc\x0b\xde\xebJ\x1f\x88\xb3\x06\xc6\xcc%8.6\x83\x0f\x89\xebl\x80\xc6^\x06(\x8b\x00\xbc\x85\x00\xceb\x10.K\xe8\xe7\xe3\xab\xd3\xf0\xb3\x9d(\xabd\x87\x18U:\x1f\xd1&\xe5\xba\x97\xf7\xa1\xb9m\xd8K(\xb4\xc0\xec\xddI\xca\xb6cK\xc5\x87\x16\xa8\xfcD\x93\x1bR\xd8'R\xb1\xf6w9\xcfLy\xc7\x94<\x15\xda1\x9a\x87*7\xad\xf7UY\x99\xee\x94LHW\xe9>\xa9\xac\xf9`5\xa4Y\xe7Bc\x12:8[$e\x99\xafR\x15\xc7\xa8\xd5[\xeb\xd7\xe2s%2[}\x04\x03\xbf0-\x9b1\xf6\xc2\x8f\xea{\xb9\xb1\xcd-\xe0]\xb6\xb5\xe5\xea\xd5\xa0\xc3m\xb5\x89Qh\x83\x87\x9b\x8c\xb5:\x81\xa4a5\xd0\x0c\xed\xf2\xd7\xc0\x94-!\xfd\xec\xe9\xc4\xd6e]k\xc6t\x03#\xdeE\xd8\xd3\x89@.,\xb6x\xde\xf5\xa1\x12H\x11\xa7\x89~\x91z\xe5\xbe\x10\xf2\xee\x01\xbd\xee\xd4_6E>\xac\xd6\xd1Bk\xf9\x91#\xb5\xcf\xaa\xa3|b?\xabk\xcf2^{\xe2\xb5\x07\xe2\xb5\x07\x05\"s\xd2\xf4\xd2x\xed\x01:I\x81~>\xc5kO\x0f(\x8b\x00\xbc\x85\x00\xceb\xc4k\x0f\xb5\xf7x\xed\xa9\x81sL\xc5k\xcf\xcc\xb4\x8c\xd7\x1e\x1c&\x10\xd2\xcf\x9eNl\xf1\xda\x83\xc3L\xd7\x1euN_\xba\x12\xce6_\xfa\x19\xca\x7f6\xb7\x82\xfc\xf8}y\xcfHF/\xae\xb3\x91\xb2\xf4\xaf\x8d\xfbN\xae\xff\x9b\xday\xd7:2\x8d;O{\xad\x1b\"\xa1\xa8\xea\xfbGu\x9b\xcb\xf6\x9bm\xbaR n$\xc7 k\xbc\x95Z\xfd\xe5j\x9b\x8a\xac\xbaL\xaa*Y}:\xa6\xf3\xb03\xa2KK\xe8\x9c\x06\x82\xda\xe9\xeb\x0b\x1ab\x10T]B\x7f@\xec\x13\x90\xe8E\x1c\x88\x9d\x02\xa3cpWW\x1d\x02%*\xd2\xd2\x92>v`\x8e\x1f\xecq\x958\x106\xea\x10\xcc\xc6Ec0q@#3q\xb8\x8f\x01Q\xc4\xca\x10\xe8\x11\x9f$t\xd6\xcc\xb8\xae8P\x1c8\xd1\xa1$\x84\xc3\x08Rw\xcc(\x0e\x94HR\x1c\xf0\xf8R\x1cX\xcc\xe27\xc3\x18`\xa1\xa5\x9c\x97]\x18G\xb3Z\xbe\x0b\x1b\x84\xff\xaai\xc0\x11\x0f\x8b\xc3\x91\xe5\x16\xd5\xa0\x00|\xe2\x00]\x1do\x81i\xed1\xc0\xa4\x12\x04P\n\x80a\x052@\xbd\xbd\x0f\x81\xc7\xdd\x068\x8b a\x0b\n!\x8b\xca\xb6\x1a\x0d\x9a\xf9\xacG\x06\xdcQ\xc880i\xc0\x9c;-\x8e\x19\x07Kt3\x0e\xc7\x9c\x863\x16\x19\x87c\x0e\x07\xacE\x18p\xa0\x06b\x93\x90\x0d\x83\xb5q\xf0\x87p\xe3pL\xb2\xb9\x82\xc0q8\xe6h\xf00r\x1c\x8e9\x0eO :\x0e\xc7\x1c\x90#\x94\x1d\x87c\x0e\xc6\x1f\x0c\x8f\x83;D\x1e\x87\xe3\xcdc\x86 {\x1c\x86\xd9\x01p`\xe8&\x1c\x9d\xe4\x0b\xd1\xac\xbd\x8eO\x03\\U\x88\xe6\xd00\x10Uj+D\x95Z\x01\x8f\xad\x0dp\x16\x13\xc2\x16\x14B\x16\xf5\xbeT\xea\xc6\xdbAZR=\xfb\xf1\xcb\x11\x1c\xd0\xf7$8\xb0\x99\x91\xcf\x8aF\x82\\n\xb6\xc9\x15\xb5Q\xe0\x82\xfb\x03\x9e\xfa\xf0\x15\xbc\xfc\xf1\xdd\xab?]\x9e\xbe\xbe\xfc\xee\xc7\x17\xdf\x13\x82\x83\x860\xc4\xf0\xe2\xe5\xf9\x9b\xb7\xeex\xa6>\x0c\x11\x10\x02\xa2\xfa0D\xf0\xf6\xd4\x15\x17\xd5\x87&Jj\x1a\x19x\xf7\x06\x0dz\xa3\xac\xbf\xdb&W\x90fk\xe5\xf4\xa83G\x9bM\xe4\x0d\x98\xeaC\xeb@L\xe9\xa6Kf\xb0B\x1f\x82x4H$\x11\xa28\xfa0iht\xb3\x9b\x06\x92\xa3\xb9\x0f\x93\xc6G&]\x88m\x1c\xe0\x95R?\xcf\xd3+\x1d\xd0'\xcfyc\xb8\x9f\xa1qOgj*1\":<\xe1\x98\x0f(\x91&}`\x13\x93{q\xd9\xfb\x8a#\xe3p\xc4q\x99\x11\xf9\x06\xc2\xd8\x96\x9c\x0d\xc9\x90SL\"\xb0x\x9c!\xa1\x18\x84\x00&1\x80/\x9b\x98D\x01.a D*\x1d\x7fP^W,\xc3\x00y\xa1\x87I\xbf\x19\xda\x99\xfa\xb4\xf3o\x87\x1c\xc7\xceqj\xa6:jn:z6:b\xfe9V\xc6\xb9\x1eK\xff\xd7\xd0\x80\xca\xcd*\xe7\xca\x1c\xc7\xcd\x15\xc7\xcd\x0e\x17m\xa4\x10m\xa4C8\x92\x8d\xd4\xa2cz\xd9\x0d\xd3/=J\xb0\x17\xe7`j\xce\xccc|^\xb6\xe8\xbe\xdcQ\xf9<5!y\xc1z\xb9\xbf\x06\xf8,\x99\xc0\\\xb9\xbf,\xd9\xbe\x8e2SF\xd6\xae6\xb9\xd3p;\xdb\xf2ta\x99\x9f\xbc\xb9\xb8&Nstr\xb0sj\x8d\xf2f\xf5\xf1Q\x12e\xf5[02c\xd9\xa7\xc2\xcd~5\xccr\x85L\xc0t;\xcc\xdf\x1b5\x98\x06\xa2\x06\xd3\x80w_F\x0d\xa6\x03Q\x83\x89\x1aL\xd4`\xa2\x06\x130\xcd\xa8\xc1\xb05\x18WL\x19\xba\x1a\x98\x98\xb4&\xd8$c\x98f\xef\xc4y=,\xfde'\xd5e\x8d\x07Mx92\x85\xb1\xad_\xde\xe2z\x0ce\x12+\x9f\x17p\xd2\x8fuR\xf0\x1do\xb6h\x1d\xaa~\x8a\x7fk\xaf\x00A\xd7Sm_[\xaa=\xb0\xf4U\xf0J\x1e\x98Yo\x85\x00\xdd\xd5\xd6\xc6W\x9f\xc1\x16\x03OR\xf90\xf5\xc9\x92~\xc4\xad\x93\xd9t\x01p&\x12\x99\xa0=\x1eK\xc1#\xe8\xbc\xe0\x1b9xG\x0fn\xfd\x17\xbc\xf46\xe0\xd3\x83\xc1\x9bp\xc3K.\xf0\x93\x8c\xa0\x17\x83K7\x06\xbb~\x0c\xbe!\xba\xf4d\xf0\xeb\xca@\xc5\x8fL\xdd\xa97\x83w\x0d]{\xc6\x11U\x17:Z\x9f\x96 \xe1:5\x82\x89T#\xc0\xa7\x8f9\xea\x01\x1c\x9d\ns\xe8\xdb\xe0\xd2\xb9\xc1\x91\xd3\xdf\xab{\xc3\xfd\x92\x80\xc9\x12\x08B\xd0\x96\xecqM\xb5YO\xa8\xe8\xc5|8%|\x14^5*\x07Bn\xe1\x1en\xb9\x1e\x7f\x91\x1e\xc2\x92\xfa\xd2\x86\x13P\xd0\xd4zw\xc9\x1dV7\xbe<\x9f\xc4\xa2:3\xeeh\x7fZh\xd2\x04\xc1\xa7 \xb5@\xba\xf6\x19 \xcd\x14\xc8\xb3\x05\xffu\xb0\xf9\x8ct-4@\xe1#\x03~\x92\x03\x87\xec@'=\xf1\xfa8\xf8\xd8\x9da\x9b^\xaa\x864#\xd2L\xf8\xc5h\x08%h\xe6\x1a^\xab\xb5\xdeS\x87Czx\xeb\xc34oU0\xe0U|\x99k\x0e\xd4\x9a.s\xf5\xe7\xaf\xda2WO\x8c\xba,suI\xac\xbc2Ww\xc0\xaa\xad\xb2'WT\x99g|=enz\xcd\x14W\xa5\x14\xefa\xe5?\xa4\xeeM\xa9\xf1T;\xa1\x9d~.\xc3\x9a\x81\xa8\xcd\xb4@\x9a)\x90g\x0bQ\x9b\x99[\x9b\xb1%\x85\xea\x82\x9e\x8b;\xb3\xb97\xa79\x91\x15\xa8\x8c\xe0M(\xd5\x05\xc6b\xd0\xea{\xf8_\xae\xd3\xda\x11kyx_\xb9\xd3\x9a\xf9\xebv\x10_\xc4\xe3@\xcd\x0d9_e\x0eo\xce\xab.\x10\xdc5}`p\x0dc\x03\x13\xebl\x04t\xee\xbbkkp\xe6\xd1\xeaB\xc0\x08<\xd3\xa7\x9b\x99\xe8\x152T\x96\x01\x02&\xdc2C\x1bQx\xfa\x0d\x0bBB\xe5\x8b\x96[\xd1z\x17Ni\xea\x96\xa1m\x9f.\xa5\xce.\xed\x9d\x92\x9e \xe5)\x12\x9e\xb0C\x89\xecIbMB>a\xc2\xc4\x8089\xa0g\x12&N\x12\xa8\x13\x05N\x0e\xe1\xf9;\xa7\x9d\x10\xf3\xe6\x0e&d\x0e\xa6$\xcf\x05:Ah\xca\xe4\x9e\x931x\xa6\x9e\xf7\xcej\x0e^\x16\xf73\xb7w\xdf\x92&B\xe0&\xef\x8e\xf5N\x06H\x13\x02\xea^%M\x0ch\x93\x03\xfa.\x9d\xb7[\xca\xfe\x9cswz\xf7&mg\x92\x88\xe0\xdb\x1b\xc0\xdb\x93\xb3\xf4\xe9\xf3\xde7\xdf\xf9:\xb3u\xe4\xa8_`\xc5i\xc3\xe5\xafP`\xd3\x1c\xe6L$|\xa4\xdc\xb5\x0ey\xe2\x91$>\x19\xe2\x91\x1e\xde\xa5%l]\xaf\xac\x98\xde\x891\xc0\x0f\xf1\xb7\"\xf2\x84\xfek\x08y\x00`o\xe9{\x06\xa0\xe1\x1eJ 9=4\xba\x07\xb7=\xdf\xef\x9d\xf1\xf9f\x08\xb7\x06\xdf~\x04\x82\x8b\x80@.\xf0\x9f\xc9\x1a\x18\xfe\x18\xc2\xec\x808C\x00\xa2'\x86\xb2n\x06\xfc,b\xc0G`\xa0\x13\x19\xa8\x84fy_\x08\xbe\x17\xaf)\x980\x01\x9a\xe9\x97l\xf9f\xf4h%\x95\xf7\xe9\x82\x06\n_\xf8\xf7\xb3\xd7\x98=\xc7\x8c\xe8\xc7\xc0|\x8f\x1c4\x90\x9e:h\xf0=x\xd0\xe0x\xf6\xa0\xe1\x17\xa0\x17\xfb9\x84\x15]/b\xdfN*\xdb\xd3\x08\x0d\xa4\x07\x12\x1a~Qb\xf9\xd9\xcc\x8ai\xc8~t\xfe\xa3=\xa2\xd0\xc0|J\xa1\x81B\x8c \xcf*P|\x9b\xbc\xc0g\x81\xbe\xb8\xd0\x80\xbd\xb4\xd5\x10\xd5\xf9\xa8\xce7\x10\xd5yg\x0fS\x8f\xff\xa8\xceGu\x1e\x01\x12\xa1\xa3:\x0f\x14REu\xde\xabgEu\xbe\x86\xa8\xce\x87\x13\xcb\xcffVLQ\x9d\xefA\x88:\xef\xf3\xe8\xd4_\xb9\x19\xc4}\xde9\x1fVk\x98\x84\xff\x98\xd57}\xcb8\xe9 \xf6x&\xb7\xb9\xfd!\xb6\x06\xdas\xec\x1a\x9d]Mr\xa9F\x9e\x07\xda\x1a&^\xf6\xab\xd7p\x8c\x01\xf0\x1e\xdak\xa0?\xb7\xd70\xff\xb8g~\x80\xaf\xc1\xf5\x0c_\x03\xf1\xa0\xa6\x1e\xd0\xbf\xa0\xaa\xe8y\xaa\xaf\x81\xa3\x0b\xf8-\xcf\x06\xa2\x8e\x18uD\xdf\xd7\xc0X(\xe0/\x16p\x17\xec\xd8:\"%E\x80\x06=Sw\xa2\x00\x0d\xdet\x01\x1aX\x8c\xc5c+V\x02\x01\x0d\xec\x85\xa4%\x13\xd0\x10\x9aR@C`b\x01\x0d\x81\xe9\x054\xf0\x93\x0ch\x98\x94j@\x03\xe5\xb9Z\x17\xe6J;\xa0\x81\x95|@\x03\xd9s\xdb\x076\xdf\xb1\xc5\x071)\x81\x86\xe0\xe1\xd0l5\x1a\xbc\xde\xba>\x04\x8f\x89D\"\xae1t\xce\xf4\x05]|.k!g\x8c\xac\x84\x06NL\xddd\x07\x94\xb4\x06\x1a<\xc9\x0d4\x10d?E\xe2\xfb\xd2\x1dh\xa0\x9d\\\x84S\x8b0j\x0d\x94\xb1k \xcb\n\xd6&`l\x00\xefck\x03\xe4\xc9\x03\x8b\x00\xe0\x7fF\xd9\x07\x16!\x80G\x0c\xa0<\xb8\xec\xc3q\x87\xc39\x059\xef7 \xe8|/<\xfb\xe0s\xaf\xf7\x81E4\x8e\x02Oz\x19\xda\x87#\x8c\xc5\x9d\x8aA\x03q;Q7\x12Q\x8e0&K\xe6S\xa2\x04!N\x18\x18\x93\x06\x9e\xec`L\x1e8\x04\x00\xae\xd48\xde@\xe8\xf2bVi\xc1\x91\x15\x1cI\xc1 \x14mgB\x88\x8c\x98}\x14\xb4\x88\xa4\xe6kZ\xf7\xee\xae\x1d\xc9\"4xzqc\xf7\xa7\x8f\xd0\xe0\xd6\xc4\x1c\x1a\x98Wx\xf8E\x86WB\x92\xe8L\xd8\x8b^y\xe8\x9d\x0c\x90&\x04T\xe9G\x9a\x18\xd0&\x07tY7o\xb7\x14\xc9\xc6\x91i1}\x8d\xabO\x9a\x84\x9a$3~\xc9\x98\xc6\xc0|\x19#<\xad\xb4\x0b\xcf\x9a\xf1C\xc7\x12?\x92\x0cc)0\x8a\xbc\xf3\xc5\xd8\xa1\xd2\x06\x97.H\x84\x9cu!\xcc\x12\x8c\x02\xceF\xf1m\\\x14\xf6\xc5\xa3\xc7\xa1\xd9\xe3\xcc\x86\xd3\x1dG\x9cqc\xcbz\xb1c}B\xe0Qd\xbex\xb1qd\x18B\xc2\xe1I\x8eR\x19\xdb\x81\xfdX-g\xb3\xe1\xf6\xb2DZ18l\xecZ\xf1r\xc7\xe0Tpz\xb0\xac'\xab\xfd4\xb5\xf8\x9f4&B\x0d\xbe\x91d\xc3\xbdGN\x81f=\x00\x9d\xbe\x1f\xd4\xcbc\x8f\xf9q\xaet\xafg\x7f\xc4\x0e\x12\x9bCEo\x8d>\xa1\"\x98\x16\x17\xe3\x8e\x80\xa1\x8e\xc1\x16\xbfBm?\x8e>\xa1\xb6t\xc4\x8ePQX\"?\xa8\xcd\xddq\x1b\xf6\x08\x0d\x1a\xfe\x89\xf1\x15\xa3\xd3U\x9d\xf4/\xdbs\x8dp\xc2Z\x02\xf79Rn\x1e\xd1d\x0d\xb2\xf7\x1d\xf9\xcdw\xae\x8b\x86\xfb\x82\xe1\x08\x96\xf7\xaa\x97V\xd5\xc0\x805\x04~*j\x9f\xde7Q\x85@\xf0\xd1\x82\xd7\xe7R)\x0cx\x03\xd4}*\x86\x01{\x10\xbac)f\xaf\x1d\x8d\x87\x8f\x93\xd0\xd9n\x00\x9e\xa0\xf0 ;\xc3\x1e\x1dB\xe6^\xcbE\x97\x14\x9c\xe3\x1c9xG\x0fv\x95\xa7\xf9\xd9\xa9\xfa\x18\xa0\xdcY\xdd\x814^r\x81\x9fd\xc4\xf0\x18g@\x8c?L\x9a\xc4\x89\xe8\x08\xfd\xaa\x94\x01G\xb8sh\xf7\xde@\xdfP\xc4\xd3T0\x03\xb4`\xe4\xd01\xfaB\x8cC\xf1\xda\x03\x87C1\x12\xc2\x81CQ{\x82|C\xd1\xd2Bw\xfd\xc1\xbaa\xfdOT\x11\x0d`A\xb7\x01J\xda\xec\x87\xa1%@\xd6-\x95;\x08GA\xb0\xf1\x14D!\x9e\x82=p\x05\x82\xea1\xe2n\x1b\xab\xd3\xc6\xb3D\xbe\x05\"\x85p\x12\x88\xe7K\x9a\xc5\x8bPd\x86b2\x83/\xe9\xe1\x96A\x01\x96\xbd\xf5\xf7FJ\xd2b \xc9Q\x8f\x84\xa5\"p\xf9}\xa5\xe1\xf1F(2z\xb2L\xa7w\x8c\xb1B\n\xd1\x80A\xf7\xd5\x97\x15\x14\x88\x04\xfe\x0d\xd0\xa1a\x80\x96\xc0?T\x0e\xe0\xbb\xdf\xe6<\xb6\xc9\x9fX{ \xd6\x1e\xf8G\xaa=\x80\xc7\x8d\x05(\xa53k\xdc\x0e6\x9e\xa0B:\x19\xd8\xcbY\x1e\xbe\xf2\xb0\xee4\xf4\xf33\xad\x9beI\xab\x86\xb1+\x81Y\x83p\xfb\xc2\x03\xacH\x87\x08q{=\xe6\x99\xd7\x1d\x8c\xd8m\xccb\x8e\xdc>\x8c\xa3\xc8\x91\xbd'`?\xda\xae2\x13v\x8f3\x03\x0f\xd5A\x00\xbe1\x80w\x1c\xe0\xcf\xac\xe3\xddl\xd0\xe1\x0cg\x02\x1bg\xee\x9c\xb9\xba\xf1;\x11 \xdc\x91\xe0\xa2 \xd1\x99\x00S\x1c\n\x16|\xe4\xac7T\xc7\x02x3\xdcx\x96\xcb\xf5D\xd9\xbb\xd2\xbek\xb9=_\x0d\x19\xb5\xeb\xfe@\xc8H3\xc3\xae\xbb\x0f\xbb\x02\xd1\x1c\x03\x94\x19\x01iV\x00^\xd3\x0c4\xbd\xf9\xcc3@\xe0\x05\x03\xfeW\xbf$\x92\x02\x8d\xacD\x93M\xe7C\xfbk^\xbf\x03\x03(\xa3\xf7\x8e\x9a\xee\xcc\x00\x7f\xfe\x96\xa9\xc3\xf1:\x0e`\x86N\xe6qt\x00\xd9\xd9\x013\x8c\xd9\xe7\xf8\x80\x19\xfapgO\x99\x8a\x9d\xe0\x10\x81\x19\xba!d@\x99\xda\x05\xcdQ\x02$g L\x1e\xcfL\x8e\x13pd,\x99\xa0\xd0\x1e\xf5\xc0wd\x1d\xf1\x9f$\x1d\xe4h\x86\x91x\xd2#\xe0\x9f\x15\xc4\x93\x1e\xff\xd0~\xd2\xfb\xb2u\xe8q\xff\xb2\xe5\xddI\x8e\x1b\xa0\x13\xd9\x9fg\x83\xeb\xc4\xc1\xda\x10rj0\x9d9X\x13w\xfe\x8c \xa7\x0e\x00\xedm\x0c9CF\xcf\xef\xe3c~\xeb\xefd\xbf\x10\xd09\x81\xb8\xd9\x08\xf9.\x98\x1d\xfas[x\xfdE\xc0\xef\xd51\xcd\x99}G#\x94\x96\xd0\xc9p\x1f\x12&\xcb\\\xe9$\x1cI$\xacb\xca\x11H\xebx\x94\xe8\x12\x99\xc7\xf2m\xdf\x83\xab\xd4\xf3\x08q&YOx~H\x98\x0cP&\x04~\xa3\xbe\x86\xf9:\xf4\x8bU\xb6\x07\xc0\x8a\xc9\xf3\xdc\xd0\xe7\xd2\x02\xda\xc4\xfd\x1a\x12\xc1c\xa0abo\xb8\xab\x0b|\xac\xe9f\xca#\xde\x9d<;\xca\xbb\x9f\xfc\xbb\xc9\xbb\x97\xbc\x13\x00\xff$\x80\xb6\x8b\xe6\xe9\xca\xb7\x7f\xe6\xda=\xce\xbd\xe3\xdf9\xde\xc9\xfav\x0dq\xcfL\xea\xc7\xe7q\x03_\x07\x18rKR\x00\x14\x0f\xd6\xde\xfd\xec\x1f;Y\xa7\xd6q\xb7\xecp\xc7\xcc\xad\\j\xd9\xcf\x8e\x9d\xec\xda\xc3\x8e\xdd\xebYw\xe76r\xee\xd5p\xc4s;\xb0]|IX\x9b1\xc3{\xb7\x14\x13\xabk\xfb\x90\xd9\x1d\xb9Z8\xdb\xf6\xaf\x0d\xb8\x82\x1d\xf8\x12}\\')\xf8\xfd\xf9YRT\xe7\xc6,\xa1g6\xda\x03c\xce\x1f\x18nt\x8b\xa1\x91\x06#b\xc8\xa3C\x8b\x01e4\x15]\xda\x939\x93 \xef\xfcP\x1f<\xc5\xf7n\x152v\x11c\xf1\xb1\x93d>\xea\xecF}\xe9\xa1\xe8|\xd1\x87A\xbe\xf2\x86z\x03t\x1e\x1fy\xb0o\x1cyl\xe7\xf4\x89S|\xe1\xb8\x0f\xdcBf\xcc\x04n]\x11\x9b\xf0\x1c\xfb\xb6\xbd(0\xfb\x86\xc3\x87\x1d\xc0\xbd\xf3\xbe?\xf1Z\xaa\x9d\xea\xb8[\x15wX\xa4q!\xd7\x05\x9f\xa6x,O\x93\xd7\xc2l\xb5,\xbb}\xc7^\xce\x19\x8d\x86\xe6#\xb6\xf8\x86\xb9\xdd9\xfd\xa9\\d\xd3}\xbd~\x1f/wL._.\x17\x17\xee\xb3\xe5b\xf1\xf8f\xb9\xe8\x1c>X.*\xbf\xaf\xd5\xedc\xe5\xf57\x83/u\xe8Ce(\x1e\xb3\x1c\x14\x88O\xd4.\xe1:Hz>\xd0xB\xf4~\xfa\x07G=\x9e\xe3>\xca\xf0\xfa\x12=D\xb1\xfb\x0e9>C\x86\xaf\x90\xe1#\xa4\xf9\x06\xd9>\xc1\xb9\x1fy\x91\x1cy\x9ee\xf0p\xe6\xf1\xf2\xc0y\x1csD\xec\xc8\xb0gt\xc0\xb9\xd2\x9d\x85;\xdc\xc6\x19\xeb\xfa\x8e6\xcb\xdd\xf9\xa7\xf2\xeaB\x12E\xb5\x1b\x91\xa7\xbb\x9d\xbe\x82\xf3\xd3\xef\xdf\xbey}\xf9\xd3\xf9\xf7\x97\x17\xff\xe7\xec\xcd\x80'\xc7\xbf\x9f\xbd\x7f\xf3\xe7w\x17o\\\xbf\xf7\xb6\x0b\xf6\xc5\xbb\xb3w\xe7/\xf4>iv\x86k\x1c=\xe2\xfe\x97!no\xaez\xd1\xe4\\\xe5\xa2\xe9\xb8\x7fS\xf7\xdaDdw\xaaK\x1b\x8aZ\xe7\xf7\\-z\xe9\xfaN\xcf\xe29\x9c)\x85$\xd9\x96\xd8\x824\xa6\xb6\xeeb8-\x19\x81)\x97\x10S(C\x15A\x0d\x9f^]d\xb0\xa5,fN\x1e\x9a\xf9\x8c\x9a\x13\xed\x84\x0e\xe3% \x87\x9d\x15\xce\x8d3\x9c\xc0\x0d\xd1$\x1fM\xf2_\xb2I~\xec\x01fH\x9d\x19np\x16v\xb32\x9b\x9d\xd5\xac\x8c\xe6\xe4\x06\x07/8X,\x0c\xe5\xbc\xcc5\xc3\xbb?\x03\x1e\xa6b\xe1\x9b\xec\xe3\x19\xcb\xdd\xbc\xa2\xbf;\xfc\xff\xd9{\xf7n\xb7\x8d+O\xf4\x7f\x7f\x8a=\x9a\xbbZR\xf7\x11O\xe4t\xba\xef\xd5L\xb2F\x96d\xfbt\xdb\xd2\x19=\x9c\x99\x95\x95E\x15\xc9\"\x89\x16\x08\xd0@\xf1<\xba'\xdf\xfd\xaez\x01U\xa8]\x0f\x00u\x1cg\x9a\xf8#\xb1x\x80]\xef]\xfb\xf9\xdb\xac\x93\x9b\xbc\x0d\x0e\xd5\x91\x98\x0c\x85\xbfc\xcbQ\xdew\x1c\xd5#\"OA\xaaL\x05^\xb9\n2\xc9V\xde1!\xf2\x95\xef]L\xc6\x829\xb8\xb9\x03s\x89\xfc.\xe0\xf1\xea\xcc$\xae\x89d\x04\xa3\x9bo\x17;\x03\xe6\x0e\xfeh\x9b8\xe69u\x83\xfaq\x90\x8e\xd1\xf5\x9eDQm\xe8\xdd\x94=\x86\xa8\xb9\xa9\xad\x874P\xa1\xbe\xf6&\x82\xd5\xbd8\xb1]\x7f\xa1\x10Z\xee\xbd\xd8c\xc5\xba8\x12&\xb5\xdc\xde\x04k\x9b\x14\xd8\x9e\x9a\x87\x9c\xb4m\xbd.\xc4G\xe2\x90h\xa5\x98\xde1Z\x0dP\xce\xa7\x8d\xe6\xff8\xa3\xe9h\xf3-\xce\x95\xe9\x8d\x1e\x96\xe1\xeb[\xc0\xbb\xaa\xbc\x97\x03\x05\xe9\x96\xa4R\xbf6\xc8)>\xd6:\xbd^\xe6[\x8dP\xff\xc7\xaf\x8bA\xcbZ!9|\xcfb\xf0\xc77\x1b\x839\xc0\xbb.\xba\xdd\xd0cC[Z1a!i\xe8\x0d\xff\xd1\"%~\x11\x0e\x16\x03U\xbf\xdf>\xc65a\xdd\xd4\xca\x07\xbf\xe8|\xcc\xc9\x176\n\x0e\xe0Y!\xcb\xe5my\xceS?\xc3\x0f\xd9\\\xcf\xb8\xe1\xb2F<\xe29<\xe1\xa8\x07<\xe4\xf9^\xd7\xed\xa1n\x17+\xd2\xd2EUo\xe8\xe2\xe6\xf9\x8a2\xf2\x9c\xaf\xd0\xb6\xd8\xbd\xa7\xed\x91\x8f.y\x99\x0eEU\x1cN\x87\xe5\x8e\xb4\\J\\\x87\x0f\xd5\xb19U\\\xfe\xfbB\xe9q\xd9\xd05\xadbw\xbd\xba\x15\xd4\x87\xd0R\xc6\x05\xc8v@\x8f3\xe1\xe6\xc6\x0dy1\x88\x0dl\x82\xe6`-y\xbb\xd1?\xf6>\"}\x06\xe5W\xb0{\x7f\xfd\n~>\xd1\xe6>8\xa1\x1f\x18a\xa7v\xf4\x84R\xd2\x94\x05m\xd9\xb2euC\xc7E\xffY\xe7`\xfa\x97s/\xdd\xe9\xf8\xe9\xfd];\xe5{k\x89\xf9\xf4\xd3\xb1+\xdc\x8a5\x93NA\xb1\x98\x83\x05\xd6k\xfb\x9a\xae_\xd5E\x95\xbc\xa8\x1bZ\xd5\x87\xe0p\xc8\xa1>\x05\x0f\x03\xce\xbdUG\xba\xf1\x11`\xf5\x17ZI\xf5\x90\xc8v\x8bJ\xf0\x07\xc1F\xf8O\xeb\xe2@J\xd5`'\xd5\xbf\x15\xb2\xfbG~\xd3\x88?\xc0\xb6\xa0\xe5Fh\x08\x15oE9'\x8a\xc3\xb1\xa4\x07qQ\x08NxjY}\x80\x03e\xfbz\xa3(\xf5\x1e)h\xe8\xcf\xa7\xa2\x91w\xf8\xae\xde\xd5\xc7\xa6f\xb51\xa7\x9b\x82\x0fpu\x12\x97z?\xb7%\xdd\x89\x1e\xab\xff\xaa\x9b\xf7\xf4\x964\x9b\xe4\xd9\x1e'\xf45\x06\xf1\xfe\x95\xbcV\xb8\xc1\xfa\x9b4\x10\x19z\xb8\x17\x82\xaf\xfb\x05\x92\x8c\xbbC>\xf9\xf6\x88|Rv\x8a\x7f\xe3{v\x89)\xcb\xc8X\x10\xbd$\xeaKq\xb87\xfa\xa3\xc7\xad\xfeo> r/\xc4v\xe85i\xc8!]\x92\xe1\x12\xd4\xa9*\xd8\xfd\x92\x11G}\xb0\xd6\x93\xf3\x98egt\xc17\xe6`\x03\xf8\xb5\x83\xd7|\x1e\xd6\\b\x94k\x86\x11\xefWp\xd3\xbd-vB\xd1Be\x06g\x94u\xb5\xa3\xc2\xf2\xb4\xb1\x8b\xf1\x889\xbe\xbb4\xe7 \x0e\xf5\xe6T\xd2\xc7\xad\x9aN8\xd0\xf5\x9eTE{\xd0B\xeb\xaa\xaeN\xed\xc3\x0d\x14\xa3\xfeW\x1a)?i\x9b\x86\xdc\nN\xb4\xa4\x15Y\x95\xd4\x19\xe9\xaa\xaeKJ*w\xb7\xcb\x8dfG\xae\xc8\x00\xe3\xa3\xfc\x8b\xbe\xb7\x90N\xc56\xf1\xff\xe4\x02\xcc+\xbd5\xaf\xeb\xba\x1c-\xaa\x1c\xeb\xda\x91\xb8\xce|\xf3\xd7\xc27\x9dA\xf2\xe5\xea\x86\xd41%\xf1\xf3c\xfeCQa\x8abw\xd4\xfc\x1b\x86\x8f\xc4\x12\xac\xf8\x94\xeb\xbdi~}i}\xae'\x89\x8b\xd3r\x94I{\xb6\xe7\xfc\x92\xe1\x8f\x17\xb1\xe5a}`\xc7\xdby\xebf\xdc\xbaj\xc5\x06b\xbc\xfc\x8d\xac\xd7\xcdI\xc7U\xf4wyHx\x08\xef\xa3\xf4\xed\xec\x90\x98\xbe\x97?\xd6\x8c\x94\xbf\xea\x0d\x1d\x0d5\xf2n\xee\xe1\xfdn\xbe\x8e\xa5v{\x12\xbb=\xfd\x95O\xc8\xd5\xec9\x8c\xf2\xf1\xf6Z>\xf8\xc1L\xf84\x9e\xb1?\xf9\xa8z\xbb\xb9\xf8\n\x03\x06\x9cs\x86\x11r\xeaT#\x7fI?\xdc1\x1e6U\xb6\x97O\x9a\x84\x8f\xf4c\xc8fHYFYM\xddE\x0c\xa3IWy\xcf\xe0\xf9R\xc9x\xa9\x88\xf5\xb2\x85\xeb\xd3Al\x1e{\xd9G\xdc$\x18\x17\x9fr\x9d\x98t&\xde)u\xd3G\x07\x8c\xbePfF'\x85T7\xc3}`N\xbd\xf1\xb3q\xb4\xa4\xbe&g\xa5\xda\xf1IK]\x0cl\xf8\xa3W\xc2$2y\x19\xfe\xa8T\xc0\x97\xf2\xd6\x1c\xbd\x16\x96\n\x193f\x0d\xa6f\xf8\xad5\xe5\xfd,\xeb\xbf\xb2Z\xda\xb5\xc7M\xb4g\x80\x13f{@i\xec\x94Kuy\xf4\x04\x1f\x0ds\x8e3\xe6\xa3\xab\x82\x8b\x9f(\xa3\x8d\xf6\xc5\x18\x1a\xb7\xb90I\x11\x04\x1e\xe3\x10\xf8\x19u\xd8H\x14\xf80&\x93d5\x18\x81\xdf\x94\x02\xd3\xcd)\x107\x1eA\xc6 \x18iH\x1a\x90\xab\xea\x07\x9a\x81\x88Q \xba\x19\xf0\x1a\x96\x90\xe3\x12<\xae\xea\xa0*{\xd4\xc8c\xd9\xf1P\x111\xdf\xb6B]\x1ayF\xd7\xdd\xa7\x9es\xda\xbf`\x9dU\xe3g\xeb\x96\x81\x86\xaeiqC7\x93\x0f\xed\xb07\x10Pir&\xddxU\x99\xa06\xe2Wc\x02\x9f\xc5T\x98\xc9b\xa1\xa7{\x98\xfa2GVt\x88\xf9T\x974\x01R\xb9\xa2\xed[0\xb0\xb9\xd3/@\x84\x88q\xc8F\x9d\xb1\xd7\xc6+W\xd5\xb6\x1e}\xd2\xf8\xbf\x93}g\x83=2\xfc\x16\x97\xf0\xba\xd7\xb4\xdc\xa1\xcf`K\xcb\xedrUW\x9b\xe5/b\xd08+S\x19\x95)g\xed\x06^\x8brkh\xe1\xad\xadZ\xe1\x0c\xf5\xbc\xe4\xbf\xf2%\x9fw\xe5\x06\x9c\x0cQf6\x81\xb3\x0eIM\x16b\xde\x9dX\xcbH\xb5)\xaa]fsm\x92\xe8\xe1|\x0bg\xb9#\xf98y\xba\xf7+\x97; 8%\x81\x8di\x9aK\xeb\xfe\xaf\xf0\xe4T=\xd3:D\xf5\xd4\xdd\\fG\xf9\xa1\"f\xecjE\xef\x8e\xb4j\x8b\x1b\n\xac\x06\xd6\x90\xf5\x97\x0b eY\xdf\xb6\xd0\x8a\xe9\x80\x96\x08\xc7\xe2zO\xd7_\xe2\xd6\xb3\x84\x935\xe1\xbc#\xb31\xf5\xc4\x7f(\x05\xe4\xc8\xe8c\xde\xca\xef\x1e\xf6F\xeb\xbd2G\xda\x14\xb5\xc7\xcb\x82\x1e34\xf6O\xfd\xa9!k\xe6\xa87\x93\xee>{\x1a\xdf\xdc\xd0\x8a\xd9\xe1\xc6\xfd\xde\x12\x13\x06\xf4Fa\xa1\xf5\xcf\xf7\"\x94\x91\xef\x02\xbe\xc1\x8au\xc1\xc4YW*\xb4\x08\x94\x84/\xf4\xde\xfe\xe8\xe3\x9e\xbf\xdfBE\xe9\x86n\xf8f]\x93r}* \x13\xc1\xe4M}l\n\xf1\xdf\xf2|\xd7[h\x19\xf9\"\x11\xda\xbe\xd0\xca\xd6\xe6\xf9^3\xe5\x17y\xfaIC;e\xbc\x02\xb2e\x94\x1f\x169\x8c=i\xa1^\xafOMC}\xee\x06\xb5AlII\xfd\x16\xd6V\x8fd\xa7\x18\xdc\x0b\x9ct\xff\xc2\xc0t\xd5\xfd\xac&O\x1f\xa9Iz\xb0\x80\xd4\xf1\xe4\xe8![\xce\x9b\x17\x12\xda?}+\x9a\x0b\xf0\xffd5\xac\xf8p\xdaV.\xed5\xd9\xd1\xf7\xf4\xe7\x13m\xd9B\xfe}@D\xda5\xf9\xe7\x9c\x1c\x9f\x08\n\x87\xbae@\xb7\xdbb]\xd0\x8a\x95\xf7\x0b\xb8\xe2\x1b\xab,9mz8\xb2{(\x86%\xb9\xd8\x9e6T,|U\xc3\x81o<\x05\xb7cn>$ ':)\xc8)\xf4!\xb4J\xc7\x05\x9f\x0d\xf1\x1f\xd5\xe9\xb0\xa2\x0d\xdf\xc0\xaa+F\xba\xa0\xd3\x7fs\xa2\xd6|\xe3/\x05\x91\xe1\xddtKZh)\xbb\x80\x82\xb5|\x1f\x9e\x04\x0f>Ur3m\xa0\xe6\xf3p[\xb4H\xe0\xad\x87\xbb\x0f\xb8\xe8\x04\x96\xae(\x8c\xe0\xe3\xdd\xa7/\xd7\xeb\xd3A\x1c\xfd\xcd\xab\x81\xaa\x91\xc0\xc8\xcf\xda\xc9\xaf_;\xc1\x07\x18\xde\x00\xd6=\xd4\xbf`\xac\xb7\"3\x14\x82\xbe\xd0#\x03\xc2g\xaa9U\"/A\x1c%\xda\\\xc0\x9aT\x9c{\x18\xb7\x02\x03R\xdd\x8b\x98\xfa\xe4\xed\xea\n/\xc9{\xf5l9\xf9\xdb\xde\xa8S\xa5\xf8Nv\x97\xf4\xb2\x88\xedI{\xb5\x17\xeb\x92\xf7\xa8_fE7\x05zC\xba\x12\xaa\xf3md\xa6'\xc9\xa3#%\xd1L2\xe8|\xe9S-e\x9f\xa6w\xf3\x80>SK`Q\x0eT\xdeY>E}n\xa0\x91F\xa7\xde\x11\xd3\xb7q2\xcf\x0db\xda\xd1j\xfct]R\xd2ri\x8c)\xd4\xa5\xcf\x92\x9aN=\xfc,]\x93\x0c\x8e\xf5Q\xf1w\xd1@\xd1v\xb2\xc7\x85A\xae\xe0\x8bk\xd2\x17G\x85n\xa0\xa5\x9c.\xa3\xe5}\xef\xba;\x1dw\x0d\xd9\xcc\xf2\xff\"\xc0\xc1^\x03\x8d\xdf\\R\xa1E\x9f\x0e\x97\xb7\xc5\x97B\xfe\xcfuS\xd7\xdbg\xf5V\x12|\xf6\xed\xcb\xff\xf9_o\xf7\x84=+\xdaglO\x9fU\xaaE\xc2\x9e\xb5\xe2\x85cS\xafJzxF\xaa\xcd\xb3}}\xfblM\xaag\x05{\xb6\xa2\xcf\xb6\xc5\x1d\xdd<\xc5V\xf2\xc18$\xba\xb4\xe2\xeeo\xa9\x12\x1b\x0f\xe4\xae8\x9c\x0e\xe2\x90\x8b\xb0!\xa1\xbawx\x81\x9a}\xca+lM\x86\xa0\xea\xfcYQ\x03EP\x80\x15\xb6E\xb5+\xa9f\\\xd8\"T\x1b\xbd[\xb6\xa4,\xf9\xf7\xdb\xbaadU\xde\x0be\xbe\xd1}S,H\xb1p\x84\xd2k\x89=\xc3/\xd3\xe7\xbf\xf9\xc7\xff\xf7w\xff\xfcO|O=\xff\xf1\x1b?\xe3\xd3\xb5\x12\xba,&&.~\n\xfb\xfa\x16n\xa9\xdcO\xd4*\xa0p \xe5\x96\x92\x96Tk\x8b\x13v\"\xd9lV\xa8@\xa5\x96\xfcS\xefV\x98Tn\x0c\xd9?a\xb3V'\x88\xaa\xf9i('\xb1f\xd2P'\xb0\xa0\xa4\xa9\x8bw\xd5\x8c\x8f\xe4*\xe6\xa9uj\xbaKu\xe6\xd4\xd2\x16^~\xf3\xea\x8a\x93\xe0\x9fW\xe4PT\xbb\x0b!\x02\xbd<\x14U\xcd\x7f\xb1\xefi\xbcP\xc2\xf8\xc9}\xb8\x9a\x05?\xc9\x1e\x0eoQ>Sb\xac\x06\x0c\x82\x1e\x8d9@\xb2Z\x17\xb3GwS3\xba\xec\xf0=Z\x15w\xe5$\xe8\xeb'i\xdcS/\xd4`_\xf8\xfcl\x8b]\x07W\xb1-\x9a\x96)8\x00\x84\xd6\xe6\xc4\xbb(u\n\xec\xe4\xdfX\xb8&mo \x95qg\x0bx- \x88\xeb\xb8=\xd2u\xb1-\xe8F\xb5w\xe1aJB?-\x1d\xb3#\x7f\xda\xd3\xaa\xa5?\x9f\xb8^&i\xb4\x17\x08\xa4\x89d\x94\x9bZ\xeck\xb5!\xb0\xce\xf3cc\xa0\xb2\x08\xa4{\xe4==(\xaet\x14\x1b*\xd5\x10\xf1\xf1\x02\xae\x9b\xa2n\x84\xd6\xccG\xa8\xc6%\xa6\x05!4\x9c\xa8\xaafX{+*\x82\x029\x0f%\xeb5=*`X\xe3\x94+\xd1\xb0\xa2\xec\xb6n\xbe\xe0\xb2\xc0;\xce6\xd5:\\x\x17j-\x04V\x0d\xa4\x83-\x88qz\x8a\n\xdep\x12\x9b\x9fjF\x9d\xe2\x1d \x14:mtg6,\x8fXT5\x02I\n\xf9\xfa'\xda\x14\xdb{N\xfcM\xb7(|C\xec\x8a\x1bZ\xa1r\x99\xdb\x0e\xab%\x04\xde\x9e\n\x98\xa0cm\xc1\xae\xc8\xfd\x8cP\xban\xb8\nG5\xe4\xd8\xc2\xcfn\x9c3\xc7\x99L\xcf|\xe4\xe1\x82\xed\xa9\x12&\x08R\x16\xec^\xef\xfc\xb5\xee\xf0\xcb\xbe\xc3\x03b\xdf\xf4H/W\x15\xa3\xcd\x96\xe8\xdb.\x10\x131\x08\xd6D\xf1,:\x13\xbapv\xf09\xb9\xbb\x1cj\xd1}\xf0\xf2\x02\xc3\xd4\xeb\x07\x9al\nH\xe4\x8bA\xd3\x8e\xcd\x07\xfdk1\x99\xefy\xb9\xdc<\xee\xa6y\x99Ap\xc0\xd5\xa6s3y\x94\x0cR~.6\x8d{\x0d\x87m\x10\x1cp\xady\xdcj\n\x97\x1a\xf0$\x83\x9a\x87;\x8d\xe0J>\x1edPs\xb8\xd1|.\x84r\x1f|\xa7\xcf\xe36\x06\x7fQ\xf4,.\xe3\x1cy\xc3>\x91|\xe6\x11mj\xc4\xf9\xc6\x0c2)\xf6\xa4\x04;\x92c?\xca\xd0-\xaf}(\xd9.4\xcf\x1e\xe4\xacX\x07K6r\xd5PH\xb5$+\xa5G{\xf6\xca\xb8~\xf9\xd6g\x8cKY\x7fH\xdb\x03\xe0\xb3#f\xeen\xd0n\x98\xbc7`\xf6\xfe\x00\xd4V8ruC\xf6\xc1 \xf3\x16\x16\xa7\xc6\xda\x03\xf3\xd9\x02\xc3v@\xc7\x06\x18\xb6\xff\xa5)\xfe\xc9\xa3\xc7m~Y\xed}\x1e[\xdfT;\xdf\xaf\xc8\xc6\x97\x9dC9\xcb6\xcf\x9e\x07\xab\xa1\xe65\xc6\x96\x97\xc7\x8e\x17\xb7\xe1=\x80\xfd\x0e\xb1\xdd\x8d`M\x01{\x9d\xcfV\x17\x08z\x1e\xec\x03\xbf}.\xa7mn\x9a]\xce\xb1\xc9\x8d\x984\xc7\x0e\x17=\x05\xa7\x80\x026\xc3\xf6f\xdb\xddF\x8c Q\xa7\x84\x94\xb1\x8d\xbd\x9c\xe6\xea\x98\x03r\xa8]m\xbe\xd69 \xe8\xb1\xa7e\xd4>!\xa8\x81B\x0e-\x14\xa3\x87\xd8\xcf\xe6i\xa3\x90A#\x1d\x90\x0b\xdb\xccfj\xa6\x03j^[\xd9|\x0d\x15B62\xff\x99\x99\xa7\xad\x1a\x84\x12\xedb\x1d\xa3\x1e\xa8A=k\xea\x03K\xd6M\xc1\x8a5)\xcd\x9c}\xb9\xd9\xbb\xcb\xac7\x89\x8a\xa5\xe0\xdd\xd5uQq\x13\x99}-&+_!!{\x84\x92\xea_\x871B\xf5\x0c\x81\xba\x13\xa1\x0dr\x8e0m \xd2~!:~+'\x8d\xd0\x15\x9c\xe7 \xcd\x98\x98\x1a\x1d_\xe9\xb3\xe7$-xr\x1c7\x7f}yj\x9cz1^\x99:&;\x03\xbc\x84O\xef\x7f\xb8lh[\x9f\x9a5\x15+-\x0f\xfe\xa9*~>\x89\xe8\xc9\x0d\xad\x18\x97g\xe5\xf42U~\x08sM\xb6\xb4)HY\xfc\xbb\x8b\x9e\"\xc6\xc4\xeau]\xc2\xea\xb4\xdd\xd2F\x0b\xb3\x0b\xc5\x9cD\xdf\xa5\xfdMK\xb4\x84AII\x8b\xf8c\xeb\x8a\xc2\xa3\xcbG\xb0\xde\x93\x86\xac\x19m\x16\xe2\x86,I\xcb\xa0\xa5\xbb\x03\xad\xba\x92\xa1\x9f\xde\xff\xf0\xb8\x85#a{A\xdc!\xd5\x85\x12\xbb\xad\x08}\xe1T\x96\xf7\xf0\xf3\x89\x94R\xa2\x17\xf3\xa3H\x8b\x99xBZ(\x10G\xe8g\xde\xe4\xe5\xae\xaew%]\x88\xb1\xafN\xdb\x85\xbe\x96??\x95=\x16\xe4\x14\x97\\ \xd6K\x1cJkR\xd5\x95\x10\x8a\xf8\xa1p[zB\x17\xbb\xc5\x05\x9f*q9>Z<\xd2\x11\xb4Z\xda~\x8ay\xa3\xaf\xb8\x8cI\xd6\xac\xe0\x972\xa3\xfc\x18\x9d\xda\x13\xe1\xc3\x95\x1a\xc7\xb1(y\x8f\x94\x08\xb8**\xd2\xdcK\xa85~\xf2\x91\xd9\"\x82\x01\xdd\xbbM\xd1\xbb#]3(\x98\x96p\xfb\x88aF\xef\xc4R\xbd\xac\xee\x17\xf0}}Kohs!\xae\xecO\xef\x7fP\x81\xd3\x0e=NbP\xfbF>\xedzO\x0f\x14>\xf3\xfb\xfb\xf3\x85\xfc\xff\xf6\xf3\x05\xbf6\xaaZ\xfd\xf5B\xec\x1e\xce \xeb\xa3\x94x\xcb{\x81\xd2|::\xf4d\xb1-\xa4\x1d\xda\xdcH+6\x83\x039\xb6r+\x88\x1e\xb3\xba\xab\xc8%|\xbe\xa2\xa0G\x0b\xa4\x85m-\xa2\xf7_ k\xf1\xf7p\xb5\xed{\xc8\x97OW\xd3\xe9\x06!\xd2\x1c\xda\xf6t\xa0\x1b$\xde\xeb\xef\xe1e\x05\xdf\x7f\xfcx\x0d\xdf\xbd\xf9\xa8\xd5\xa9O\xef\x7f\x90\x07\xea^\xe4I\x10\xf8\xd3p;~\xbc?\xd2?\xff\xe9\xcf\x0e9\xd0)d\x95^w\xc9\x8f/d\x8d\x99zsZS.\x99\xd1\xa6\xe9\xe1\x14\xad\xde\xf4\xecW\x86\x92\x8b\xcc\x05\x1dQ\xbf\xe6g\xb5\xae\xbf\x9c\x8e]\x06\xdc\x8a\x08\x0d\xb1B\xd9\n\xf0\xa1\x88\xb6\xf7\xe4F,\xfd\xc1\xd8\xa3\x1b\xb9I\x89\xee*\xff\xef\x9b\xba\xd8\x00\xa9\xdc\xa00P\x0d\x8b\xe3\xd7\xd0m\xdd\xd0\x0b\xfd!\xa7GX\xb1*\x84\x0eTQ\xbaiu\xde\"g\x11\xcd\x0d\x1d\xea\xd7 x\x11gC\x95P\xcbky6\x16\xf0\xe4SK\xf5\xbd\xc3G\xcd\xb7\x87\xb8D\xc5\xfe \x95-\x8e\xebg\xd5P\x99L\xa0\x08.\x9e\xba+-\xfd\x14B\xda\xb7u6u\xe6E\nA\xc5\xca{3\xa9\x10\x9f\xd6ZdR\xba\xb9\x84\x8aW\xafN[h\xa8\x88\xd6\x97~s\x11j/\x1a\x11\xea\xbc\xc8\xfd\xeb\xf6\xfd\x8a\xee\n\x91Z\xe5\x10\xe3b<\xc2\\\xef\x8ft!\xf7#9\x16-\x97\xb11.\xf5A\x9c\x88V\xc9\xf9\xc2m48\xdd\xf0DA^\xc9\x04Py\x84\x9e\xc2\x01\x8d\x9eZ!\x87Y\x0cF\xe8\x1a]\xe6\x90\x94\x1b:-\xb8\xa5\x07R\xb1b=pn\x8932\xe2*\xf6\xa6\xd3\xc6o\xe9\x1f\x95_Je\xbb\x18\x17\xads\xaf\xaa\xcb\x89\xac\xea\x1b\xe4\x82\xeeLSb\xfe\x8d\xbf\x87z\xf0\xf9eu\xff\xb9\x17\xb2\xb8J\xd6\xac\n\xd6\xf0C\x13\xe8\x89\xe6\x83\xa4\xac\x07s!5;{)8\xb7R\xaa>\xef\xc9\xca\x157\xcc\xb6\xb4\xf40\xd82\xd7z\xe3\x96\xc5JtO\xf1\xd1\x16\xda\xd3\xf1X7\xe2\x06:\x92\xf5\x97\xcbS\xc5\xff\x8f\xdf;r\x1d[\xec\x94\xb8\x17n\xbd\x85\x13\x93\x0cB\x1f\xbf\x16$2R!\xcf\"\xechE\x1ba\x88\x929g\x1d\xea\xe0\xcb\x01?\x92K`\xd3\x7fsGDn\xd7\xf3\x17p\xcd\xfb\xc7\xcf\x9d\xea*1K=\xbe\xfa\x87\x7f@\xae\x81o\xeb\x1a\xb6u\x0d\xbf\x87\xc5b\xf1\xdf\x9c?\xf3\xc1\x92\xea\xde\xfd\x03\xa9\xee\x17\xbc\xb9o\x9b\xfa\xf0d[\xd7O\xddW\x16\x0b\x97\xcf\x17[x\xc2?\xfd$:\xf8\xb1~\xf2w\xfc\xdb\xa7\xf0\x1f\x08o\xc3\xbe\xff\x0b>\xf6\xaf#c\xff\x17rC&\x0f\x1e~/d\x0dNu\xc2H\x8b\xf6\xc9\xb7u\xbdX\x97\xa4m=\x03\x95]\xe0/\xcb\xbe\x1b\x1f\xb8m\xfd\xc5\xf9\xe5\xf2\x92o\xa7p\x1f>\x90\x03\xe5W\xf7K\xd9\x9b\x1deJU\xbe\xaaZ\xc6\x15\xda'O\xc7t\x0e\xfd\x1e\xeb+\xbaZ\xbf\x8d\xac\xd6\xf5=\xdbs\xe5\xcb\xa1'\xfb\xf2m]?Y,\x16O\xb1=)\xd7\xea \xfa7\xb1_\xc5\n\xa6. \xff\xe8J\xce\xd8\xeb7\x1f^\xbd\xbf\xba\xfe\xf8\xee\xfd\xd3!\xff\x06E^\xeei\xbc\x01\xd9\x04:\x1b\xff\x18\x99\x8d\xefjw\"\xc4L\xbc\xf8=\xfc\xddq\xb5\xf8\xb6\xae\xffc\xb1X\xb8\xfb\x82w\xea\x82\x0b\\\xfcMR\xdd\x1fW\x8b\xb7\xf4\xd6\xd3\xbfb+\xde\xfc/\xbf\x87\xaa(\xd1\x8d\x80N\x12\xb2\x1d\xf1\xf7\x06\x1dF>S=\x90}]|\xaa\x0e\xa4i\xf7\xa4\xfcX\xcbC7\xb5{\xd6o\x1f\x05@\xc6\xfaK\xc7g\xcd\x12\x94\xc7\xe1M \xbd\x04\xf7\xba(/\xbf\xf6mr\x8f\x11\x91\xe4\x92\xeb\x7f\xc2\xd4\xb1\xe0\xe2\xdbc.\xc7w\xb7\x12\xbf\xb1t\xa9?\xb9\xd66\xc1\x8e\xfdW\xe5\xbd\xd6Y\x1c\x85\xb2\x13\x0dUB(\xd3z\xec\xe3\xcb\xc769\xa54\xe9\xa6\xa5\x96D\xd5\xbe{\xb4\xad\xeb\xc5\x8a4\xa2\xd3w\x97\xf7\x8b\x7f\x7f$G,e\x7fW\x8d\x11M>\xe2\xef\x0d\xaf\xa0\x7f\xf9\xf0\xee\xedW\xeeL\xf3\x9f{mYJH5?UJ<\x90\x1a\x830&1\x11\xe4\xba;9\x91\x0b\xee\xe7L\xe0\x1a\xf7\x17\xfb\x05\xd0\xc3\x8an6\xfd\x15\x7f\xa1\xed\xc06)\xe3\xc2\x95i\xe0\x9f\xff\x07\x1f\xe4g\x95kkY\x84\xf4\x94-\xf41}\x81\x88\xbcd\xfd\x85\x9f\xd1^E\xda\x16%u\xb9\xa0>\xcb\xd7\xb4i\xeb\n\xdd\xbc\xca\x96!\\\x8dK1\xcf\xbf\x87\xe7.\xa5\xeeE\xbe\xdc\xfa\xbd\xaf\xa3|\x97?X\xab\x8f\xc4\xf8\x1f\xbd\x80G\xd8>\xb6\x87\xb5\x90\xbd\x7f\x84E\xfb?\x12\xfd~K\x0e\x9c\xd6\x7f\x97]\xfc\x03\xfa\"\xef\xf7\xe0\xbdX\xe7\xaf\xb6JT\xb7\xd7X\xaeP\xd1\xc2--\xcbg_\xaa\xfaV\x06\x99\xef\x05f\x83\xca\xe0\x97\xfb\xd2\xa4fo\xa7\x0b)>\x0e\xf6X\x0f\x0f\xa3\x9a\xe4\x1bGx\xd5\xc4\xb6\xb1 ~\x16\x9bX\xef\xa1}]n,\x0c\x01q\x04\x8a\xaa\xdb{\xda=\xa6\xb6\x9eMK\x90\xefv\x1c<\xe1\xa7U\x0f\xd7Q\xc4\xb5]\xe8\xcf\x7f\xfa\xf3Sds\xceYo\xbb\x01|\xc9\xc5\xb09\xa9\xe7\x8b\xaf\x9f\x7f\xdd>B\x96Q\xff\x97\xa5't\xf6\xf4\x86\xb2SS\xc9\x02\x0c\xfa\xc7N[:\x83\x1f\x9d\xc1\x8f~\xad\xe0Gv\xd2\x06\xe2\x01H\x81\xd96>S\xd4\xde_\xbf\xd2\x9dt\x90\x8fp\xe7Cv\xcfC\xd2\x99`\xa8C\xc1\xbb\xfc\x91\xa4\x9b|\xae\x04\xbf#!\x9f\x1b!\x9b\x13\xc1\xebB\x98\xe1@\xc8\xe5>\x08;\x0f&\xb9\x0e\xf2:\x0e\xbcn\x83\xbcN\x03\x8f\xcb`\xa6\xc3\xc0\x99nW\xce\xce\xed,\x98\xe9*\xc8\xec(\x98\xe1&\xc8\xed$\xc8\xe6\"\xc8\xeb \xc8\xe6\x1e\x88;\x07\xb2\xb9\x06|\x8e\x819n\x01\xd4\x0d\x80H\xae.\xbf\x99\xe7\x02@L\xfe\x13\x0d\xfe\x88\xb9?*'\x85\x85G7\xd3`\x9a\x99\xbf7\xebc\xf3\xfbU\xbc\xed\xcc\x06~\xd7\xbc\x9f\xc1\xb8\x9f\xd5\xb4?\xbc\x0cg\x9a\xf5\x11S\xfe\x1cC~\xd0\x92\xed1\xe2GM\xf8\xaeE-\xdd|\xef~\xfb\x17l\xac\x93\x0c\xf7)\x83\x8d\x19\xed\xfdc\x8b\x1a\xecG\x98\xeb\x87fN\x9f\xa9~\xbe\xa1~\xba\x99\x1e]\x97\x89&\xfa\xa0\x81\xdeo\x9e\x0f\x19\xe7\xd1\xc9J5\xcc\xc7\xcc\xf2\x03\xa3\xfc\x0c\x93|\x82A>\xdd\x1c\x1f5\xc6#\xb6n\xa79\xe4\x9d\x98\x11~\x9e \x1e\xed\x94\xf1KV\xe3{f\xd3{V\xc3{N\xb3\xbb\xcf\xe8\xee\x98\xdc\xf3\x18\xdc\xb3\x99\xdb\xf3\x1a\xdb\xd3L\xedQC{\xa2\x99=\xc5\xc8\xee\x98\xd8\xdd\xd6R\xcd\xada\xf3z\xa2q=\xc1\xb4nu9\xa7Y=\xb3Q=\x9fI=\x9fA}\xfa\xeaF\x8d\xe91S\xba\xe4\xd2\x01\x13\xe4\x14\xfb\xa3\xfeF\x98\x1d%-\xc7\xea\xb8\xa5t\xd7\x90\x8auV\xc7\xef\xf8\xbf\x92\xad\x8c\xe2[\xea\xe4\x84&\xa7\x82\xa8\xef\xf5ht\xbd1\xc5\x92N-m\xe4+b\x17U\xd2\x12@T\xa4>\xdb\xd3\xc2L\x8c\xde\x9e\xaa\xbe\x12\x95$\xecX?Gv\x8c\x86:\xb6\xa2\xbcW\xf2\xc5\xcd\xb0w\x06)RI\x15\x95\x7f\xf4\xb8\xb5\xbb\xd9}\xe2q\x81\xf4$\x15 9\x97\xaf\xea\xadL\xfa\xb9P\x19/\xfc\xbf\xb4\x8ddKi\xff\xd1$\x7f\x08;\xdb~\xcf\xb6\xdf\xb3\xed\xf7l\xfb=\xdb~\xbb\xe7l\xfb=\xdb~\xff\xaf\xb3\xfd*\xcf\xbc\x10\xf8\xa0\x18\xc2\xf6\xff\xebO\x1fD\x15\x04V\x03?3\x0d\xe7\x01B\xd6\x91\xd3\xc4\xef0\xcdw\x03\xd2\xa4v\x9fKyd\xb4\x13;]<\xe2\xfc\xcd\xf8\xa7\x96\xca\xf8\xce\xd3\xa2\xdc\xea^\x8b\x9b\x93\xe4\"G\xd4\x85\xe9bQN\xb1\x17\x86\xa2/`\xe2/\xcc\xedl\x16Q\x18\"\xe20\xe0k\x0e\x0f%\x16\x83o\x0b@ \xdb\xd2\x9fo\x19L\xf3\x88M3\xe4\x15\x97!\x92w\x99Sl\x86\x9c\xa23\x84\xb3/g\x89\xd0\x90Q\x8c\x86\xa8(\x0dS\xc5i\x98#Rc3&\x12\xbe\x03\x99\x983Dk\x84\x96\xb4\xe9x\xb31\xe7\x89\xd8\x089.t\xa3b6d\x17\xb5a\xbe\xb8\x0d\xf9En\x98'v\xc3<\xd1\x1b?\xa2h'\xb3 \xe4\x90](\x87\x9c\x829$ \xe7\x90S@\x87`\xe6\xe63\x94\x1a\xafZ\x13\x15)\x82\xaaM\x9a\xc4\x91O\xbd A\xd6\xe4Uq\xc0+\x1a\xaa\x0bM0\x83\x15\xa5\x15\x14m{\xeaq\x86\x07\xbe\x86)\xd9\xae\xa42\x7f\xd5\xaa\xd29\xdb\xf5\x9c\xed\xfa\xc0\xd9\xae>M:\xa8\xc3\x9b4.\x11\"\\\xa7\xef\xb4y\xdd\xfb\x0f\x05W\xc5\x94j\xff\xac\xdd|\x81\xdf,\xfe\xf1\x9f\xd2\x95\xfd\xb3\x8e\x7f\xd6\xf1\xcf:\xfeY\xc7?\xeb\xf8g\x1d\x1f{\xe5\xac\xe3\x9fu|\xe49\xeb\xf8\xfds\xd6\xf1\xcf:\xbez\xce:\xbe\xa3\xe3w\xac\x86\xff\xf3q\x9b\x18Yx\xd6\xf6\xcf\xda\xfe\xdf\x9a\xb6\x9f\xa4\xe4;\xea}\xc8S\xbf\xabo\x167\xcf\x17\xaf\xe9\xb1n\x8b\xf4\xa4\xb2\xa3\xaaZ\xb5,6C\x1d}\xb0>)u\xef\x0cj\x16\x8c\x9c\xd4\x80\xa0\xd8h>t\x1c\x14\xcb\xda\xc8n\xbb\x15\x0fCId\xddGV[\xeaW\xad\xfc\xd2\x16\xb6M}\xb0Z\xedS\xc2\x0e|\xd5\x1f\xd68\xb1\xa1U}H\xd6\xf1\x87=\n\xbe\x1eb\x15\xaf\xea\xc2`w\xc0\xea/\xb4Ry\xc5\xb2K\x9a\xf9\xf1\xbb\x9eT\xaa\xe1\x81\xf0*\xab\xd3p5J\xfeY\xa5\x1e\x17\x82\x81^q\x1e/\xb4\x82\xee\xd6\xb4\xf2J\xe5\x16\xb5\xe8\xb5\xc5\xae\"LT\x02l\xe8\xcf\xa7\xa2\x91&\xdc]\xbd\xab\xc5\x85\xb5\xc0\x17Z5.\xf9\x9cZ_\xf9e\xb7\x05\x16\xee\xd9\xeb&D\x9d \x93\xf9+\x8a\x16-\xfe\xf3Z\xb0\x81\xcep\xc2\x85N\xfe++\xba[\xd3\xdc\xb9\xe8\xd1\x1bY\x87\xe7PT\xcb\x8dyh\xe1\xbc\x0f\x7f\xad\xfb\xf0\xc7\xa2\x12U\xbb4\x8b\x11\x15$\xbb\x1d\xc1w\x0b\x15V\xc3\x9bZ\x18\x06\xa5UK\xd3:\x90;\xbd\xd0K\xf9\x971\xbcnX\xd4M\xf4C\x92\x11\xddx\xc9G\xba\xaf\xcb\x8d(\xd7Ww]\xe4\x13\xdb\xefY\xb8\xe2\x9a01\x8d\nR|\x85\xaf\xcd ?\xd4\x15\xdb\xb7\xc8\x91\xb2\xb6\xf8\x00(T\xfc\xb4\x15\xccX\xbc$JJ\xee\xea\x1b\xdaT\xc2\xf0g1_\xfb\xe4\x9c\x8f\xcc\xf9\xc8\xfc_td@\x8dfB\x9f\xbb\x9a\x91JNB\xa7\xe5\xe7S\xdd\x9c\x0ec\xc8Z\x1bL/\xc9\x916k\xae\xe9\xee\x8c\n\x84\xa2J\xa20\x90HUB\xd4y\x95k&\xe5iy \x9b;\xc3(]+\x0b\xd7\xaa?\xb2}C[>\xbdc:\xfa\x07\xb4\xa3|-\x1a=-\xff\x9b\xb6\xa2[\x92\xd9\x98;\x89k@\x8b\xaed\xa1\xa3\x97\xfff\xf1\xbbn}(\xab\x97\x93:\x88\xce\xa4\xd4 \xea-\xfcD\xd5\x9c\x89\x0d\xf5QL\xa9\xfc\xa7XV\xa7\xc7\xf6L\xf2^\x89B\xc6\xd6\x08\xe0\xf9\xe5o\xbb\x03QT\xcbB\xee\xc7\xee`\x08\xcac\x86`\xcd1g\x10\xb2o\x9d\xb9\xbe\x10\xa5L\xe9`\xdaM\xd1Z\x8eW\xda]m\xeb\xbf\xd0C\x8b\x0d\x10\xd6\x8f\xb3=\xad\x0eEk\xd6\xb8\xee\xd4\x845\xbf\x19\xca\x0cC\x90\x84\xd4H$g\xd3\xa5\x90y\x9f$66\xe7Xd\xfd\x05\x94\x8d\xbd\x93\x1dM\xa3\xb0(\xfck0\xa8\xa2U\xb4K\xba\xb1-U\x987\xf5w\xbf\xf1\x8cpC[\xe7\xae\x1a5@-\x91\x1ack\xe8\x9a\x167\x14\x9e\xa0\xd3 \x7f\xaf\x07hZ\xc4\xbaq\xe9K\xda\xba5\xae\xb6R\xd3\xbf\x10\xf3\x13\xa5\xebR\x13\x1d\xb3\xb7\xc3JL\xfc\x88\xa9\xa3wG\xba\xe12\xf9r2\x17\xb5\x0ei\x90\xa5\x82Ds\xea\xda4\xc4\xfb\xf1\xfd\x9d\xc4P\x1e\x96\xe3\xfd\xd3?O\x9a\xf9\xb3\x84\xf5\xb7'a\xf5{x\x92\xac\xc5\xcf)?qt\x89\x8b\x17\xab\xba.)\xe9=<\xca\x1e\xc7?\xeb\x8f\x7f\xb15\x1b\xdc\xd4T:\x10\x0e\x942%\xb5\x98\xadu\xfc\xa5\x93\xf1\x1a\xca{0\xb5i\xd3\xc4\xd37\x8e\x8c\xd9\x192\xbfy\xa7\xb6*\xc7%w\x8f\x10\x97\x98p\x07\xd5\x82(\xdf\x0d\x87\xce\xbbi\x1c\xab\x0cw\xde\xc4k\xfb \xf7\x8byf\xf5E\xce\xf9\xf5\x812y \x1e\xa4\xa3\x8a\xe8\xcf\xd1\xba\xd0JD\xf9\xcd\xe27\xcf\x17\xf0#%\x95\xec\x05\xd1\x9bO\x96\xa6W'\xcb\x18\xbe\x1dk\xf2\xfc7\xbf\x11\x82\xe7E\xdf\x1a\xef\xfbs)\x8d\xde*\xdf\xbd\xd9\xbe> \xc9\xdc\x0d\xe7\x06>EVV\xbd\xd7f\xd8\xbb\xcb]}\x03\x87zs*\xe9\"\x18L\xf5\xcf\xaej\xab\xf6c\xb2r\x9b\xc5\x0e;\xd6\xfc\xaa|\xe5\x0f\x1c\xa6\xc5\xce\xa5\x93\xc5\x931\xce\xe6\\:yl<\x8d\x18\xf7\xb9t\xf2\xd8\xb8\x99s\xe9\xe4\x94\xf8\x17\x94\xadd\x8ds\xc9\x1d\xe3\x921\xbe%%\xb6%c\\\xcb\xb9t\xb2x&\xc7\xae\x9cK'O\xab\xacp.\x9d,\x1fv.\x9d\x8c\x8e}R\x05\x86\xd4\xc1\xc7\xaa0\x9cK'\x9fK'\xc7j4\x9cK'\x9fK'G\xeb7d\xae\xe0\x90\xb7\x86\xc3\xb9t2\x0c\x9e\xb4z\x0e \x15\x1d\x92k:\xa4Uu8\x97N>\x97N\x9e\xb5\xde\xd1j\x0f\xf1z\x0f\xde\xd2\xc9\x96\x9e\xa0M\xa0B\xdf\x17*H\xa7$t\x7f\x92\xea4\xbd\xa3\xeb\x13\x17\x90\x07.\x07\x83\x98\x88\xc5\xee\xf4\xad\x96\x11v2l\xa1V'\xe4\x1fm\x13t\xe79\x17\x7f\xeb\xaf\x12T;\xa3\xd5\xc9\xf2\xa0=\x83\xeb\xf7\xef\xae\xdf}x\xf9\xc3\xf2\xc3\xc7\x97\x1f?}X~z\xfb\xe1\xfa\xcd\xab\xabo\xaf\xde\xbc\x0e\xbe\xf7\xfa\xcd\xf5\xbb\x0fW\x1f\x97\xd7o\xde_\xbd\x0b\xbf\xfa\xd3\xbb\x8fWo\xbfKy\xf3\xfa\xe5\x87\x0f\x91v\xdf\xbf\xf9\x977\xaf>F^\xfa\xf6\xe5\xd5\x0f\xc6+\xea\x1e|\x910\xd8mQ\x91r\xc9HY\xde/\xa5\xc1\xc6\xb3\x14\x96\x93\xd0\xfdJ\xc7j\x8b\xbf\x80\xf8\x8b\x0e\x8a\x19\x9a\xd5\xe1\x8f{j&C\x89\x80{yn\xbb\xc5\xbd)\x08\xec\xde_\xbf\xbaP\xe6\x10\xed<\xacj\x06\xc7\xfax*\x85\x12v\xaaXQ\x0e4;M\xe2q;pfs\x86C\xab\x0d\xdd\x0c\xb7LR\x02\xc3=m\x97k\xd7\xc1\xea5 Xs\xd7}\xacg\xa9\x0f\xc4\xbf\xef\xdc\xd7vd\x95A\x8c\xacZ~\xdfMo\xde\"\xe0vA\xfd9\xd6\x8d\xaa\x9e\xde\x03\xfd\xad\xdbxU'\xb4\xcb\xa5\x04\xe11\x9c\xde\x03\xc7\xf0\xe2\x92E;'=\x97}\xe4R\xed\x9a\xf1\x87\x9d\x16!=l\xc9\x8aC\xac\xea\x8b\xb6\x1am\x08\xa3\xcf\xf8\xfb\xf8\xd13\x08\xea>\x8a\xff\xae\xb7\x10\x88#\xd2\xbeTZm2\xf6eHUw\x88ra\x99\xff\xdb\x08r5:#\x02\xe8\xceQ\x13\x7f#Q\x13\xd6ju[N\x04\xec\x19q\xa0\x0c\xf1\x95\xaa\xa8\xa4\x96\x91&\xe7 p\xc8\xeaN\x89_\x84[\x9d\xff\xa8N)\xceK\x14\x8d\xbc\xc7a@\xd49\x0d\xf5V\xdfBh\x9f\x0e\x94\x91\x0da$\xd2\x19\x15]\xf1\x7fl\x91L~*7\xc7\xbd%\x91\xa9\xbf\x10\xc6\xc8z/=3\xd8b\x81r\x84\nw\xcbA\xdc\x8dj\xdc\xfa\xce6\x1b\x91\xf2\xdd\xb6>q\xe1\x9d6\x96u\\\x98\xeb_\\^n\xea5\x97Q\x85\x8f\xbf\xa2\xec\xb6n\xbe\\\xde\xfcf\xf1\x8f\xff|)\x03\x04\xda\xcb]}\xf3_u?\x9e\xfd\xf6+s|\xe19\xb0\xa6\xfd1\x1e`\xf0x8c\xe2\xffz\x9e\xc9\xffQ\xa3ri{:\x1cHs\xff\x10}P\xa4\xc5:A\xbb\xaf\x1b\xd6\xfd\x84\xf7E\xfes\\-\xb3\xd4\xceh\xda\x80\x83\xa0\x18\xd7\xc9aU0Fu}\x87.~j\xd8\xa9a P\xbcW\xbf\xfb\x8d\xd3+3:K2\xd0a\xc0R\xd1\xf6/\xa9\xaf\xb7\xa4(\xe9f\xd9P\xd2\x9a\xc9\xad\x13\xe7\n\xe9\x95\xd5\x80\xa5\x83\xa8\x9fn\xf7\xf7v/\xe5\x17_9-^wqW\x06\x91u\xddP\xc5\xdf\x0f\\\x83m\xc4*\x10,+d\xe1\x8d\x9c\xf9`hO\xce\xc8M\xe5'E\xf1ITz\xd2\x14\x9e\x88\xb2\x13Ut\x82JN\xb2\x82\xe3\x89l\xb2fO\xcc\x93p\xeb\xc8\x85Qn8\xf17\xaa\x16\xa5_ \xbdK\x82\x13\x1a\xec\xd8 !S\x9a,}jmlM\xdc\x96\xec\xbf\x1b\"\xc9\xa0 \xd8\x9c\x1a\x1d\x16\xa7nu\xcd\x80\xac\xd8\xc7\xd8z\xbb=\xb0\xfe\x9c\xd6\x01yI\xa6\xb6/w\x92\xdb\xb0\xfc=\xd0\xa2\xb5\x96\x1a5O\xc7\xbb\xc8\x1c\xf1@\xb3z\x87\xba\x0d\xeb\xbfLmZ\xa0\xf65\x94K\xb8\xc1\x1e\xc8#\xe0\xb6/\x7f\x9f\xda\xbad[.\x93\x11\x19\xd6\xaf\xea\xaae\x05;\xf1#4\x1a\xe3lm|\x1c`\xd1\xc3\xf4uo\xc3)\x19\xe1\xe6w\x8a^\x8f\xf7\x86\x8fQe\xee\x8d\x1e\x9eG\x9fI2(\xe8\xc5\xb0r\xcb!\xa4\xaa\x04\xf2\xff-6gP\x1e\x17\xe8\x08\xfd\x90\xeaI\xe5\xa5\xba\x8f'\xe7\x9c\x83G%\xc3\x14E\xc0\x94E\xf0+\x8c\x10P\x1a\xc1\xa78Bh\xf0\xe0U #\x9f\xc5bB&+\x93\x0e\xa59\x1a\xa5CL\x9d!\xe7\xf7t5\x13\x1c\xdbTj\xf6\xba\xf3\xa5\x9d\xc7\xa2\xf6X\x96,vp\x8c:\xf8za\xbc#\x85C\xe9\xce\xc6\x01+\xcc\x16\xc6#L\xea@\xfc\x87\xb5\xb7x\x19Y\xf0\x04\x04\x98YNv\xe6eh\xe9\xc73\x0fS\x0b[\x9a\\\xc6\xe6amA\xe6\x16fo\x01\x06\x17aq!&\x17\xf94\xc6\xe8r\xb2\xba\xcc\xcc\xce\xcf\xee\xc62\xbc9,/<\x853\xd9\x9e\xbd?%\x0bD\xcf\xb6\x87\x05w\x99>\xb6r,0\x83\xfaT\xab\xee\x1cL\xc1\xa2\x12\x07\xaa\xffY\x05J\x9c\xb1\xa8\xceXT\x0f\x89E5\xbcrG\xdc\xea)8T\xe2\x03\x99^5\xfaR\xd7y\xbf\x06*\x883\x98\xa1h\xd4\xd05at\xf3\x02\xae\x1b\xba\xa5\x8dN\xd5\xf8,\x89|\x86\xa2j\x19%\x1bs3X\xcd\xf8r\xc0\x1a*\xfd\xb0\xacV\xefO:\x8f\x9eLfHV;\x92p!\xba4\xca\x07\x9e8\xbb\x9d\x84\x99\xeb2\x085\x85\x11S\x87\xa6\"\xc3Y_\x9a.Dd\x15!\x1e@_\x9a\x05\x19\x03\x11\xd8\x18H>r\xce\x1a\xe4\x84\x90\x01\x0f\x8c\x0c8P22\x02\xe5\xa1\x8f\xb4\xd9J\xc2\x81\x16\xafO:\xce\xc3\xe4r\x98\xb1\x1e3ql\x06\xe4\xdc\xe4\x1a\x1f\xb2\x0d\x00\x8an\x03\x19\x86\xd2L\xc0}\xc0\xb7\x95\x81v\x03\x01\xc4\x1b\x98\xdf\xe9\xa9\xe87\xd1\xf9\x8f\xe3\xe1\xa4\x1f\x8b\xc1\xd6\x16\x89\xa0z{\x13\xa6\x84\xb9\xe0\x87\x0e5\x04\x0c\x112\x03\"BfPD\xc8\xb0G\x12\xc0\x11! \x11\x9c\x8b-\xac\x8be\x05K\x04\x18\x02&\x02\x02\x9a\x08\xc3N\x8d\x01N\x84\x90\xa6<\x04P\x84\x18\xf4E\xf4]/\x90\"\xfe\xba\x0fL\x11\x7f\xdb\x01T\xc4_C@\x15\xf1\x17\x07\xc0\x8a \xe69\x11{D>!\x80E\x88\xee\xa5\x0c@\x8b\x03\x8a3\xd1\x16\x07\xd4\x10K\xb4\xa6\x9a\x02\xc0\x08!W\x92\xdf\x91\xe4\x01c\x84\x98\xc9\xc7\x9a\xeby\xa0\x8c\x10\x06f\x84Q]\xc9\x03\xd0\x08^\x90F\x18\xd5\x9b9`\x8d\x90\x00\xd8\x08\xa3z\x83\x1a\xde\xf2\x817\x02\x9a\xe5\xea\x01q\x84\x14\x8f\xad\x8b\x18\x07\x0ew\x9e\x04\xe8(\xc9\xc8\xc0\x05\x17\xc5\x0e2\xf5m\xd8\x02\xa4\x01<\x8a\xe6q\x90G\xf8\x85\x9c\xcb\xe7\x00\xa9\xbfB\x80\xd4t\xa8H\x08\xc3EB\xa6\xfd\x9c\x03:\x12B\xf0\x91\x90\xb7\xa3S\xa1$\x01\x85\x93\x84P\xe70XI\xc8\x07- \x90\x0b^\x12\xe6CL\x0280\x93\x10\x9a\x1bki\xa2\xe8\x8a=\xf5t\xc8I\xc0`'\xe1A\xfa4\x1a\x82\x12\xba[\x91N\x02\x82\x1a\xd39\xdd\x0e\x8c\x84\xa4\x04\x1c\x96\x12 \x14C\x18\xef\xa5 \x04 0\x0f\xa2\x12\xfc0\x950o.=\xbd\x9c\x05Y\xe9\xb4\x9c\x03\xb6\xd2wW\xa21xI\xf1}\xbaS\xa90\x0b\xea\xfd\xf1H\x0bz\x18\x0f\x8c\x9f\xf4@\xb0IS\x02\x03}\xa1\x81~\xf9\xed!`\x8aX H0\xea\xd3\x8f\xcbf\xf2\x99\x1a*\xe8!\xc7,\x8f\xb7\xc7m\x03\xb9\xc3\x05\xb3\x07\x0cFC\x063\x04\x0d\xe6\x0e\x1bL\x0b\x1c\x9c\x15:\x98;x01|0w\x00aR\x08\xe1\xf4 B\x1f9Q\x7f7\x18F\x981\x900\x1aJ\x98)\x98pN8\xe1\xe8\x80\xc2\x0c!\x85\xd3\x83\n\xbd\x9c\x07\xfca\x85\xd9\x03\x0b\x1f&\xb40{pazxa\xf6\x00\xc3X\x88\xe1\x94 C\x0f\xa1.\xf40\x10f8*\xd00s\xa8a,\xd8pf\xb8a \xe00A<\x89\x04\x1d\xa6\xca/9\x03\x0fc\xa1\x87)}\xca\x1c~\x18\x0b@\xcc\x18\x82\x98=\x081\x14\x868+\x10\x11\xa1\xc6{\xc2<\xa1\x889\x82\x11\x93\"\xee\"\x01\x89\xc9!\x89\x81(\x9d\xd1a\x89!ZhPB\x86\xe0\xc4q\x93\x95\x16\xa0\x982'\x89A\x8a\x13\xc2\x14\xbd\x11]\x91P\xc5|\xc1\x8a\xf3\xc3\x15#\xeb=+d1)h1\x1e\xb6\x98\x12\xb8\x18\xd9\x08\xe3\x82\x17S\xc3\x17=\x01\x8c\x19B\x18G\x041\x8e\x0fcL\x0ed\x0cM\xaaw\xeb\x87\xbeI\x0bh\xcc\x13\xd2\x18\xe9<\xf2\x97\xbc\x81\x8d\x9e\xd0\xc6\xcc\xc1\x8d\xfe\xf0\xc6\xdc\x01\x8e\x9e\x10\xc7YA\x8e\x085\x9f\x1a\x1c\x0e|\xf4\x86>\xe6\x0d~\xcc\x1e\xfe\xf80\x01\x90\xe3B \x93\x83 G\x86A\x8e \x84\xf4\x86B\xfa\x03\xdd\xd2C\xddR\xc2!G\x06D\x8e\x08\x89\xf4\x0cmFX\xa4w\xf7\xbb\xbf\xe7\x0d\x95\xf4\x06K\xe6\x0f\x97\xcc\x1f0\x99c'%\x06M\xa6\x86M\xba\x97hL\x93\x9c\x1c<\xe9P\xea\\\\n\xf8$\x1e@93\x842\xa8\xfbca\x94\xe3\x02)G\x87R\x8e\x0d\xa6L\x0e\xa7\x1c\x11P\x99\x18R9:\xa82\x1eV\x19\xdfi\xb3B+\x1djX\xa8e\xee`K4\xdcr|\xc0\xe5\xe4\x00\xab@\xd8e\xd4\xf0\x959\xf42\x1a|9\xaeC\xf9\x020C!\x98\xe3\xfa47\x0c3-\x10s\\\x9f<\xe6\xc8\xbc\xe1\x98x@f $3\xc9c\x8eG`e\x0b\xcc\x8c\x85f\xe6\xeb\xe3\x8c\x00\xcd`\x88\xe6/\xeb\xe4?\xd7\"\x1a\x13\xb8\xf9`\xb5\x88\xe6\x85oF\x038\xf3\xed\xfa\\a\x9c\x91@\xce\xec\x1d\x9e\x13\xce\xe9\x0b\xe8\x0cv\xd2\x17\xd4\x995\xac3g`g\x96\xd0N4\xb838O\xf1\x18\xbba\xbc\xe2\xb4\x10OO\x90\xe7C\xf5mR\xa8\xa7/\xd8\xf3\xa1:9'\xe4\xd3\x1b\xf4\x19\n\xfbL\xe9\xed0\xa4r~\xe8g0\xf8s\xe6\xdcz{;;\x04\xf4A\x82@\x1d\xb2]p\xa5Su\xa2\xaf\x1f\x87P;\xd7\x92c\xe7Zr\xbf\xf6Zr\xff\x07\x0dr\x1e\x87b\xda\x1d\x8f\xc40\xe7\x8f\xa4,\xef\xdf\x8b\xd1\x8f\x0et\x16\x96\x0e\xcf1\x92V\x10\xbc\xbe\xe3\xf4BG\x1eK\x82w\x8bd\xb4\x1e\x04\xec\x06i\xcd\xe7\xb1\x15\xe0V\x82\xb4\x1e\xcc\xb1\x0c\xc4l\x02i=p\x0ed>\x0b\x80\xddi\xbcU\xdf\x8eO9Y\xe2\xb3\xd4S\xf5S\xcd\xe8\xe8\xe3d\xa3j\x8f8\x15z\xe8\xbf\xb2\x92\xf0|<\x93\xb2\x80\xc4\x87zM\xe4?<\x92\x9e\xd9\x9c\x0c(\xfe+\x80\x13\xcb\x861\xc3B\xdcr\xa0\xbf\xb6fWF\xe6I}T\x0e\x8a\xdf&2>XDxJ\xd7'Jns\x92\xb1\xba\xd4\xfa\x1es\xf7G\xcc%\xb8\xe7\x01\x84i\xfe\xa7w\x1f\xdf,\xdf]\x7f\xbcz\xf76\xe8yp\xdf\xfe\xdfo>$\xbc\xf5\xf2\x9b\x0f\x1f_^\xbdMx\xf3\xed\xbb\xa4\x97\x96\x7f\xbc\xfa\xf8\xfd\xf2\xa77\x1f\xb1\xd7;\x1fB\xea\xb0ni\xb1\xdb\xcf\xb6\x89J*\xe66\xd7?\x91\xb6\xad\xd7\x850\xe7\x0b\xc6\xd7\xfd]\xaef\xd00\xf3GA\x82n8\x07zgo-\xc2\x8f-S\x06\x04\xc9\xde\xc4\x7f\xb4\xc7\xd2,#\xea\x90T{H\xf7\xf4V\xb5\xe0\xdd`\xd3\xb2I\x118\x94\xd1f\x07\xde#'\xec\x88e\xb38\x8c\xb37\xf0\xce<\xfb]G\xc2/\xa9\xf3\xa52\x16\xa9\xb7C\x05\xb5\"\x80\x97\xf2KQ\xe2\xaaeJ\x93\xea\xb4\xb3\xab\xd7\x17=\xff\xbc\xd0a2\xee>\xb2\xfa\xe5\\^)7\xa3\xe8E\x147\x9f\xbf5>\x97N\\\xf7\xc3K1o\x1e\x9d\xf7\xf6L\xb2\xe9\xc5\x13\xeaf\xdd\xa1\xe8-\x9an\x02\x98v\x93z\xeeR\xffm\xfa\x10\x86~\xff\xad\x9av\xaff\xbfY\xc7\xdc\xad\xd1\x9b t\xbf\x8e\xbdaS\xef\xd81\xb7l\xe2=;\xf2\xa6\x9dp\xd7\x86n\xdb\x84Y~\x98\x1b\xf7A\xee\xdc\x99\xb7\xee\x1c\xa3?\x1aO\x93\xe7\xf6\xcdy\xff\xce\xbc\x81\xc3\xd6\xb2\xa9\xb7p\xae{\xd8\xe9\x9f\xb8\xfa,\xee\xf5\xf3\x896\x85\xda\x02g\x83&;\x1b4\x7f\xed\x06MW\xf0K\x95'\xc3\x85\x98\x84-\xe6\xda(S\x9d I\x0e\x8b\xa7\xa1\xab\xe0\xdf}s+\xd5\xda\xb5Q}ei\x91R\x88\xf1~\xfe\x01\xedg3\xa1\xfc\xa1\x9b\xa0h\x94\xa0\xf5\x95\x9f\x8dw\x10\x9d\xc8\xa9%g\xed\x89\x8c\xd5\x97\xb5\xfaal\x9b\x01+\x14?\x89]\xc8_)\xaa\x9d\xeaA]y\x9dI\xc8\x8e|o\xc4\x13&\xecH\xc4\x98\x1d\x9f\xcb\xe9Fl\x8f\x01;\xde\xe4|\xc3\xb5k\xb4\x8e\xb7:\xd5X\x1d2T'\xb5:\xd5\x1e\x1d\xb2@\x1b\xdb\xc3\x901ZF\xaa\x0di\x94CDq\x0c\x8f\xb8ao\xb7\x9f:Sq\xc2>C\x15\\t*<\x17P\x1euv\xa0\xc8\xc6\xd7b\xbc\xf2\xea\xa8\xad\x0fa/\xc0\x15\xd3\x98J\x9aQ\x19MSC\x03R\xbf/\xa8\xd2m|\xd3~\xb0\xb6\xc3\x88m\x1ac\xb5\xd3\xb6q\x94\xdd\xce\xdd\x15\xc6NP\xed\xda[@\xb5\x12\x99\xc4\xb6$\xed\xbe\xa8vS\x95\xef\xb6\xd8Ut\xb3T\xd7\xf9mQm\xea\xdb\xe0\x84\xf6\x97\xb8y\x87\x1f\x8aj\xa9Hq\x91`\x14\x1dCr\xdf\xd4\xb7\x15+\x0et\xf9o\xa4(\x97\x1beM\x0b\xd2\x11\x13\xb0\xdc\n\x0c\xfc\xbaZn\xea\xd3\xaa\xa4\xa2/\xe3\x9bwh\xc9\xde\x8c%\x84\xe9\xaf\x1d\xf2\x97#ow\xe8\xd6+\x193\xa4W\xd4Uf\x9d\xb5\x9e}\xf7:G#\xed\n\x0d\xee\x19H\x11\x00\x87\xf2_d\xff$\xd1\x1c\x84z\xc5\xf6R\x80f\xca\x9e\n|\xee\xedRt\x7f\x8d'\x9a}\xafu\x92x.\xf9:\xb6\x7f?\x14\xbb\xaa\xa8vW\xd5\xb6\x1e\xbd\x89oH)\x96\xa5\xa8v\xcb\xa2\xda\xd6\x93\xb6\xb3\xf2\xf9'\xad\x82\x84\xf9\xd8#\x0e\xde\xe8\xb2yU\x9e\xef\x95\xddV#\xaf\x08C:au#\"\xe3\x046\"\x10X\x93j\xc3\x7f\xa6\xf0\xee\xbd\xf8\xc3\xa9z\xf6o\xc3\x04\xf9\xa2\xda\xd0\xbbe\xbd\xdd\xb6t~\xf7\xc2\x11\x07W\xbc)\x8d\x15\xd3BQ\xad\x1b\x01\x17C7@oD\xfccq\xe8P\xe0\xc5h\x8aV+\x93H\xc9\x14\xc1L\xf8E9\x8c\x0e\\\x1e\xc8\xfdRVk\x90\x0cB8>\xe9\xb3u}8\x14L\xd6\xfe`\xaaPMQ\xc1\xba\xae\xfeM\xa1\x97\xcb\"\x0065\x04\xa7\x0c\xe3f\x9d\xf6\xc1hs\xe8d&1\xbb:\x98\xf5P\xb4n\x0d\n9\x8aU\xc1\x0e\xe4h\xba\xe3\xe5B-\x05v\xda\xc8uI(\xd0\xe7\xac\xcd\xc7\xe2@[F\x0eG\x89\xd6\xa6V\xa9s\xd2\xe8\xd5\x90\xbd\x82\xcdI\xc0\xd3\x94\xc5\x0d\xadh;\xac\xad\xa0\x99\x949\x1cV\x1fV-\xab\xab\x89\xe5\xcd\x9c\xfe\xfeqOEy\x05\xb9\x98\xd6\xa6\xd9\x93\x16V\x94VF\x9b\xf0\xe4KQ\xf2\x8e\xd7'\xe6\x16>\xea>u\xd6\x99\xb2\xa7\"\xea\xb6\x10\xe1\xa6PWk:\x98\x13\xb9\xa7\x84\xd6L\x7f>\x157\xf5Zy\xf3\x1aCL\xd3\x0f\xa9\xeeeh\xea\xb0\xa1u]m\x8b\xdd\x89\x0b\xcc\x87\xa2]\xd1=\xb9)\xec\xea'r\xef\xe8-'\xa2\xc0\x92\x13Y\xa7\x9e\xd7\x97\xa0\xda\x81z\xab:\x00ON\x95\xdc\xfdO\x95\xb9E\xcf\xcfI\x85:\x8b\xea'\x03B\xa7\xaa\xa2k\xda\xb6\xa4q\xaa\x035\x94lZ\xfb\x80x\x8e\x84\xbf\xaf?\xe9\xd50\xee\x053ZB\xff\xf9q\x0b\x8a\xf3\x03\xe7\xfc\xe2\x16:\xd4U\xc1\xea\xc1\x94\xb1=-\xac5\xd2\x1b\x1d\xf85|S0\x13)@r\xe4\xe1\xb5\xa2\xef=\xabA\x11\x03\xad\x11\x07nH)\x823\xf4e\xf2\x95A\xcd\xce\x0eG\xae\xbb\x94k\xd5\xf8LQ{\x7f\xfdJ\x8fj\xf4E;^\\\xc4n\xd7$=*\xd9\x1c\x80^\xc3\x81\x83\xe0\xbf\x8a\x03\x1f\x85\xce\xcfC\\\xc8\xa1+yr7c\xa1\x80\x99\xaf\xe6\xc0\xe5\x9c\xfbz\xf6\x00\x89\xe6\xbc\xa2\xfd\x97t\xe8\x9aNZ\xab$\xf85d\xbdr^\xd7\xf8\x85\xed\xbf\xb2C\x97v\xbc\xe79/\xee\xc0\xd5=\xf3\xf2v\xa8 \x83\x95\xef\xfaN\xb9\xc0\x93\xae\xf0\xa4=3\xe5|g\xbb\xca\x83\x97\xf9\x98\xeb<\xdc\xe7\x19W\xba=\xe7\xdd\xf5\xee^\xea)\xd7z\xe8*'e\xd9wD\x1f*,\xf5m\x84byNY;\xa7\xac\xe9/\xfck(\x9b4$\xc1\xda* PT\x02\x94\xbb\x17\x0e;\xb4\xf9[1\xd76\xc2\xfc\xban\xe4\x8b\xa2\x8e\x80\x92O;\xf0~\xce\x93\x05?0\x87i\x8dM\xbf\xf9\xa1>\xf4\x9dB\xd1\xfb\x1bz\xa4\"\xc8\xec\x1b\xd2t3\xeb\xabIa\x8dQl\xaea=\n \xc7\x1f\x93\x98GY\xa2\xcc\xef\x14\xbd123\xc6\xb5\x92\xc5eG\x98E68.\xc0\xa2'\x01\xbf-\xf2\x8a\xab\xb8\xa0:\xa2;\xfe+`\xae@*o\x1d\x83\xe0@\x14\x9d)\x84\x0e\x85\xceY\xe2\xa6\xd3W\xfb\xae\xc4E\xcc\xe0,\xbbb\xa5\x7f\xa6s\x89\x92C!\x12\x13\x1fq\xc1\xd1\xdf\xb7\\\xc2\"*&\xce\x12\x10\xb5@h\xd0sD\xc3\xb0P\x18\x11\x07\xa7\x9e\"\xeb\xa2\x98.\xf6Yb^O0M\xbe\xc3\x17t\x86L\xe7\x9ai,i\x0e\x95\xe34\x93f\xa2\x86m\xc7\xa3\xbf\xa9\xab\xcd\x07\xa3b\x8a3\xcfv\x12\xcb7\xef\xde\xbe\xf6\xd7\xef\x18\xfe\x9d\xff+\xf8\xc7\xab\xb7\xdf\xa1\x7f5>\xec\xe2\xbfCM\xe3K\xde\x8f\xad\x93Y\xe5\xbfD\xeeO7\xc1f\x0e\x8a\xa7\x91\x17\x80\xe6\x9dTPT*h\xbf;#\x83\xfa1\xf8\x94pz\xf2\xbf\xb0\x15\x97\xcemU7D2\xf1 \xbd\xab\xb7\xdfi\x82Wo\xbf\x0bR\xd6\xbb\x97V\xebZU24\x81\x14\xba\xf7\xf5\xdaw\x83\x9a\xd2\xba\xf3q\xa4u\xe7*l\xf7\xa4q\xc3[CM\xca/\xd4\xba\x9aC\xe2\xcb\xa9\xfe\xd8\xd05-nP\x0e\xd5Iu\xfdB\x0d\xc3t\xb8D\xa2\xd4\xd1\xfa\x0b\xadZ\xd8\xd3R\x14\xcc!\x15\x90\xb5\x10\xfd\x95p\xafH\xd5\xb7\x95\xac\xa8SW\xc6\x04\xcb\xf4\xef\xa2\xf5\xe5\x01\x8a|\xd4\xfaVj\x11uE\x87\xeb\x91\xb4\xc9F\xbb\x0f7\x83\xfd\x89~\x86\x7f\n\xe1\xbd\n\xc97\xe9\xec=\x0b\xe1}\x9b\xde\x93\xd9\xfb\x17\x90=\x9c\xde\xfc\xf8\xbd\xec\x90\xb0\x14\xd3\x8c{\x1ar\xefk\x18\xeem\xfe\xacHI*7p8q+\xa6\xe65a\xf5\xc0\xe2\x8c\xc6\x9a\xd9\xc9u\xbfz\x12s\xca}\xf5FR\xfd\xa4\xd5\xf4\x8a\xb1>\xd3\x8a+L1\xa4\xa4\x95\x0013\xb6\x12\xbd[\xd3#S\n\x1b\xeb\xcb1\x13{\x11\x87\xb5m\xd5\xfe\xed\x8c\x8d\xc2 \xd1\x9e\n&\x0c\xfe\\\x00\\\x97\x05oM\x9b\x8e\xdb \xc7\xeb\x07\x92\xca\xea\x0euU|\x89\x1a\x7f\xac)R\x9f\x18+\xbd?\x1dH\xf5\xac\xa1d#\xba-\xa2\xc8\xb5u\xdb\xd9\xce\xc5\x86V\xac`\xe1\x9c\xa2\x90\x00\xa5 \x98\xb6\x01\x99-N\xca\xfe\x8f\xdd\xda\xc3\x13z\xb7\x80O\xd7u\xc3l\xef\xea\xbf\xd2\xfb\x15i\xe9S\xdd\xb1[\xbaj\x8bq\x82\x9d\xfa\x04\xed\x89\xfe[YT_\xba\x9b\x9c\xaeOM\xc1\xee\x97b\x7f\xacc\x96k\x9b\x0f\x0e\xbeE\x1b\xa5\x07R\x94b\xee\xf5\xeb\xa0^\xd7]\xd8PF\x8ar\x944\xa1>\xd1,\xb8\x96vQ\xdd\xa4\xfa+r\x96\x8c\xfd\x88Z7\x8c\x97\x03\xbb\xfa\xfb\xa2euS\xacI9\xca\xa7\xb1\xa7d\xe3\xee\xeb$\xa6yC\x9b\xb6p\x82\xaf\xa5\xfbbE\xdab\xad\xec\x8eE\x1f\xde\x14h\x03\x02QD*\xbcc\xf8c\xe0j\x84\x18\xd869\x1e\xf3\x91\x0b\xeb\xf6\xaf8C\xaa\xdaS\x0bkr\x94lV\xaa\x84\xfa\xe7\xe6T\xf6\x18\x8bk\xda\xb6\xd2\xd6\xa3go@N\\\xc1\xfcO\xeb=)\xaa\x8b\xa1\x17\xb3\xa8\xd6\xe5I\x16\x1c/K\xe3E\x10\xa0H-kNk\xd9\x07\x0d($[G\xad \xe4(Q=\x8a\xbaz\xdc:\xa1\x97\x8c\xabe\xac!\x95,\xfd \x07\xb2\xde\x17\x95\x15\xa2\"ZN-0\x92%\x00{B\xe8=\x16\xe1#j\xec\x8b\xc9s{\xaf\xab\xca\xd1\x9b\x8c\x1b|O\xda\xfd\xc4\x0d\xe9\x84\x16\x88<\x10\xb6l)[\x0e\x8f\xb7~\xbc=\x84`/\xc5\xa7\xae\xa3\xbf\xfb\x93\xa0ZT\x8c\xee\xa8\x1b\xa0\x03\x91\x08\x19\xf0N\x03\xc4\xa6\x02\xc2\xd3\xd1-\xda5iXK\xd9\xf7bV\x86\xcb-]IK\xb7\x0b\xd1\x1d\xe44\xa9\x9a\xe3\xa4\xe4\xd9\x92\x1b\x85\x1fA\xe3=\xfe\xcf\x0c\xcd\xf5\x11.\x19\x88\x0d\xfb\xbem\xea\x83`\x13\xe4x\x84\xfa\xc4\x8e'\xd6\xff\xd6\x9f\x01\x83\x82\x08]\xc9\xda\xa7\x8eSf\xa0E\x8e\xc7\x0cT\xc4~Q\xf1\x11\x19\xc8\xd1\x1b.\x8f\xadi\x06R\xdd\xfa\xf5\xd7\xcb\x80=\x1dE\xf67\x1d\xab\xeb\xc6\x13\x95\xe4\xa9\xb2\xacd\xddu#\xfd[\xf2\x14H\x9ed\xd8\x8c\x90\xd8\x84\xbcQ\xc8\xfcW\xbfz\x1f\xe4-\xe1\xab\xdd%m\x0d\xdf\xa7\xf1?v\x03<5\x9d\xff\x06+\xba\xdew6\x83\xa2\x82\x7f\xf9\xf0\xee\xed\xc2z\xbf?\x0f\xc7\xd3\xca E\x0b2\xf7\x10k\xe7\x9f-O\x0d\xca\xdb#\xdc76K <\xdd\x9f\xde\xffp\xd9\xd0\xb6>5:\x87V\xe8\x81\x12\x03\xb6\xbcWJ\xc9\xb6P\xb3\xc7\x14r\x88+\x97\xc8\xa7\xa5MA\xca\xe2\xdf)Z\xa8Z\x8c\x95\xd5\xeb\xba\x84\xd5i\xbb\xa5\x8d\x0e\x83R!#r,\x12\xc9L\xa3\x98\x11\x06%%-\xc3\xe9\xd5\x15\x85G\x97\x8f\x84\xf9\x9b\xac\x19m\x16B\x03\x17>\x8e\x96\xee\xb8\x9e\xadW\xfa\xd3\xfb\x1f\x1e\xb7p$l/\x1a@\xc9uV\x15\xbc5Nf{*\xcb{\xf8\xf9DJ>+\x1b9g\xaa 1;O\x08?\xde8\x81\xcf\xbc\xf9\xcb]]\xefJ\xba\x10s\xb1:m\x17\x1a\xcc\xee\xf3S\xd9{A\xb2\xdd\xd7\xa7r\x03+\x8aG\x8a\xf3gM\xaa\xba\xe2\xda\x85`\x04x\x8bO\xe8b\xb7\xb8\xe0S(\xe4\xcfG\x8bG\xdacL\xd6\\\xed\xa7\x9b\xa7x\xf5r\x80\xab\n\x8e\xc2\"\xbf\xa6\x17\xc0(9\xb4pjO\x02\xe0\xf8(\xb0>\x8fE\xc9{\xa70AWEE\x9a{#\x9f\xdd~\x98H\x7f\x17\x9b\x8b\xed)\x12\x04\x0b\xaa\xb0\xefZX!X\xad\xe02\xb4\\\xce\xe8\x9dX\xca\x97\xd5\xfd\x02\xbe\xafo\xe9\x0dm$\xac\xc6\xa7\xf7?\xb8g\x97?\xd24\xc1\xc9\xa0\xc1\xee\xfci\xd7{z\xa0\xf0y\xcf\xd8\xf1\xf3\x85\xfc\xff\xf6\xf3\x85\x0c\x9dQ\x7f\xbd\x10\xbblm\xe8\xaa\xe5=\xb4\x14\xdfA\xa7#\x101VO{\xb4\xb9\xa1\xca9~ \xc7Vn\x19>\x02\x81\xc3\xa3\x82\x02\x05\xbf\x12\x02|\x0b\x04\x1f\xdb\xb6.\xcb\xfa\xb6}\xe1Y\xbb\xbf\x87\xabm?\x02\xbe\xe4\x02\xcbjC7\xdd \x95\x89\xeft\xa0\x1b\xa4\xd6\x87$\xf2\xb2\x82\xef?~\xbc\x86\xef\xde|\xd4U\xe0?\xbd\xffA\x1e\xd0{a\xde\xc2w\xe6\x9f\x86[\xfc\xe3\xfd\x91\xfe\xf9O\x7fF_V\xa8\x1e|\xad\xd5\x1e\x92\xf7\x9aX\x85cSoNk*b\x89\x9af\x18\x1c\xae\x9f\xbf\x87\x97\xbdZ\xd4\x8a\xb0X\xc2\xe7Gz\xf3\xd6d\xcdyB]\x7f9\x1d\xbb\x08\xca\x15i\xe9\x06j\xbcB\x90\x8f\xbd\x01\x1f\xbe\xe8\x97\x88\x81c{z0\xce\xc2F\x1e\x06\xa2\x87\xd1E\x05\xd9\x11O\xe6#;%\x8e}C\xb7uC/\xf4\xc7\x9c&a\xc5\xaa(\x0bv/J\x12h?\x96`Q\xcd\x0d\x92p!\x9f\xbaR\x1e\\\xf1\x818w\x0bx\xf2\xa9\xa5\xda:\xc0g\x85o;\xceg\xe4\xbe#\x15\xd9\xf9F\xbcj\xa8\xb0jh\xa2\x8b\xa7\xf8ny[3\xfa\x02\x18\xe7\xe3[\x15\xf4GD\xdf\x15\xbfQ``\xe5\xbd\x19\x16\\y\xa7\xba\x16\xf1\xd0nD\xb0|\xf4\xc6\x82\x86\xf2\xdb\x81*\xa3u\x17\x0e\xd3\xe5_\xf7\xe7kEwEU\xf94\x15\x91#\xe3e\\\x0b\xb9\x9f\xc9\xb1h\x17\xeb\xfa\xe0\xe3\x98\x1f\xc4ik\x95\x99\x89\xedI5\xe4,\xf0D\xd9\x16eX\xb7<\x9eOQb\x07\x11l\xba\xf20\x121@a\xa0\xee\x0c\xca\xca\xadp\xa4\xebb[\xac\xa1\xa5\x07R\xb1b\x8d\x94\xb5BPt\xe4\x13\x11)\x82\xea\\\x9a\xc4\xf1#g\x1d\xab.\x06\xd5\x10\x18\x1c\xd9@]\xaadU\xdfx\x84\x0d9T\xb5\x9d\x87\xc3\x8c\xf5\xe6\xf3\xcb\xea\xfe\xb3a\xed\xae\x0c\xe0\xeb@\xaf\x14\x8fv\xc8\x91\xb2\xaev\xcae\xe0.\x19\xe7\x9a\x82\xe9\xcb^\xad\\q\xcalSKE\xc86\xbb\xd6\x1b\xbf,V\xa2\xab\x8a\xaf\xb7\xd0\x9e\x8e\xc7\xbaa\xb2\x14\xc8\xfa\xcb\xe5\xa9\xe2\xff\xc7\xefK\xb9\xde\xadk\xb6R\x12\x0d*<\xd4[81\xc9|\xf4qn9\xe3\xd3.\x00R\xc2\x8eV\x02\xdby\xa3\xdc\x17\x9dP\xfd\x12\xe1wr\x89\xdcv\xde\xdc\x11\xbe\x81\xe1\xf9\x0b\xb8&2\xf9\x0dT\xd7Iw!\x16\x15\xbc\xfa\x87\x7f\xf0\\S\xdf\xd65l\xeb\x1a~\x0f\x8b\xc5\x02\x8d\x8a\x17\x93@\xaa{\xfc\x8f\xa4\xba_\xf0\xa6\xbfm\xea\xc3\x93m]?\xc5_[,\xf0\xbb\xa7\xd8\xc2\x13N\xe2\x93\xe8\xf4\xc7\xfa\xc9\xdfq\x1aO\xf1`\xfe\x00\x9d\xbf\xf8\xe7\xe6\xeb\xc8\xdc\xfc\x0b\xb9!\xb3'\x07~/d+N}\xc6,\x14\xed\x93o\xebz\xb1.I\xdb\x06&Av\x89\x7f \xc7c|\x84\xb7\xfb\x17\xf4\xd7\xcbK\xbe%\xe3}\xfa@\x0e\x94\x8b /e\xefv\x94\xa923WU\xcbH\xb5\xa6O\x9e\x8e\xed,J\xc3\xd7w\xef\xca\xfe6\xb2\xb2\xd7\xf7l_W\x9e\xb5\x95\xfd\xfa\xb6\xae\x9f,\x16\x0b\xfc\x12\xe9\xd6\xf5\x89\xf7\xefb\xef\x8b\x15\x1f\xbb\xe0\xfc\xe3+9\xa3\xaf\xdf|x\xf5\xfe\xea\xfa\xe3\xbb\xf7OqS\xa1lJ\x9e\x11\x7fc\xb29\xefl\xfdcd\xb6\xbe\xab\xf1\x89\x123\xf5\xe2\xf7\xf0w\xc7\xd5\xe2\xdb\xba\xfe\x8f\xc5b\x81\xef'\xde\xc9\x0b.h\xf2\xb7Iu\x7f\\-\xde\xd2\xdb@\x7f\x8b\xadx\xfb\xbf\xfc\x1e\xaa\xa2\xf4n \xef$z\xb6\xb5\xff\xfd\xc1@<\x9f\xab^\xc91,>U\x07\xd2\xb4{R~\xac\xe5\xc1\x9e\xdbe\xe7\xf7\x8f\x02\xfcf\xfd\xa5\xbb\x07\xb4\xb2\x01\xab\xfb^T\xd37\x96\xccl\xbb\xd7!\xdb\x0e\xb5S\x8b\xc8<\x8f\x111\xec\x92\xeb\xe2\x0b\xf1\x07.\xca>\x06b\xdc\xaa\xfc\xc6U\xee\x14\xb7\x05\xb1w\xdcF\xbak\xac*\xef\xb5\xde\xe8(\xfc\x9d\xe8\x0cd\xcb\xa8\x94\xe6J\x82\x18\x14\x1e_>v\x9bP\n\xad\xee\xa2\xd4`\xa9\xda\xdf\x8f\xb6u\xbdX\x91F\x0c\xee\xee\xf2~\xf1\xef\x8f\xe4lI]\x0bW+EW\x1e\xf1w\xb1\xeb\xf5_>\xbc{\x8b\xfc\xccW\x8c\xff\xa9\xb7x\xa8\x14\x0d~\xaa\x95h$\xb5\xb2S\xdb\x01\xd9\xedN%A\xb2x]\x122\xd2\xa5\x17h.\xfa,;uZ/\x94\xa4\x84\xd8I\x0c\x01CFP|\xfe\x1f|\xe0\x9f\x95:\xdf l\xe64.4\x8bx\xe1Q\x17\xc8\xfa\x0b\xe7\x11\xbdZ\xba-J\x8ask\xcdO\xaei\xd3\xd6\x95\xf7\x80([\x95\xc8\xfaZ\x8a5\xf0\xe5\xe4\xf5/\x0b\x13\xb5z\xf7\xeb\xe4\xbb\x82?\xbe^<\x12s\xf3\xe8\x05<\xc2\xce\x87=\xdc\x85\x1c\xd1\xa3\x0b\x1f-1\x96\xb7\xe4\xc0\xe9\xfdw\xd9\xe5?x_\xe6c\x19\xbc\x9b:\xa0\xab\xadR\x81\xec=!W\xb3h\xe1\x96\x96\xe5\xb3/U}+\xc3m\xf6\"8T\x05\xca\xc8\xfd<\xa4ho\xc1\x0b)j\x0f\xf6e\x9fP\xab\x9a\xe5\x1b\xad\xda!\x16\x0c\xb1\xed\xdcF>\x8b\x03\xa1\xf7\xe1\xbe.7V\x08\x8f8N\x83\x18\x19\xfeg\xb5}]z\xa2\x99n\xe7\xc2\x13\x91\xb1\xa3\xa6\xc21\xa0h\x1b\xe1\x9f\xff\xf4\xe7\xa7\x9eM>w\x8f\xd8\x0d\xf9\xb7\x89\x98\x06N\xee\xf9\xe2\xeb\xe7_\xb7\x8f<\xcbn\xfeK\xa6\xc1\xe16\xf1i\x80\x08:\xb1N\xe5\x01\xdf\xaa\x947\xcb\xa4\xdfg\xbb\xa9\xb7\x85\x93L&\xa48\x04u\xce\x8fLa\xfc\xca\xfd\xd3\xb0\xf7v\x84\x8b\x95?4L\xf3\x81'\xb2\xd1\xcb.\xafF\xfd\x97\xb0\xbe\xdad\x03*\xb8\xaf\xdaW8\xdb\xca\xff\xa6\x95w\x15~\xad\xcf\xc0\xf2\xbd\x87\x12K\xca\xca\xd2\x8f\x8c\\\x9c\xea\x07Rq\x8fn\xac\xa5\xb0\x01\x8a\xbf=)\xaau\xb9\x80\x96\x96\xdbg} \xe6`\x05\xfa\xe0U,\xee3\xbd?\xc8\x9e\x1d\x92\xee\xfdR\xb2\xf8\xa8\xfc\xb1h\xdb\x93J)\x0cz\xa7\xfa\x1c\x85\xe1\x00\x06\xa1t\xf8\x9f\xcc\x7fX\x0e2\xf3wF\x9bC\xeb\x8f\x87\xd3\x0f\x9b\xe6\xdcr\x02\xf8\xfa'b\x88\xca\x19\xd4\xd7?nx_\xff\x8c\xe9\x90\xc7\xf45=\xf8\x0f%W7N\x18`\xff8\x01\x81\xfd3f$c\x83\x04\xfb\xc7\x1f.\xd8?cz\xe2\x99\xd3\x89\x91\x85(\xadA\xb4a\xff8q\x87\xfd3f\x08#b\x11\xf5\xd3\xdd\x17y\xe1\xb7b3;lV\xcf\xea\x05\xd7,\xbb?\xcaRx\xfb\x01(\x02\xdb\x17.\xaf\x1a^\xc9\xbbS\x85\xe4\x98\x0e\xdav\xc3\xc6\x92\x06<\x15\x1c\xcan84\xe4\x03W\xe2\x8a\xc3\xb0\x80K\xff\x18Y\xb0\xb5p\xe4\x94\x94Q\xdf\x80\xd7\x83\xfc\xd7\xfe\xb1z\xbcvS\xef\x98\x9d\xc4\xd6\xa7\xdfe\xe2\xcf\xfe4\xdb\xfe\x89\xcd*FgD\xd2\x16J\xafs\xee\x84\x93p\xfb'0~\x88\xc6\xd6a)\xba\xfd\x13a\x00\x908E\xa0\x9a\x99\x90\x9b\xe8\xa5\x87\xe5\xc9\xf6\x0f\x9e\xf3\xdb?\x19\x076>\xd7\xd1K\xca\xcd\x81\x8c\xe7\x06\xf7O0K\xb8\x7f2\x0f}t\xc6\xa4\x97\x1asa6B\xd9\xc4\xfd\x83\xe6\x15\x1bt\xd3\xdc~>\xce\n\x89\x132%\x19\x19g(f\x82\xb2~\x04\xb29-\xb7K,\x05N>3dw\x84\xba\xa3\xed=n\x85n\x01\x1b\xba.\x89\xc4/\x11\xc5\x83\x1cb\xea-M\x08\xb3\xdb\x05JQ\xe8\xa7\xbf\xb0\xeaj\xb9\xaf\xcb\xcd\xb2\xa1\xdba\xa1t\xf9$\\\x9b\x01\x98Nd:8\xa95+\xef\xe1X\xb7\x05+n(\xbf&\x85\xef\xdf\x9c\x8d\xae\x87\xbd&\xde\xb2\xfax\xc4\xb0\"\xef\x81\xde1\xdapQH\x15\xf9\xf5\x0c\xb6\xd8xt\xb2\xf9\xb5I\xe4\x13\xccQ\xf0OIY\xb4\"@\xa9\x1ft\xb1i/\x80\x92\xf5\xde\x0d\xa7\x135\xe6\x8cW\x91Co\xcf\xa6\xf1\xe7\xd0V\xfd\xc9\xc8Pq\xb2V.\x80\xd5;i'\xe9\x12\xfa\xa4\xea\xa92\xd6T`\x1fN\xf1\xb1\xc4\xf2\xd0j\xaa\xb2\xad\x17\x0d\xd0;U\xdeK\x9cY!\xf1\x14U\xbb\x80\x0f\n\xe8\xcb\"\xa7\xc3o\x86\x11r\x84\x9f\x1a\xc9\x00\x95\x89\xdc\"{!\xe3yD\x18J\xdd4t\xcd`M\xca\xf5\xa9\xd46g\x8b\xd8\xf6\xc4\x15\xa8\xaf\x06\x1b\xa8?p\xad\x18\x7f}b|\x7f4R\x84\xa8o\x84\n\xd9\xe9\xd4\xf0\xc7=\xad\xe4P\x8046\xcb3-\x0bv+\xf6\xa2]\x0c8v\xd1r\x91eSt)\x95\xc4L\x08\xbd\xdd\xd7\xad\xddN\x87\xa8g7b.C\xd1G2\x89\xc6\xfa\x95\x94]\xef\xbb*\x8aSI\x97\xccPfU\xa19v+\xd6\xfc/T\x05]\x95\xf9\xc9/\xdf\x15\xed\x96\x80n\x84\xebEl%\x85&&\xbbgS<\x9cJV\x1c\xcbBv\xc2\xa6/^\xc4w\xb6\x9dE\xd5;\x00d\xcc\xb2\xd8\x88\xc6\x14W\xf2\xf8\xf2 5@(\x14)\x11\xec\xdc9\x18\x15\x88\x15\xab\x1b9\x80#i\xc4\xcc\xa94.\xc5\x878Wgb\x0bJ\x05\xe7H\x1bY\x1a\\\x18w\xab\xcf\x8a\xd8\xa1\xeecT\x1b**\xba\xd9\x1d\xd7\x7f|\xf2\xb9\xfa\xac\xc1\xb3tu\x88a\x83\x9f\xf7\xdd\xa7KZ\xb1\xa6\xa0\xed\xe7^\xbe\x17\xfa\xbe'\xe5ldU\x1a\x9f\xb6\x852Hky\x06\xea\x92\xba\x0b\xa5\xead\x14gv\x94\x1e.\x11\xf5\x99\x08\xc3\x16\x87y* \xd0]6A\xdd\x11-\\\xf5\xa0\x94\xfd;fW\xd4\xecf\xe8\x87\x83\x94\xa1H\x1b=\x02\xfd\x93p\xfa\x15\x82\x13\xf7w\x80\xc1\n,~\xdfP\xe3/O\x8e\xb4\x81#)\x9aK\xd6\x14ug\xf9q\xf7K\x86\x11\xb9D\xf5X\xfaY\xed\xdf\xe9\x06\xc7j}Ft\xef\xf8\x08\x93\n\x0f[\xcd\xf7_Yb3\xffY\x98\xf5\xd62g\xbbO\xce\xee\xd6\xb5\xa8\x96\x03\x9d3\xd2.v\xab#T:\xedlO\x8a\xea\xd9m\xb1\xa1]}\xc8\xa1\xe8*\xf0\xab\x1f[\xff:6\n\x15\xe0\xb4\xf4H\x8e\xf2\x89\x8e\"m]\x06mY\xd7\xb2\x12\xbd\xd5+\xa5L>\xdf\x9cJ\xe9\xc5\xc4\xe9)U\x00\x08\x8b\x0c2\xe3\xe0\x02}guz\x8f\xcc\x80\x81\x89\xdd\n\x06\x02\xc8G\xdd\x9eW\xba\xd0\x92t\xfb\x870t\xb8tY\xb1\x06\x0bA\x1d\x11\xd0\xa1ZO\x1dAt\x00\xde\x1d\xf5\xc1\x1b\xe8!F\x81\x06yxH\xa9\xd0\x8fh\xa8\x07$mw\xe4\xa6}\xc3{dF\x00\x1b\xf1\x15\x82\xe7\xe2\x95PA\x80H\xdc\x90\x8a\xf1\xdb\x9el\x08#A\xd5W\xfb\xb9\x88,\n\x87{\xf0\xd4K\xa9j\x082\x1a\xe9\x98\x96b\xbb\x10\xd0\xdb\xa2\xda\x95\xc6\x9di\xce\xbdE\x8c\xff6\xd0\x9c\xa5+\\Q0\xbd\xe5|\x9a8K{V7\x1b\xca\x95\xa8\xd2\xf0\xdb\x9d5\x80\xb3\x06\xf0\xb7\xa1\x01\x0c\xcf\xcf\x0cU Hj\x8aN\xd0EP\x8dV\x04\xba\x83:\x14\xff\x93\x8eM\x18a\xcf\xbbS\xc2\xacw\"\xb6^\x8f\xa57\xa0\x17C\xd6\x0b\xe3\xeay\x05j\xbf0\xcd\xbc\x88z\xc1\xdb4~!e\xc6\xd2\x0b#\xe9\xe5\xc5\xd1\xcb\x8a\xa2\x17\xc4\xd0c\xf3\x10\xf4r\xe2\xe7\xc5\xd1\xf3&c\xe7\xe5D\xcecq\xdc\xbc\x9c\xa8yQ\xcc\xbc\xcc\x88yA\xbc\xbc)hyad\xbc\x0c\xb8xI\xa8x\xe3\x10\xf0f\xe2\xdf\xe5E\xbf\xf3\x01\xb2eE\xbe\xcb\x8f{\x97\x15\xf5.\x0d\xf3.+\xe2]\x08\xef.3\xda\x9d\x0f\xeb\x8e\xa5\"\xddM\xc5\xb9\x93\x98v\x08A\x1c\xe5n\x06\xc6\x9d\x07\xe1.x\xc5\x07\xd1\xed\xe2\xf7\x7f>d\xbb\x10\xae]\xb8\x1fY1\xedB\x88v\x99\xf0\xec\xe6\xa1\xd9!' \xbb\xca\xf3\"\xd91\x14\xc7n.\x8a]\x14\xa6-\x80`\x97\x84_\x87\xc39\x8d\xc3\xae\xc3i8\x00/\xb3Q\xebR'#\x05\xb1.<\xee$\xb4\xba\x91Xu\x18&W\x08\xa7.\x0fJ\xdd<\x8c:\xef\x1a\xce\xc0\xa7\x8b\xa2\xd3\x85\xb1\xe9b\xc8t\xde\xc9\x1c\x83J\x97\x82I\x87 \xd2\xcd\xc4\xa3KD\xa3\x1b\x87E\x97\x84D\xe7\x01uC\x9b\xf7\xbc\x9b\x82@7\x1f\x7f\xce\xdb\xd1\xc1\xaf\xb3\x90\xe70\xa4\xb9\x8c8s8\xca\xdc,\x8c9\x0cS.7\xa2\\\x08O\x0eE\x93\xcb\x87%\x97\x15I.?\x8e\\:\x8a\\\x12\x86\x9c\xb2\xd2\xa4 \xc8\xa9W\xa3\xf8q(z\x1c\xdez**X\x1c9n\x04n\\\"j\x9c3\x8c\xdc\x88q9\xf1\xe2P\xb4\xb8\xbcXqy\x91\xe2\xe6\xed\x87$\x94\xb8\x14\x8c8\xf3\xe6\xc0\xf0\xe1\xa4\xae\x86\xa1\xc3\x85u\xa0\xcc\xc8p^\\8\x0c\x15\xce\x8e\xb5\xcd\x84 \xe7UZ1<\xb8T4\xb8$,\xb84$\xb8(\x0e\xdc\x08\x148\x0c\x03\xce;~k\xb6\xf3\xe0\xbf\xf5\x01L\xd3\xab\xfe:;rHt\x0e\xee[\x9f+\xe8s-\xfb;f\xfcc\x1e\xe2\x1b\x1b\xefv\xf1b\xbd\x05M2V\xf73\xe1\xbc\xf9Q\xde\xd2\xbb\x82\x1a\x80\xa6\xe3\xbb\xd9\xf9\xbe\xfa\xf1\xa1\xbby\xb1\xdd\xd2\xfb?\x15\xd7-\x8e\xea\x96\xde\x07t\x0e\xf3\xe1\xb9y\xd0\xdc\xbcXn\xe9\x1d\x1f\x8d\xe3\x16Fq\xf36\xec\x0f\xde \xcfcf\xf4\xb6\xe1\xa5\xe9\xc5n\x0b!\xb7E\x07\x89G\xe7\xa5\x0et&b[?\xc4(^\x9b\x0f\xadm\x18?8\x11\xabm\x02g\x8d\xa3\xb4\xc5\x8f]^\x84\xb6\x91\xf8l\xde1C4*\xd6\x8f\xe2\x15<\xce\x904)\x90\x1d\x93-\x84N\x16\xc6c\xcb4\x9clHl6\x9a\xc18\x1c\xb6$\x14\xb6\x8c\x03\x1e\x8d\xbf\xe6\xf1\xd0\x81=\xeeT\xf4\xb5 \xf6Zp\x98\xf1\xc8ek\x12\xa6\xc0\xabaPjQ \xb5\x89b\xf0\x1c\x085\xf1\xeb\x80^O\xc65TE\xe1\xd3\x92cm\xa37Wz@]\x9b\x174-\x1cG\x1b\x00L\x93Cr\xf3\x16\xd0\xac\x85\xc0\x0e\x9d\x10S\x98\x17$\xcd\x03\x91\xe6\xdf\x86\xb9\xe1\xd1\xb2\x82\xa3\xe1\xd0h\x19\x81\xd1\\X\xb4|\xa0h\xa6\xb2m\xb6\x90\x13\x10\x0d\x85C[\xe5\x05CC\xa0\xd0r\x03\xa1\x8d\x83A\xf3d\xba9A\xa5 \x91\xad\xee\xc7\xb3\xc2Y\xc7'\xb6u\x0b\xff\xc0\xf9l\xe1\xc8\xd7 O\x8b\x89\x15\x13\xe3_\xbdt\xce\xb5\xa5\x13\xe3ac\x11\xb1\xb9cb3G\xc5\x9ekK[O\xce\x08Y\xb9[#1\xb2y\xa3d\x13\xe2d\xb3G\xca\x9ekK\xcbgTd\xed\xec\xd8\xda\xdc\xd1\xb5\xe7\xda\xd2\xe6\x93\x16g\x9b9\xd2\xf6\\[\xfa\\[\xfa\\[\xfa\\[:\x1e\x95\x9b\x10\x8az\xae-\x9d29)\x91\xba\xf1YH\x8a\xd6\x1d\x1d\xaf{\xae-\x8d\xd1\x8dF\xef\xc6\xe2w\xe3\x11\xbc\xe7\xda\xd2\xe7\xda\xd2\x83\xe7\\[\xfa\\[\xdaz\xb2F\x04?DL\xf0\x98\xa8\xe0\xc4\xb8\xe0Q\x91\xc1\xe9\xb1\xc1\xe7\xda\xd2S\"\x85\xf3\xc6\n\x9fkK\x87\xa2\x86\xd3\xe2\x86\xcf\xb5\xa5'\xc6\x11\x07U\xf0sm\xe9!\xf5\xec\xb1\xc5n \xf0\xd4\xfe {6g\x8c1x\xa2\x8c\xc1\x1fg\xec\x84Hf\x8a4\x9e\xec\xdc:\xd7\x96N\x8c=F\xc9\x9dkKg\x8dE>\xd7\x96\xee\x9f\xcc\xd1\xc9#\xe2\x93\xcf\xb5\xa5\x8d'S\xbc\xf2d\xfe\x1c\x8fZ\x8e\xcf*Fg^\xe4\xf2\xe8\xd8\xe5\xe0\xf8!\x1a\xbf|\xae-=w`\xd9\"\x9a\xe7\xc54'F5g\x1f\xfa\xe8\xd8f/5v\xae--\x9esmi\x18\x13\x1e\x9dtm\x8e+\xa4\x9c9L:\x16(}\xae-m\xfc9\xb4Us\x07Og\x0e\x9f>\xd7\x96\x1e\x11J\xfd\x9f\xaf\xb64\x0cww\x1f\x8cl\xdd\x9c\xfd\xcf\xe7\xe28\xfa9Cc\x0f\xfb\xf07\x04\x8d\x1d\x08\xdcO\x03\xc4F\x08\x8c\xc8\x1b\xb0\x8b\xa0\x8fN\x19\xd8\x17-\xf3\x9c0\xfe'\xebl\x19\xb5\xa8\xc5\xc9\x95\xe1\xc0\xb2\x00\xbc\xb2%L:d\xb2\xd0<\xb6\x9bF%\xea\xaa\x08IDb\x90\xbblE\xdab-K\xd4\x8b\xfe\xbb\xef\x85T\xcd\xb0\xa2)\xa8\xe2:IT#\x89\x96\xc1 \xc7\xe3\xc3\x90\x8e \xce\x00\xaftj\x04\xac\xc9Q\x96\x83\x93\xc2\xbe\xfe\xb9\xe1\xd2\x9e\xd8\xd6\xc7\xa6^\xd3\xb6\x95*\xbd\x98\x0f\x84\x9e\xe2\xc9\xe2\xcf\xa2\xca\xf7\x05\xe6\x0f+\xaauy\x92\x0e>\xce\xaa\xba\x97\xb9\x16C\xf8xOk\xd9\x17%\xc8\xa8^xs\x1bH\x1f`\xfc\x18)y(\xbdD\x14XC\xaaV\xfa\xff\x0ed\xbd/*'.Q\xf4\x02-x\x12X\n_E\xa1$A\x16\x97c\xb3\xa7\xba\n\xef\xb6\x98h|t\xf2\x04\x1d\x1bz\xf3@\x07hO\xda\xfd\xccM\xee\x89l=\x92\x86-[\xca\x96\x18\x9b\xd1O\xc4\xca\x14\xeb=\xe0W\xa2\xf5g\xd1BQ1\xbaC\xaad\xea'^P&4U\x902]\x10\x9f\xb2n\xc1\xafI\xc3Z\xca\xbe\x173\x87m\x19\xa1\xf5\xb3%\xde\xa5\xa4\x1d\x89vA5\xcf\xc9\xcas-7\x1d?\xfe\x83w\xf9O\x99\x9b\xef%\xd4\xcc\x84\x87\xe3\x12.m!\xf8\x1f\x8fP\x9f\xd8\xf1\xc4\xfa\xdf\xfa\xb36\xa0\"\x84\xc5\x07\xebc\x9f\x0b\x97\x97.9\x1e3S\x14\xfbO\xc9\x83\x99IS\xaemUk\x9a\x99l\xb7\xfe\xfd\xf5\x89\xb0Q\xcei\xea\x96N\xad\xe3\x9f\xa6\x82\xc8\x13mIw\xdd\xb5*52y\xe2$\xcf4\xaf\xc1\x1bR\xb6\x14\xcd\xe1\x1f\x95\xf0>\xda\xa1\x11\xcb9\x85\xd8\xc4\xa4\x88;\xf9\xf2Oad\x0e*$\xe4\xa1B\xfc\xa2\x8a]S,\x90\x93\n\xf1\x19\x84\xc4Y\x84\x19\xf9\xa9^\x82\xccJ\xb4\xf0D\x0bO\xccS\xf5\x12\x0b\xe4\xaf\xc2\xd4\x1cV/5\xd1\xa9H\x1e+@\x86\\V\x98\x9e\xcf\xea\xa5G\x92rZa^^+L\xcdm\xf5w\xbb,\xc5|E\xf3[ab\x8e\xab\x97\x98\xc8lK\xc8s\x85\x19\xb9\xae~\x82\x94\xc5\xf2]!g\xce+@4\xef\x15r\xe5\xbe\xc2\xac\xfcW\x18\x9f\x03\x0b9\xf2`aF.l\x80?yTb\xfdd\xce\x89\x85\x07\xca\x8b\x85\xfc\xb9\xb10\"?\x16&\xe7\xc8\x06yx8O\x16&\xe5\xcazIu9\xb4\x81|YP\"@b\xce,\xe4\xce\x9b\x85h\xee,\xcc\xcd\x9f\x85P\x0e-\xa4\x89@Q\xf59]J\xca\x99S\x0b\xd1\xbcZH\xec\xd9\xb4\xfcZ\x94\x94\xbe#\xc29\xb6\x903\xcf\x16\xe6\xe5\xda\xa2\xf4\xd4E\xef\x17lf\xe4\xdc\xa2\xf4x\x7f\x98'\xef\x16\xb2\xe4\xdeBZ\x8a)\xc4rp!=\x0f\x17B\xc9i\x13\xf2q!B\xcf\x93\x91\x93!7\x17FO^Z\x8e.$\xcePb\xae.\xc0\x84|]\xf0'7F\xf3v!c\xee.\xf8:?\"\x7f\x17\xe2\xbb`V\x1e/@R./$\xe4\xf3BRN/\xc47\xc8\xb8\xdc^H\xce\xef\x05_\x8e/\xe4\xc8\xf3\x05\x18\x91\xeb\x0b\x13\xf2}!=\xe7\x17\"\x93\x1c8\x1e\xe1\xef\xd2r\x80!S\x1e0\xc4\xba\xe39\x19\x93r\x82QJ\x81J@\xf2\xc9\x9a\x1b\x0c\x81\xfc`\x98\x91#\x8c\x12\xf3\xd5\x0b\x92\xcf\x8c\\a\x94\x9e_M\x0f\xe7\x10\x83?\x8f\x182\xe7\x12\xc3\xac|b\x94\x1c\x96c\x0cS\xf3\x8cCl\xcb\x93\x96 #\xf3\x8f!=\x07\x19\xc6\xe6!\xc3\xa8\\d\xf0\x9fn\x08\xe4\x9b\xc2\x88\x9c\xd3\x94\xbcd\x18\x9b\x9b\x0cc\xf2\x93\xc1?\xc8\x19y\xca\x813\x84\xfdeF\xfe2\xbe\xb7}9\xcc09\x8f\x19'\xe5\xcbm\xe6O\xee\xfcf\xc8\xb4\xe7\x12\xf3\x9c!9\xd7\x19\xd0\xcb\x1c\xcfy\x86\xce:\x80\xe7=C\xa2v=9\xff\x19\xa5\xa6\x836\xfd9\xd0\xe0\xcd\x83\x86a\x8f\xf3\xe5BC\xdc\x94\x82\xe7D\xc3\xa8\xbch\xecmOn\xb4\xefU,?\xda}\xd7KtT\x9e4\x80/W\x1a\xe2\xf3e\xadT\xae\x9ci\xe8c\xa2\xbdy\xd30\xb2o\x9e}?:\x87\x1a\xa5b&)\xf8\xf2\xa8a\xd0\xa3X\x87\x8d\x7f\xcc\xcd\xa7\x86\xf9N\xda@n5\xc4W\x02\x86\x83\xcb\x96c\x0d\x91/\x9007\x10\xc9\xff\x86\xf8\x86\xd6O\xea\xf4\xc1\xa4\\\xf0 \xb9\x84\xdchH\xc8 \x87\x87\x19l\xc6\xfcp\x98\x9d#\x0e\xe9y\xe2\xf0p\xd31.gN\xce]w(\xe9\\vo\xfe:\xe4\xcea\x07O\x1e;d\xcee\x87\xde\xa8\x82\xe4\xb3\x83\xa3\x05\x8c\xcaiwh\x89\x1cw_^;d\xc8m\xc76\x06\x9e\xdf\x0ess\xdc\x1djX\xce;\xa4\xe4\xbd\xe3\xa7%\x90\x9a\xebM\nV\xe9\xc0\xf6W\x8a\xde\xfb\xebW\xbaoii\xc1\xd7\\\xe9\x18_AL\xe8*\x06\xa3\xb3F'\xff\xa8\xbc\x0e\"nZ\xf8\x89\xb5v\xd31\x16\xc9\x83\xfb\x83\x88\x8a\xf2\xb8\xf0\x1e\xd2@\xbd\x8c\xd6\xea\xe4@uT\xf7\xb0T#\x95\xdb\xc0\xe2\xa6&\xbf\xe0\xd2[\x9fY\x85\xb5\x8e\xe5\xef\xf9oD\xdb\x0cg\x11\xd7\x1d\xd3Ba\x9f\xe2\xde\xbf3\xec\x1a\xadX\xe3(;\xb3\xfb\xe5px\xa3)\xa3\x97\xa0\x7f\x12\x8e\xecBp\xf8\xfeJ2$\x1f\xe7>i\xa8\xf1\xd7'G\xda\xc0\x91\x14\xcd%k\x8a\xda\xb2\xc2\xf5\xe9\xe5\x0f4R\xb7\x01=\xbe~\xf6\x8d\x1cw\xfd\x0e\xab\xe1H\x9b\xb6h-3\x16\x1f\xf9rC\xab\xfa0e\x97\xf6_[*\x02\xffY\x98d9\x93\x04\xf1w\x85fa\xed\x85\xa2Z\x0e\xf4\xf4\xc4>\xf8$\x0d\x84b\xa7\xc1\xeeIQ=\xbb-6\xb4\xab\x15;\x14\xcf\xd9\xdeI\xa0!\x03MN*q\xea\xe2\xeeo7\xf1\x9551\x08\xf3\x8a1L\xf9\xf6\x08\xc8\x84\xeb\xba.\xc7s\xc6\xba.}|\xb1\xaeK\x1b\x84\x84\xffPT\xdbz\x12\x0f\xacj\xb6\x94\xb7\xd4\x12s\x15y\x16w\xcc\x17\xc8\x8c\x1bS\x12\x9do>\xba\xf4\xd9~o\x1c\xff\xf1\x17\x92\xc9<\x96\xbaW\xc6\xf80\xb1}nyK\xb3\xcd\xa1\xcc\x1f0K\x85\xccQ\xbd\xeb\xeba\xd3\x17\x9dv\xf41^\xd1\xf5\xfe\xb7_?\xd39\x88v&c\x98\x94+Qwg{\xd96\xeb\x07\x1e\x11\xda\x96\xeb\xa0\xb6.\x19\x99r\x88\x92\xd39\x99z\x06B\x83\xdb\xb4\xec\x17\x1b\x9c\xd1Vxp\x9e\xb5j\x99\x86=\x8a\x8f\x10\xbd]\xe53S\x0b\x9e\x05\xa0 \xad\xc3u\x15\xf0\xc3\xc8'\xaaqC\x82\x9dB>)\x8b$\x9fA\xef\xc0F\xc6\x91\xbfi\x14\xdd\x90Q\xcf\xda\xa8\xac\xae\xbf\xc0\xb1$k4S\x03\xa4=\xfeXR\xd1p\xc8\x8a7rRb\x96\xbcQ\x13c\xf7\xd0\x9a\x97SU\xdc\xf5\xee\x99\xe86\x1e\x12\xf4M\x8a\xf2C,W\xa4$\xd5z\xee\xa4\xa4\x0fu\xd0.\xea\x1b\xd1\x7f\xbb\xdd{\xacV\xf2\xb1\xf9\x15#\x0d\xc3l\x98\xf2\x91\xba)g\x11\xbf\xd8H\xfb&57\xea\x15x\x83\xd9<\xf3\xd9\x90\\Z\xf2\x00I5\xda\x1c\xbco\xd0\xa6\xc1n\xe6\xb0\xa3\x068\xf9(\xe1\xf8\xaaZ7\"\xa7L\x9a\xdaB9\xebE+x\xa9\xcf\xfd=\xd2\xf0*\x9fQ#J\x1aPp\xa1?x\x0d\xb2bd\xe9\xc6X\xf9\x8c1\xc9B\xf2\x8e4E\xc87\xbc[\x86\xe5\xd1:H\xf2\xfe\xf1\xc7\x13\x83\xc8\xa3\xbc!\x15\xe3\xc2+\xd9\x10F\xb0\xfdg\xf5J\xab\x81\xa4\x91\xce \xabA\xf5\xc7!\x91\xd8\xb0\xcc\x01\xd9\xd1\xca\xda\xdaK\x04nQ\xb1>\x95\xc4P\x98\x10\xa0\x89\xbe;\xd5N(\x01\x88\x11K\x80\xcaX\x14\x15(\x83\xe5\x18\x1f4\xd9\x1dr\x87\x9c\xc7w\xeb\x11+\xfc\"E\x10\xe0u\x12\x8a\x94\xa5-\x88\x0d|\x96V\xce\xd2\x8a\xf9\x9c\xa5\x95\xb3\xb4r\x96V\xb0\xe7,\xad\xfc\x8dJ+A\xbe\x12\\\xa0\xf8x\x9c\xb1\x98FB\xfa\xf3\xa9\xb8!%\xad\x98\x14\x1f\x9c\x97\x11\x82\xf4nM\x8fLn\xd3\x02\x858\xeaQ\x07:\xee4\xc8hQGT\xde_\xc2\xdf\x84\xf8E\x01\xdaS\xc1\x841]\x84\x9e\x95\x85\x07R\xa93*\x9as\x1b\x9a\x19s\x98\xa9\xd31\x18\xb7\xbd\xbd\x94\xe0dw\xae\xc3\xa6\x1a3\x0b\xd6\x98mr\xc8\xf8\x9d\x91\x9fA\xb7\xcf\xa0\xdb\xbfV\xd0m\xdb\xb5\x8e:\x15b\x8e\x0b\xeb#Em\xb4c\xfd\x93\xbe`^;L@.M\x82SC^R/\xa6\x9c\x8d\x88#\xc1\xbb\x1f\xac\xb9\xf4z p\xf7\x00\xee\n\xe8m\xd73z\xe2\x10\x89\xf4\x04U=\x03\xde\xe2\x87\xc5\xa4L\xd0\x01#\x02RL4\x8a\xdf\xd0\xae\xaeW\xe0Z\x9e!\x1aqE\x0e%\xe5Q\xee\x12\xd4\xba\xc4q&'\x06\x0c\xf5\xb4\x02S\xd1\xfa\x11\x85\xb4\xb0\x04\xfd+\x83+'\xa4m\xa9|<\xf5J)1\xb0\xb8\x98\xb9\xf1E\xce7tM\xb9xKXph\x99\x86\x14\xe83\xabS\xfb\x12S\x81\x12wH,J2\x87\xc23R\xd5I\xec\xf9\xb4\xf0\xce)*\x8d\xb7\x12\x13$Tc\x8aog\xe4\x8a\x1b\xe81V\xf9\xa3\x80\x16\x13\xd1_\x82vV4\xb8\xc8\xb1\xb7\xfae8OzV7\x1b\xda\xd0\x8d0\xe2\xca.\xe2\xdd3\xeb\x86\x0c\x94\x88\x90\xfc\x82\x8cH\x11L\x8f\xc6\xe8\xc2j_\xbb\xf2S\xb2\xfcb\x18Y\x7f\xa1\x90\x8c\xbe\xc5LWwD\x8e\x92\xcf\x18\x1e\x9aE\xa6\x92OD\xb2\x92\xcf\x98\xbee\x91\xb2\xe4\x93'A\xdc\xca\xff6\xa7C\x1cR\xf9Gu\xed8v\xc6\x18\xf72\x8e{\x87\xc2\xd1G\xd7\xa9\xa8ty\xb9\xedi)\x8c?\xa4\x02\xb2\x16\xec\xdf\x1d\xf0\x15\x17\xa8\\\xbbA}[I\xc3Q]\x19k\xa9\xe09\x05@m\xbd.H\x17X-f\xd5\x88Pv\xe9m9%\xb7\x1d\xcfRx.\xfe\xc9\x87\xc1 c\x94OpM\xa5\x8du\xe4g\xb1\xd5{%\x03\x1f\xb5\xbdL,T\x1f\x9b\xde\xc7C\x8a\x89\xe6\xebv\x90\xcb\xe6\xce\xdc\xdbw\x1f\xdf\xbc\x10\x00G\xca\x18,\x91\x82\nq}]UZ2\xee DU\xb8#\x0e\x01#\x99\xab\xdbH\x97}\xce\xf7\xeb\xcf\xa7\xa2\x91\x9bbW\xefj\x81V\x92jS\xc2/\x03\xdb\xa2\xf4\xdagM\xb2(\xf5\xe6\xb3\xaf\xb0\x1d3\xda\x8a\xa4-G&\xad\xb3\xe1\xe8l82\x7f\xff\xb5\x19\x8eTGmy+$\xf9x%/\x93\xc0%F\xc1\x10\xbdR%\xaf\xd1\xe2Vw\x07\x0ce\xac\xa4C\x11.\x9c\x91f\xa6q\x96|b\x99\x8c\xbe$\xc6\x80^\xac@F\xb84\x86\xf7\xda\xf3_z\xcc[\x08#x\xe7\xc5\xae\xaf\xe9e/\x00w\xc4\x87\x0b^L)u\xe1/i1\xa9\x98\x85 \x8f\x10\x0b\x96\xb1`\xf3\nXL,]\x81\x02\n\xc5\x8bVL.W1\xa9P\x05WN\xb1\x19\x8b\x97\xa8\x98R\x9c\xc2\x07\x19\x1f-K1\xb5 \x05\xe7\xe2\x08\xb9`)\x8a)E(\xc2\xc5&2\x94\x99H*01\xae\x90\xc4\xcc\x12\x12S\x8bG\x00\x1a\xdf\xe2\x8b\x0b\xcaZ0\"\x7f\xa9\x88\xacE\"\xd2\xcaCL+\x0c\xe1\x99\xe0PI\x88\xf1\xc5 \xfa\xa2\x0f\xd8\x19\xf7\x94\x81`\xa9\x05 \xa6\x96~\x90%\x1e\x10\x82x\xd1\x87\x19\xe5\x1e<\x85\x1e\x82W|\xb0\xb8C\xfc\xfe\xcfW\xd0!T\xca!\xdc\x8fi\xe5\x1b4'\x1d\x10\x0b\x15n\xc8T\xb2aF\xb1\x06\xfc$aW\xf9\x8c\x02\x0d\xbc\xbd\x015\x86\x96f\x98[\x94!ZQ P\x88!\xa9\x04\x03\x8e\x06>\xae\xec\x02N\xc3\xc1\xe1\x9d]d!u2R\n+\x84\xc7\x9dTLad\x19\x05\x0c\xda=T:!O\xd1\x84y\xe5\x12\xbck8\xa3DB\xb48B\xb8,B\xac \x82w2\xc7\x14AH)\x7f\x80\x14>\x98Y\xf2 \xb1\xd8\xc1\xb82\x07I\x05\x0e<5\x01\xd0\xe6=\xef\xa6\x142\x98_\xc2\xc0\xdb\xd1\xc1\xaf\x93\n\x16@\xa08A\xc6\xb2\x04xA\x82\xa9\xa5\x08\xbce\x07f\x14\x1c@\x15\xafPY\x01\xb4\xa0@\xbeR\x02\xd3\x8b\x08 \x05\x03&\x95\n\x08\x96\x05H/\x08\x90T\n@YiR\x8a\x00\xa8W\xa3\xf0\xff(&>\xdez*\xf0z\x1c\xec\x7f\x04\xcc\x7f\"\xc0\xbf3\x8c\x19\xa0\xfe(\x80\xff\x0c\xe8~\xc7\x96\x84\x82\xf6O\x83\xeb\xf7A\xf3\xe7\x05\xe5\x9f\xb7\x1f\x92\x80\xf8S \xf8\xcd\x9b\x03\x83\xdd\x97\xba\x1a\x06\xb8\x1f\xd6\x81&\x83\xec\xe3\x08Q^x}\x0cX\xdf\xf6ug\x82\xd4\xf7*\xad\x18\x8c~*\x80~\x12t~\x1ah~\x14.\x7f\x04P~\x12\x8aIO\xd7\x98\xed<\xb0\xf8}0\x07\x16\xef\x90\xd6\x13gG\x0e\x89\xf6>\x13\x0f\xfc\xbd\xe99\xf1\xd1\xf2f-\xf8;f\xfc\xc3r\xdb\x98\xbf'\x81\xdd\xb3\xf1n\x17/\xb4}\xd0$cu?\x13\x9c\xbd\x1f\xc8>\xbd+\xa8\x01h\nl}\x07O\x8f\xd0\xf3\x01\xd6{\xa1\xea\xd3\xfb?\x15\x9e>\x0eL\x9f\xde\x07t\x0e\xf3\xc1\xd0{\x00\xe8\xbd\xd0\xf3\xe9\x1d\x1f\x0d7\xdfG\x9db\xe1\xe2\xde\x86\x13\xc1\xcd\x9cy\x1c6\xa7\xe70\x01P^\x18\xb3\x07\xe4\x86\x97\xa6\x17J~\x12\x84_8>\x0bo\x1c\xc1\x17\x8f\"\x8b\xab\xc3\x83\x07\x8f\xc6r\x85\xfa->>@\x15\xc93\x1a\x9f#\xd43\x9e_6E\xc8\x9f5\x13`a\x03\xc5.K&O4\x8b'\xb5?\x99\xb2w~\x05\xf0\\ \xf9\xd2 \"_,\xdf2&\x80\xe8'c\xde\xb47s:)wz\xc4\x98\xc3PXC\xed3W\x06uR\x0eu\xc2(\xd2\xd6%o&ur.\xf5\x1c \x1d\x18\x0e.KFu<\xa7:\xa1[\xd1\xbc\xea\xac\x99\xd5#$\xea\xae\xf5\xd4\x11D\x07\xe0\xddQSr\xac=\xa4\xc6@F\xc5\xb7{\xbeL\xebh\xae\xf5\xa0;\xd3\xb2\xad\xc3c\x9a\x9bqm\x11[\xb9P\x96S\x12\xb0\xcf\xb9i\xe7\xdc\xb4_Un\x1a\xbe~\xe9\x02\xf8\xc8T5\x8c\xd4\x14\xb8\x80\xf1\n@w@\x1fX\xee\x0f\xe7\xb7\xa5\x8b\xd9\x08\x83\x9e\x98\xe5\xe6\xa5\xf3\xdf\xa2yn\xb1L\xb7\xa0\xf8\x1d\x12\xbe\x997\xdf-z\x03\xc7f \xf2g\xbd\xc5\xf2\xderg\xbee\xce}\x8bd\xbf\xcd\xce\x7f\xcb\x9b\x01\x97\x92\x037#\x0b.o\x1e\x9c\xdc\xad\x91L\xb8\xbc\xb9p \xd9p\xd9\xf3\xe1\"\x19q\xd3r\xe2PB\xc1<\xb9,\x99r\x89\xb9r\xe8\x97\xa3\xf2\xe7fg\xd0\xe5\xce\xa1\xf3g\xd1e\xce\xa3{\x88L\xba\xcc\xb9t\xa9\xd9t\x99\xf3\xe9\xc2\x19u\xd9s\xea\xfcYu\x92q%\xe5\xd5M\xcf\xacC\x89\x89l;On\xdd\xac\xec:o~]T\xa4\x08\xe6\xd8\xa5I\x1c\xf9\xf2\xec\xc2\x99v\xf1\xded\xcd\xb6\x0b\xe7\xdbe\xcb\xb8\x9b\x9bs\xe7\x90\x13\x12\x0d*<\xe4\xcd\xbbS\xc7\x08\x19\xd0\xdc\xdc\xbb\x84\x84\xb3`\xfe]b\x06\x9e7\xa9ed\x16\x9e\x9f\x0e\x12\xfd?;\x17o\xcc\xe4\xa4\xe4\xe3\xc5g!)'otV\x9e'\xc9)\x98\x99\x97+7onv^pegd\xe8%\xe4\xe8\xc5\xb2\xf4\xe2yz\xc1\x05\x1f\x93\xab\x97\x96\xad\x87\xe6\xeb\xcd\xce\xd8K\xce\xd9\x1b\x9b\xb5\x97\x98\xb7\xe7\x9fD\xcf\xb6\xf6\xbf\x9f\x92\xbf\x97#\x83/\xd8e\xe7\xf7Yy|\x0e5$\xaf/kf\x9f/\xb7ofv\x9f\xdbe7\xdb/\x7f\xbe_8\xe3\xcf\x93\xf3\x973\xeb/s\xde\xdfCd\xfe\x8d\xc9\xfdK\xcc\xfe\x1b\x95\xff\x97\x9e\x01\xe8\xc9\x01\xf4e}\xa5\xe7}\xc5\xf3\x00Ge\x02&\xe7\x02\xa2\x03\xca\x9d\x0f\x987#\xd0\x93\x13\x98;+0w^\xe0\xfc=\x92\x94\x1b\x98\x96\x1d8\xbc\xd8\xb0\x0cA\xadmb9\x82q\xed-s\x9e` S\x10\xcf\x15\x1c\xf40W\xb6`P\x05\xc72\x06\xd3s\x06\x13\xb3\x06S\xf3\x06\x132\x07aL\xee \x9e=\x98\xee\x07\xca\x93A\x08\x91\x1c\xc2\xf4\xfe {6g&!xr \xed^\x84:h\xfcc^>\xe1d\xe7\x967\xab0j\x88\xb2\x06\x92)\xb30\x94[8\xaeC\x1e\xd3\xd7\xf4\x0cC\x94\\\xddxs\x0c\x03Y\x86\xe3F25\xd30%\xd7p\\O\xb7F\x80\xd2\xde%\xb1\xf1\x05\x01\xd2/\xca_Y\xcc\xd0\x14\xd6\xfd\x8b\x84\n\x8df\xd13B\x84\xac\x130\x99\x15\x1b\xac\xcf \xe7vtB\x07g\xb0\xdcs0\xd0H\xe6\x19\x0f\x06\xfaC\x80\xe9Lc\x95 \x01B]vE2\xef\xf0\x170\x88o8kn'\x96+\x18\x94'0\xa7\x18/T\xe0/Q\x80\x8a\xc0\xb8\x00\xcc\xd0\x82\x04\xde\xcb:,\x98e,?\xe0/<\x90\xaf\xe4@\xb6b\x03\xde2\x03lz\x81\x81\\\xa5\x05\xc2E\x05&\x95\x13\x98\\H@\x8cwh\xaa\xf1\x96\x10\x98\\<\x00\xc5\x1c\xf0\x94\x0d\x98S0@\x14\x07\x18\x8e\x06\xc1t\x9cR$\xc0_\x10`f)\x80\xa4\"\x00\xe9\x80\xff3\xa0\xfeg\x80\xfc#\x0c##\x94\x7f^\x10\xffl\xf0\xfdq\xe0\xfel\x90\xfd>\xb0\xfe90\xfd($?K\x01\xe3\x9f\n\xc3\xef\x85\xdc\x9f\x08\xb6\x8f\xc0\xec{/\xca\xb4\xec_\xe7\x06\x9d\x08\xa7\xdfC\xe7c\xf3\xfbU\xbc\xedy\xe0\xf9\x12,\xdf \xe7\xc2\xe6g\x00\xcc\x9f\x07\x95?\xd8\xe5\xc3\xcbp&<\xbe\x9ah\x93\xe2\x1c \xfc \xca\xbb\x07\xfc>\n{\xef\"@\xa7C\xdd\xbb\xdf\xfe\x05\x1b\xeb$`\xfb\x94\xc1\xc6\xc0\xec\xfdc\x8b\x02\xd8\x8f\x80\xae\x1f\xc2s\xfb\xe0\xea\xe7\x03\xd5O\x87\xa8G\xd7e\",}\x10\x90\xde\x0fE\x1f\x02\xa1G'+\x15x>\x069?\x00\x9b\x9f\x013\x9f\x000\x9f\x0e-\x1f\x05\x95G\xb0\xd9\x9d\xe6\x90wb\xe0\xf1\xf3`\xe3\xd1N\x19\xbf\xcc\x02\x89\x1f\x82\xc2\xcf\x81\x83G\xe0\xdfg\x01\xbf\x0f\x81\xdesB\xbc\xfb\xc0\xdd\x1dX\xf7<\x80\xee\xd9\xa0\xdc\xf3\x82\xb8\xa7\xc1\xb7G\x81\xdb\x95\xae\x1f\x83lW\xaf\x05\xc1\xda\x1dTs\xb7\xb5T\xd8\xed04{\"({\x02\x1c\xbb\xd5\xe5\x9c\x10\xec\xb3\xc0\xd7]\xb0\xf5|0\xeb\xf9\x00\xd6\xa7\xafn\x14T=\x06\xa7\xae\xb9\xf4\x10B]j\x12C\xf0t\xbf\xc4\x9e\x110\x1d\x85J\x1f\x82\xa4[=\xc9\x01\x8f\x8e\xaaNCH\xf4\x140\xf4(\x0cz\x1c\x00=\x08}\x9e\x08z>\x84;G\xc7g\xcd\xe2|\x88\xf3>\xc0c\x08n\x1eo\xdd\xdaMCB\xbd\xcdz\x1c\x94yG\xa7\xed\xbb\xd8\xb7\x89w\xc4\xf8\x87e*7\x7f\x8f\x02\x97\xb3t\x937\nS\xeeU\xe4\xad\xaef\x80&\xc7A\xc9\xd3\x9aw\xcc\x05\xd3!\xc8a\x10\xab\x05(\xf88\n;\x9e\xd6\xd7)P\xe3a\x90\xf1\xb4v'\"\x88ch\xe1(NxZ/Fa\x83\xf7\x0e\xbf\\nkk\xa3\x0c\xc9\xeb\x19\x99\x80\xfe=\xbcYP\xdc\xef\xbe\xbd|\xeen\xcf\x80\xd8Hd\xef~\x00\x06\xb9 \xa67\x86\xe6=t\xc4O\xc0\xf1\x1e\xc1\xae\xc2\xa8\xdda\xfe0\x03\xa9[\x18I\x07\xe4\xd20\xba\xd1\xb1A0\xc9\x01Go\xf6\x1e5\x88\x0e\x1c\xb2\xe2o\xfb\x80\x98\xfd\x98\xdb3\xbb>\x1ea\x1b\xdd\xd9\xfa\x19\x87\xad\x1dE\xd5\xce0\xb8\xd1\x18\xda\x88\x93\x02l\xfc\xf0\x14\xf4l/n\xb6wH#\xc0-\xa6\xc0a\x0f\xa1\xaf\x83\xa0\xd7#e\xba9\x10\xd7\xe2\xd7\xaf\xcc\x81\xf6Y\x11\xa62\x15\x84\xb5\xfe%\x02Y\xda\x99\xc0\xd5 \xc1,^\xb0j\xd9\xf5\xa4pdgg\x85\x83\x87\xac!\xce\x04\xa2\xf6\xde\xe1\xe27|\xfb\xe4\x84\x9d\x9e\x0f8\xad\xdd\xbf\x8a`\x1f+1\x17dz\x00,=\x13R\xba\xd7\xde\x14\xbd\x1eLz6\x8c\xb4\x82\xbdU\xe4z\x00\xe9U>\xe8\xe8\x01htN\xb8\xe8\x08P\xb4\n\xe1:\x1dw\x0d\xd9\xd0.\x84\xebGq\x06\x7f\x92Nry\xa4\x1c\xd1\xc2\x15)\xb8\x06\x16\xe1.\xea\x90\x99\x818\xe4xTg^\xbduc6\xeb\xa5\x14>\xc5]\x80\x96\xa6\xe6i\xcd:\x83]\x88\xae5\xfc\xce\xc1\xcbO\xa2\xfcT\xb9\xde[\xb7\x99\xce \x82r\xe7\xdf\xfag\xfc\xba$Y'\xda\x7f7}\xa0L\xdeD\x96\xc2\xac\xfb#C\xb9\xc4\x9f\xb4\xa1Q\xb8\xec\xe5~\xd5\xafYV\xc6\xc1\x0c\xb7\xf5\x96\xdd\x8a \xe9\x9a\xcfv)\x9d\x88b\x12I \x8f\xea\xea\x99\"\xf2H\xdc\xca\xa4\x0ff\x16\xfd>\x89a\x18\xbfp\x9a\xc2r\x0b\xdf\xd0]Q}S\xd6\x9d\xe3\xc3\xf0\x1e(\x9a\"\xfc\xe6(\xf6\xbb\x00\xd9\xe6\xff,[3\xf7@\xc8\xd6&y.\x862\x11\xee\xa8\xecx\xa4\x1f\x82\x1e\x1a?u{Rm\xf8\xd2\xc3\xae\xb8\xa1U?a\"$\xc8\xa4\xa8\xbb\"?\xe88\xb5\x9e\xd6\xfe\x1a\xa4L\xf3N\xdd\xe0\x05\x14\x12\x18\xdc g\xc7P\xa8\xd8\xa2.t\xab\xefk\xd1B}b\xcf\xea\xed\xb3\x8d\x14Mie\xcd\xccG.\x0bY2\xea\xf7:\xb0\xda6A\x93\xf5\x9e\xb3\x15\xe5\xe1\xe9\xe8\x8b\xed@\xef\x8aNO\x7f \x15\xf35=6t\xcdY\xdb\x0b\xd9g\xc9Y\xd50Z\x19c$&p\xd3\xbd\xb90\xdeDV\xa2\xacw\xc5\xda\x1cd\xb7\x06\x0d=\xd47\xda:\xcb\x87\xfb\xe1\xf5\xbf.\x1c\xeb~\xd1*\xd7\x8b\x8a\xb5\x11\xa1.\x17]tUwR\xd8\xbe\xa9o;\xa97\x97E\xe1#j\x1c\xe8\x17\xf6\xa0\x02W\x8e\xb4\xe1\xd4z\x89\xb6\xa8\xb6u\x1a?\xb6\xa0\xf0\x85\xdf\xbf\x0f\x0f\xeb#s\xba3Vmk\xa5\xa9\x16\xd5\xba\xc5\x019\xc7\xc3\x08\xf3\xbd\x8c\x03jj\xe5\x86\x8d\xe4\xf46\x82\xcf\xe3\x08\xa3\xbc\x8e\xe0x\x1e!\xc50\x95\x10D\xe6\xec\xfb\x8c\x9eH\x08y#a\x94G\x12\xe6y%\x01\xb9\xcb e\x06#\x05\xb3&{)\xc1\xf1TB\xa8;>T\xbay^\xcb\x01\xb1\xb9\xaeK\x87\x1f\x18?D\x9c\x99\xe0c\xf2\x10\x0c\xe3e\xa8c\x13B3 \xd1\x03\x00y\x9d\x9c\x10ttBVg'\xe4txB\xc8\xe9 \xf3\x1c\x9f\x90\xd1\xf9 Q\x07(Lu\x82\xc2\x1cG(6c\xf7G\xb1_<\xceP\x98\xe3\x10EhI~\xe4q\x8a\xc2L\xc7(B\xeet\x04\xe2XC\xba\xb6\xb2:Ha\xbe\x93\x14\xf2;Ja\x9e\xb3\x14\xe69L\xf1#\x8av2\x9b\x1b\x15\xb2\xbbR!\xa7;\x15\x92\\\xaa\x90\xd3\xad\n\x01\xd7*\xcct\xafbg\x1cq\xb8B\xaa\xd3\x15f;^\x11\x82\xae@\x0d\xd3\xdd\xb1\x80\xbbd!v\xc5{]\xb3\x90t\xffOt\xd1blO;m\x95\xf7\xd0\xfc[\xb8\x1f\xf3\xdc\xb5\x03b\xc2y\x8b\xb8l!\x8f\xdb\x16r\xbbn\x01q\xdf\xc2|\x17\xee\x80\x1as\x1c\xba0\xd3\xa9\x0b1_'\xf8\x9d\xbb\x90\xe2\xe0\x05\xdck3\xca\xd1\xeb\xa7\xe1\x98\xc8g9}a\xc4d\xc4\x9c\xbf\x10\x1dw\xd4 \x0c\xe3\x1c\xc1\x80y\xe8\x02\x0ea\xc8\xe2\x14\x86Y\x8ea\x08\xad\xe1D\x071\xc4\x9c\xc4\x10t\x14C\xc4Y\x0c\xa1\x85Mu\x1aC\x82\xe3\x18\\\xe71\xccs C\x9a\x13\x19F9\x92!\xc5\x99\x0c\xdeIC\xb7\xac\xef\xdd\x98s\x19f;\x98!\xd4\xd1\xc1\xafY\x9d\xcd0\xd3\xe1< \xe5\xba\x9f!\xb7\x0b\x1a2\xbb\xa1!\xe0\x8a\x06\xcc\x1d\x0d\xd9\\\xd2\x90\xd3-\x0d\xd9]\xd3\x90\xec\x9e\x86\x14\x175\xa4\xbb\xa9!\xd1U\x0d\xd8\xf9\x00\xd4\xa9 #\x1c\x9ba\xb75\xa4\xbb\xae!\xcd}\x0d\xd80r\xba\xb1a\xae+{@\xcbqlCV\xe76dup\xc3\xec\xfd\x10utC\x82\xb3\x1b\"\x0eo\x9f\x0b1\xc5Ok|\xa6\xa8\x8d\xf6\xd3Zi\x8d\xedh\xff\xa5\xcc}\\*\xbb\xc3\xb4d\xec\xe4\xdaP\xae\xf32\xa8\xe6\xa6\xe4\x95\xca\xc7\xc9.\x8d\xd2N\xa9\xe6\x93\x9ao*\x1f<\xebT>\x19rO\xe5\xe3\xcd@E\xfa`\x83\x17\xd8\xeb,\x0c\x87]&\xbc\xea\x84\xb46\xe9\x1c\xf4\xa2\xe9{c\x10\xd2\x14\xa2\xa1\x0b\xf8\xc6\x0c\x9e\n\xf3\xf3K\xfb\xfb\xaf\xfa\xf3\xd1\x1d\x0c\xfd\xdb\xd8\xb4\\A\xff\x93\xf2\xd8\xbc\xd2c\xfc\xc0\x08\xa3\xa3\xcfO\xef\xf8\xe9\xaaG\xa0\x89l\x9e\x98\x12\xcb~\xa3\xb6\x1d\x1e\x10\xf1\xdb\xc7\xb1 \x0f\x8f(}\xe2q:\xd8\x02t3\xbc\"-]\x90\xd5\xba\xe8\xe6\xf8\xe57\xaf\xae~\x94l\xff\x87z\x97<\x9d\x87v\xb7,\xaa\x0d\xbd\x1b\xce_Q1\xba\xa3\x8d3\x81\xe6\xf1-uC\x80O;\xbd\xa1\x15{`\x16'^\xb7~ \xb0!\xc2XS\xacN\x0e\x08\x11\xde5\xf98\x1d4?@k!\x87\xab!\x03X\xa5N\xcc'\xc0>\xc1o\xb7\x8c~\x197O\xbe\xd4\xf3b\x82\x8du\x93\x05\xb7\x0d9\x1ei\x03\xb7{\xaa\xcav}\xa1\xf7\x82\x85\x8a.!\x04I\x83\xfblD\x07[(\xaa\x96Q\xb2\xe1\xac\xb0!\xb7\xe2PZV\xda\x10k\xff h\xbc\xe1[\xab\xeb-\xad@\xfe\xa0k\xeeX\x1d\x16I\x84\xfc\x16\xe9V\xdf\"\xa8\x9d\xa0_\xe8\xfd\xa5TE\x8e\xa4h\x94[\x8d44\xb1\xd7\xfe>\x8b\xae\xb5fu\xd2\xb6,\xd6\xe2\x8a5{\xadZ\xbc\xe5]\xa6\x87\x82 \xa0\x0b\x11\x80\x03mm\x85\\\xd0;\xba>\xb1\x0e\x1a\x08__\x9b!\x188(-kNk\x81\xa6\xa7z\xa40W\x04\x1b\xe0\xfa\xe5\x9d\xf8v`\xf8-\xeb]\x98\xff\xe8\xc9Mf=H\xc5\x1fk\x03\x0f\xb6\xbb\xf3\x06>\xe1\xf3\xb6\xb2\xd8\xb8\x92Pl\xd5\xbd3\xf1\x1di\xaf\xbaH\x8c\x84y\xd8\x91vyK*\xe6\x82\xa9z\xee\xb0S 0\xf2;\xd2\xfeQ\xd0\xd2\xd7\x8f\x06\xa4:U\\\xdc\xa9\xb7p[7_\xe0Vy\x01\xa5\x83\x8a\xdd S\xba\x8c)Y\x18\xdd:\xb5\xb9:\xf5\xa9\xed\xbb\xd4\xe3\xba\xec\xb8.\xb6f\xd2\xfb\xcd/\xf4\xd3\x01\x8d\xd1TS\xda#m\xdd\xf5g@\x10Q\xde\xec\xe0\xba\xbc\x17\xee\xcd\xe4e\xd9\x10F\x12\xc7n \x15\x01L\x06\xc2\x88\x90\x03\xab{A\x1d\x1a\xcaNM\xa5\xc3\x94\xb4\xd2&\xdc\xa82\x1c\xad?\xe8p\xc5\xe0\xc7O\x1f>\x1a\xe4l\xbfXI\xab\x1d\xdb\xc3\xb1\xa1\xdb\xe2N\xd6\xda\x12E\x0b\xf9\xca\xb6\xf4H$R\x19oU6&\x11m(\xe2\xde\xe9\x1am-Y\xf8\xb5\x19\x9de\x85M\xb5\x8ck\xc3\xc7\xfa(\xb1t.`ub\xa2#\xb4\x11\xf2\x85\x96\x80\x0cb\xeaP}e\x0dgMD|\x02\x93!\x81\x96\x0d\xe6\xc7vg\x0bR\x9f\xde\xff\xa07jL\n\x19, g\x86\x16\xed\xb2\xdeYQ\xd3\xf1\xc5P\x84\xcf\xe2\xcd\xafB\xbc\x01\x18\x08\xb0\xee\x97CTj\xfd\xc4%#qA\xf7w\x8a\xd0\xe2T\xa1\xd0/\xf4\xfeY//\\\x00i\xdbz]\x90\x1e\x04\x0b\x0b\xa0\x10{\xc6+\xea\x0c\xba \xa5\x03\xc1\xa8[+,oCoh\xc9\xd7@\xc4*\x10\xc6\xc8zo\xda4\x8d\xedl\xef\xa6\x81\xcfA\xeb*\xdf\x16\x950\xa1\xcaP^~\x1b\xea\xbf\xbc\xda\xd3\xf5\x97\x8fw\x03\xad\xf8\x07\xc2hs\x01\xac!UK\x94\xd3\xf4@\xeeaE\xe1\xe7\x13m\n\xba\x81\x13\x9f%~\xbeZ\xaa\x0e\x8aGT\xfaCVQ\xc9\xa0\xa59\x9b\xf1S\xe84\x9b\x9c\xea\x178\xd4X\x98a`\x9b\xc7vj\xd6\x00\xc3Pxa\xce\xe0\xc2\x8c\xa1\x85\x81\xc0B\xcc\x87\x92\x1cV\x98/\xa80\x16R81\xa0pr8\xa1\x18\xb7\x1b\xe5\x17\x08&\x9c\x1cJ\x88b\xabx\xd1U\xe6\x85\x11\xc2\xe9\xe8\xd0\xf3\x05\x11\xe6\x0e!\x9c\x1d@\x98=|pV\xf0\xe0\x8c\xd0A\x94\xadd\x0d\x13\xcc\x1d$\x981D0%@0cx\xa0?80kh \x1e\x18\xc8\xd2\xc2\x023\x07\x05b!\x81\x93\x03\x02Q\xb93p\x15\x07B\x01c\xb7t\xae0@\x7f\x10`\xa8\x07\xf3\x02\x00\x1d\xbc\x16\x0c\xb1%S\xf0_\xe6\xd0?\xf7\xc2\xcd\x19\xf6\xc7\x90\xa0\xbfy!\x7f\x91\x187o\xb8_B\xb0\x1f\x16;3&\xd0\x0f\xfb\xfe/\xf8\xd8'\x86\xf8\xa5\x0d>\x1e\xde\x17\x1aiBh\xdf\xa8\xc0>7\xd0\xc9\x1f\xd4\x97#\xa4oN@\x9fg\xb5&\x07\xf3EB\xf9B\x81|\xe10>\xcf\xe4\xa5\x87\xf0\xc5\x03\xf8\x9c\xf0\xbdY\xc1{I\xa1{c\x02\xf7\x12\xc2\xf6\xd0X8\xa4Y\xf4\xbdx\xb8\xde\xdc`=O\xf7\xac\xdf2\x87\xe9\xcd \xd2C\xc3\xf22\x07\xe5\xe5\x0d\xc9\xf3\x07\xe4!\xe1x\xb9\x82\xf12\x86\xe2\xe5\x0e\xc4K\x0d\xc3K\x08\xc2K\x0e\xc1K\x0b\xc0C\xc2\xef\xb0VSC\xadb\xa1w\xc9\x81wIaw\x83\xce\xe7\x0d\xb9\x9b\x15p\x87\x85\xd8\xe5\x0c\xb0\xcb\x19^7g\xbd\x13B\xeb\xe2\x81u=\x87\xf7{\xab-;\xa8\xeb\x85\xd1\xf6\xd3\xfe\x15\xb1\xe8\xfc\xdcI\xaf\xd3\xcb\xea\xdev\x1c\x05J\xacX\xbd\x90\xfe9\xed$17\xba\xaf3\x19\xc3\xf1\xfbC\xbc\xde\xc5\xdb\xbe\xaa;\x00\x07NkH&%\xbc\xcc\xe5\x0f\xd2\xff\xcb\xe9\xe9~&x\xe91&#\x96\xf6B\xab\x13\xea\xd5\x86\xdc.G:\x93\xad\xb3\xc3\xe7\xb3>\xb1\xe3\x89\x19q\xab\xda~\xfa\xb8\x85\xb2\xde\xedh\x03O\xf8\xde\x92D\x9f.\xe0G\xe163\xa8Tu\xf5lC\x19m\x0eEU\xb4\xacX\x1b~\xee\x07f7H0\xa0Ig\xb8f\xf2\xf1#\x9bXsi\x12B\xb8\xd7\xd0\x97n\xbe\xfe\xcb\xb8\xad\x19\xe2i7\xfe\xe2\xf7>\xfb\xbd\xee\xe6\xe7\xd8 \xe4\xe3\x19\x8a|\x82\x03\x92OxX\xf2\xf1\xfa\xe4\xe5\x13\x19\xa1|\x02\xfey\xf9$P\x89\x19H\xf53\xf5\x12\nw\xde\x17\x96(\x9f\xd8-`?\xf1\x91L\xbe\xc1\x82{\x0c\xeb\xff\xec\x0b\xce|b\x03\x9b\xee\xa2w\xe7\xd0\x88nt\xfe\xe88\xe8!\xd2\xb9\xb9\x01\x8f\x161-\xe2\xab\xb0\xc7X\xeb\xa9\xac\x9f\x1f\x91\xcd(\xae\x9fP~\xc6\xea\xd6K4\nD\xb7\xe8ogt\x14b\xe0\xa6~i\x05\xf85\xf4\xe7\x13m\x99v5\xf5\x02\xc7\xc4H\xc3\xe4\x86u@\xa1\x00\xd1s\x9beN\xcc{\x12 ;\x17\xbf\x99\x1f\xb0q.~3#H\xe3\\\xfcf\\`\xc6\xcc\xb0\x8c\xccA\x193B2r\x07dd\x0b\xc7\xc8\x1b\x8c\x91-\x14#\x1e\x88\x91-\x0c\xe3\\\xfc\xe6\\\xfcfN0\xc5\xb9\xf8\xcd\xbc\xa0\x89\x94z0\xe7\xe27\xc6s.~\xa3\x9fs\xf1\x9b\xee\x99\x11\xfe\x90\x10\xfc\x90\x1e\xfa\x10\x0d|8\x17\xbf\xc9\x1c\xe6\x905\xc8!g\x88\x83/\xc0\xe1\\\xfc\xe6\\\xfc\xc6z-\x1e\xc6p.~3=xa\xfa\xeaF\x03\x17ba\x0b\x9aK\xb3\xe2@[F\x0e\xc71\xe6P\xdbJ[\xf4\x86\xa4cCo\x8a\xfa\xd4JW\xea\x02\xbe\xe5z\xb0\xf0\xa7\xb6\xf0\x07x~\x01\x05{,\xa7\xfdV\xfc*\xb6\xc8\xa6\xb0\x92\xfa\xea\xad9M\xe2$\xeb>v\xa2\xae\xd4Jnj\xd6\xc9\xd4\xaa\xc5\x1fH\xcb^ L|\xb3q\x83\xde\xef\x7f\x0f\xcf/,\xb6\xca{\xc4e\xea\xb6hEK\xfa\xba9'\xa2\x9e\x13Q\xcf\x89\xa8\x0f\x91\x88\xda9\x91Tl\x89$\xd0\xe5\x9cJ\xb9mM\xdbV\xb2r\xc4\xcb\x00\xca\xcat1`\x15]ot\x1d\x0d`\xfb\xba\xa5>\xd2\xaa}\xc5\xbc\xdb\x81\xafS|j6\xa0\xa9t\xf5OH\xc5\xe8\x02\xfe\xb8\xa7\x0d%-\xfcP\xef\x06\xa1]\xb2/\x17\x8e\xc9\xc9X\xcb\x03edC\x18\xb9\xe8\xa8\x0ba\xd1\xee\xa8\xd9I[`C\xc3\xc0\xbe^<\x7f~\xc1\xff\xe3\x1f\x17\xbf\x13\xff\xff;\xf1\x05\xbe.}\xb4M\xcc\xb9\xd7\xd0\x92\xde\x90\x8a\x01\xbb\x93\x98\x07|'\xe9\xfe\xeb\x95\xf9\xd8\xdb\xb6\x19\xd9\xb5\x86\xa3TJ\xbbZX\x16\xf8\x00\xad\xbcv7t]o\xa8\x89\xc4\xb4n\xee\x8f\xac^\x08<\x85\xb6\xd8u\xa1A\xaf\xea\xc3\x91\xac\xd97\x05{\xc9\x99\x9dd\n\x0e3s\x19\x18\xbdc\x0dY\xae\n\xd6.[V7\xaeW,%r\x86\x96\x16/E\xb9\x96co\xc3\x03[\x06\xe3\x90\xf8\x15C+ \x97\xb1A\xc6\xffPa\x08\xe5\xecbU0\xc9\xe8\xfb /\x04\x0e\x9a0&\xb2\x1ah\xd5\x9e\x1a\xda\x97E\xa2\x95\x98\\\xb9b\x8c|\xa1\xad\xac\x00q(\xaa\xe2@\xca\x1e7D\xd1\x93\x0dJUD\x08\x1a\x92BQ\xed\x86-V5o\xa1\xa1d\x03-\xd9j#\xac\xfc\x9d\xcfg\xb5QV\xd8u]u\x95\xc3\xa4=\xad[hv\xb7h\x8b\x1d\xdf^}la\xb1\xab~\xec\x82\x9b\x9cY\xa6\xd5\xe9\xa0\x17\xe1\x19|\xb8\xfa\xee\xed\xf2\xc7w\xaf\xdf,?\xbd\xfdp\xfd\xe6\xd5\xd5\xb7Wo^#\x7f}}\xf5\xfe\xcd\xab\x8f\xc8\x1f>\xbe\xf9_\x1f?\xbd\xfc\xc1\xfb\xc9\xf2\xe5\xa7\xff\x85\xfc\xf1\x877\xdf\xbd|\xf5\xbf\x97/\x7f\xbcz\xfbn)$W\xf7\x9d7W\xd7\xcb\xe7\xff\xdfs\xb5\x0d\x84\xbe\xf9\"\xd0aO\xc4\x9e\x9a\x8d^\xf2\x95w\x94\x9838\xf0\xbfH\x0b2k\x81\x8b\xd5-]\x9f\x9a\x82\xdd\xc3\xeeD\x1a\xce\x9fh\x1f7*\x16\x8e\xcf\x9f\xe1\xaa[\xd7U[lh\xc3\x8f&W\xdd\x8a\x965\xf7b\xeb\x95%HI\x9d7&Z\xd2.3%q\xbd\x12K\x08t]\xb7\xf7-\xa3\x87\x05\xbc<\x1e\xe5\x89\x175\x9f\x84\xdfLnJm\x19\xed\x88\xea\xcd\xd6\x91V\x1f\xcb\xf0\x06\xd1\xb9\xb2\xf8B\xcdo\x95\xa0n|c\x84E\xf2=zj\xc8N6W\x1fi\xc5g\xe9\xc0\xdb\xbb~\x0fd\xc7Y2\xd3\x85\xa9JY\xbcm\xc3\x87\\\xd1[X\x93\x0eFEH\xfdE\xdbO\xbb\x98.e,V\xac\xb8h\xfa>@[+{r\xb1\xddR\xbe\xc5\x15!\xc2G#\\@D\xceq\xcb\xf8\xfe\xb7 \x18\xd5j\xf4\xb7\xafg?{v\x8d\x89\xc0X\xc1\xa9\xeaW\xab\xdb\x1a\xfcD\xea\xfai\xb2\x89\x86\xfe\x9bX\x95\x05\xd6\xa6\xdc\xf2/\x9c_,\xacG{\xef\xe9\xe25r\xca^\xd7k\xc5\x05\x14\xf9\x1b\xdaH\xbe/6i\x17\x1e#\xafP\x19d\xec\xf4B\x1d\xc9\x17\xeeOR@\xdb\x9e\xc4\xcdd\xf5C\xee\x1b>R\xd1\xe2\xbd \xee\xb5?\x1dH\xf5\x8c\xf3)\xe1ib\xf4\x8e\x9dH\xe9\x18%\xb8\xcaw\xd4\n\x86r\xb4\xd9\xef(z\xa2\xef\xc3)\xea\x16\x11\xbb\x91\x7f\xf7\x1b\xffls\x06\xe3\xce8\xff5e\xd6\x0d.\xf1\xba^\xbf.\x1a\xbaf/Ow\x0bx\xd9B}<\xd6\xeaR\x18\x92\xbf\x90\xbb\xaf\xdf\xc6\x9b\x9a\n\xc6\xdd\xed\x92\x9fO\x85\x9ac.\x86\xea\xd6\xeb\x1b\xda(\xff\x97\xfa\xd3c\xf8,\xffk\xc9\xa5\xd2\xcf\xc1iP\xf1\xe91V\xfa\"\xf4G\xb9\x05Vd\xfd\xe5\x964\x9bv\xe0\n\xc5g\xe7\xe5\xa1\xa8j)j\x18\x07\xa2+g\xa7\xd8\x99\xdcV\xe8\x8eT\x9c\xfc\x85\xfb\x93\xb1F\xc2w\xd4M(\xbf\xf7\xde\\]\x83xG\xcf\x9e\xc97\xf5<\xbd\xfe\xd7\x05\xbc\xa7\xdb\x17 \\\x88/./iql\x17\xa24#=\x1d\x16u\xb3\xbb|su\xfd\x81\xff\xfc\x8c\xdf&\xea\xbbW\xda\x87z\x81t\xaah\x15+\x97|\x9d\xcf\x98\xcd\xd0nHS\x90\x8ai\xb3\xc1\xea\xd4\xb9N;\x19\xa4sp\xf3.\x1a&\xd3\x05|\xe4\"\x818Jo\xae\xaey\x9f.\xe0\xbe> 7t\xcfE\x8f\xa45l;\x9f?\xde\xbd\xaa\xabm\xb1\xfb,O\xaa0\xfc \x02\x8f\xfa\xfe\xb3\xee\xed\xf72/\xe2\xb3\x9eN\xde\x9a\x8c8\xe1\x9d\xe2:\xc9\x86\xae\x8b\x8d\xe0\xe7\xd2\xae\xaan\x0bEH}2\\\xe2\xd0\x1e\xfd\xdd\xe2kK<\xe9\xa0\xf8Nl?\n\x81\xce8\x16c\xad\x08\xffO\xc37\xc4\xe3\xffzi\x04c\\\xba]\xfa Z\xe0\x9dz\xdc}\xecW\xbe\xcc\xfe\xf4\x98o{\x9b\x91\xb6]\xa8\xb9b\x01\x1b}\xd0\xc5\xb4\x1b\xe4\xaa\xd3aE-+/?[\x12\x1d\xad\xde\naY\x08+\"\x9e\xe3@\x98\xaa\xb98$\xabo\x82o\xea\xcd\xfd\xe3\xd66\x9e+\x85G\xac\xb7,\x8d\xaa\xa8\xeat\x96cS\x1c\x84kX\xd0\xeat\x8b\xba\xa2N\xec\xcd\x91\xdc\xb7C\xbb\xd2\x96v\xc7}K\x0d\xdb\x84\x7f\x0e\xbf\xa5\x1d\x02\xed\x96\xca\xebuGZ(\x8bC\xc1\xba\x993\xf5U\xa3\xef\xff?{\xdf\xd7\x1c7n\xec\xfb\x9eO\xd1\xd7\x0f\xc7v\"\x8fcg7\xa7\xa2{\xf7\xd4\x91%yW'\xfeW\x96\x9c=\xa9Tj\x8c\xe1`F\x8c9\x04\x97\xc4H397\xdf\xfd\x16\xd0\x00 \x92\x00\x01\xfe\x91\x92[E\xbc\xecZC6\x81\x06\xd0@w\xff\xba[u\xb2V\xaa\xb5\x81\x04\xf2\x8dG\x8e\xa2\xec:\xd2\xa6\x08 \xaa\xe1\x1e#\x92D\x986\xce\xa4n\xa2V\xc4\x02\x97\xd0%zG\x92=\xe1Z\xcb\\\xb15\xc6\x9d\xac\x99\x04\x91\xc6\xdb\x94\x88=c\x90\xc1#\x1dM\x15&y\xed>\xaf\x96K\\\xa8\xae\x01-x\xbc\x93\xb6\x93\xbbX\x9ce;\xd1\xbb\x9a>o\xb5H\xd9-Q\xa8\xb1\xd8\x00\x10m\x0b\x98\xd5\xfe\xd5a\xfd\xea\xb2}\xadi\xcav6;T\xa7\xfd\xca\xd6[\xefk>\xcb\xd59\x8bSC]\xe7\xec\x1bM\x95Y\n\xbb\x19\xa7(R\xc5T\x92Tu\xc2\x96C\xe4\xc3\xc7\x9bK\x0cZQ\x8a`\x99\x80\x90\xa4p\x95\xear\xa9\xa5\xa46\x8d\xe6-b\xe8\xefj\x7f\xa4\\FE\xb5\xffWG\xd8\xb2-\x93*f\xdd\xc3\xa7\xa2_T\x7fZ\xe9-#&\xcd+\x08w\"\xb1:\xdf6\xd4\\\xa3[R,\xe5\xa6\xec \x93\xb1\xe4Qw\x15u-?\xd1\xcc \xba%J\x8dQk_*\xe6\xe2\x00\xaa\xc4B{\xd1)KO\x93u+\x89\xfb\x12S\xc1\xf6%\x02\x17K\xe8\xca\xaa\xf2\xa6,\xc9\xc8\x91\xe6\x81\xe3\xed^_\xf1\x06\xf6iA\xf9 \x8a\x9a\xba\xf4\xd21\x8a\xb1\xb8\x00\x08\x91\x97\x91\xa3\x96\x1e\x1b\xa1m\xc2\xd5\xa6A\xaf$UeX!Q$\xe7S\x9e\x0e\x199V\xaf7Y \xe5\xbc\x18ZY\xa6\x97\x00?\xe8\xfe_\x9e\x9f\xdd\x08:\xfb\x82\xda\xb8\xa7\x0f5m=\xb1\x11\xd2\xe6\x14u\xf2\xa8p)e\xb7\x90*\xef\xddo\x17\xdf\xfd\xfb\xe2\x00,\x95\x86\xac\x85\xb3c\xe2\x93\xady\x90\xfd0\xa4\xc8\xa1\xe2\xaba%\xd4q\x9cX\xce\x1f\xeeI\xcc\xf5\x8dQ0\x86\x80\xf2\xff\x1ay\xdf\xcb|\xe0,M\x8e\xeeN\x9dY{u6\xa4[\xea\x1b\x98\xb6\xbd\x80x'\x11!\x9c\xe2\xe7;v\xd0\xcd\xe13^M\x82M2\xfc\xb0\x94\xe6\xe7\xbeNe\x0dL\x9f\xb6\x06\xc6\xa5\xae\x81q\xe9k\xec[\xd4\xda\xc9\xc9\x92\xda\xc0\xe4\x89m`\xca\xe46\x10\x94\xe0\x06\xa6Lr\x03\x9d\xd5\x86\xc6%\xbb\xb1\xedqk\xc5!\x145\xde\x1480:\x0d\x8e\x85\xa0\xad\xee\xd0\xe0\xe48\xe0V\xc5:\x8f\xf8\x8e\xfaC!\xe7\xff\xc0\x8496\xb1\xe7\xacB\xe4\xeb\xc7\xb8\xe49\x0db2\x95\x8e\xb5\x16\xd1$It`\xeaD:`I\xa6\x03\xe3\x13\xea4\xa8qKU\xa2q)v\xc0\x97y\x06\xbaj\x13\x05\xa4\xdb\x01W\xc1\x90\x1eiw\xdc4Z \x0bF\xa5\xe0\x81\x1e\xcc\xf0\xa5\xe2\x01\xef\xb8\xbd)y\xa0_Z\x1e\xb0\x17\x89\xe9\xa8Z4E\x8a\x1e\x18\x95\xa6\x07\xba\xe6p`\xba\x1e\xf0\xa5\xec\x01O\x05#_\x0d\xa3\x8e\x89\x0dM\xe1\x03\x01i|\xc0V\xcbhT:\x1f\x08K\xe9\x03\xbd\xd2\xfa@Hj\x1fp2\xcd\xbad]\xcf\xfaR\xfd\xc0\xe8t?\xd0\xd5\xd1\xc6_'M\xfd\x03#\xd3\xff4H\xd9j\x1eM\x9c\x10\x08&N\n\x04\x9d\x95\x8f\xac\xb5\x8f\xa6J\x10\x04S& \x82\xc9\x13\x05Ap\xb2 \x08I\x18\x04\xe1I\x83 0q\x10\xd8k!\xd9\xab\xe3\x84\xa7\x99\xf1\xd5C\nN$\x04a\xc9\x84\xc06\x8c)\x93\n\xc1\xd8\xc4B\x0dZ\x96:IS\xa6\x1a\x82I\xd3\x0d\xc1\xe8\xf5\xe0M;\x04\x01\xa9\x87\xa0q\xe8XR\x10A\xb0\x89\xbd\xed\x0d\x18\x95\x8e\xa8%\xaf\xd71I\x1b)\x89\x00\xc6\xa6%j\x10\xc3.\xb5S\x13AWz\"p\xb8\x93\xf9#x\xd5\xb9\xc3a\xdc\xa9aw;\x89]\xdd\xc6\xf6\xb0\xfe\xefN7p\xe7\x98\xb0y\\\xbf\x01\x14:R\x1cAI\xc1\x95\xe6\x08\xbc{B\xb7\xe1\xe9\x8e\x1c\x04I\xdaNy\x04\x01\xdd\x19\x9a\xfa\xa8E\xc8p\xab\xb5\xd2\x1f\xc1\x88\x14H0>\x0d\x12x\xf90i:$\xb0\xa5D\x02\x98 -R\x83\x1e\xdewY\xfb\xf6\x91\x9c\x17\x94\xff$G\xfc\xab\xc6\x8fr\xad]]\x98\xb33lj\xa6\xe1\xa7\x02SX8\x80\xdd]\x91\"\x8eT\xa4\x88\xd0\xcc\x1c\x9c\x1a\x94w\xb81x\xb3y\x15\xec\x8e\xf4\x1e\xd8H\x96=\x0ci\x9f\",.\x8diA\xd3b_@D2\xbc\xa7q\x84o\xa9?\xe7\xfbD\xa5e\xaa\xa9\x81\x92\x1f\x16z\xe6\xb6\x96\x92\xbf\xa5\x10\xe2SBpkm\xafz\x185\x95R\x9f\xa9\xe46\xf6\xc2 X\xac!nm\x1f,8\xe1J\x00\xa1\xd1sG\xa2\xdb8\xa5M\x15V\xf6\xa2&\x81t\xeb\x98\n[\xb4\x93\xe7\x95\xee}\xce\xe3\xddP\x00\xc9\x9ap\xfaB\xbc\xdfxB\x9a\xef\xdb\xf2U\xb7\x11;\xc3.\x94\xc0\xd7a\xf0\xa1^<\xf2X\xb7 \x0cp\x0e9]\xfe\xdc)\xafu\xeb\x8e\xd6\xc1\xe6f\x15\x84\xb0\x0b\xfc,\xf3\xc8\xf5\xc6Cu\xf9\xae\x9b\\*\x914\x17/\xa7\xe90t\xe2\x1f[\x13\xa9\xd2c\x85r\x069\xd2]\xc8\xb0\xde\xbce\x0d\xebm\xd0\x02\x1e\xb6|\xb5dZn\x12b\xadf\xe9n\x83\x17F\x18\x06\xb1\xde^\x80,\x99\xbc\xbc\xbaX\xbe}w\xf6c >\xaf\xd9\x9aT\xce\xde\\_~\xf0\xc3\x0b\xeb\xadI$\x10\xa3XoM\"\x1f\xae|P\xc5z\xab\xcas\x8ffK\x7f\xd5\x0b\x1bn\xb2\xf5\xdb\x84l!N\xd7\xd2\xcfV\xa8\xacKj\x03\xf62&c\xab\xfc\xdf1\xbad}/T\xad7\x9e\xa7\xde\x06\xaf\xe7\xc1b.\xc0q\xdan\xa3\xbb\xd9\xcf\x92\x8a-\x18SQo\xa3\xfb\xda\x8b\xa5C.\xef\xd803\xf3u\xbcEL\xae\xb8{h?\x82D\x1b\xe8\x08\xec\x1e$\xe3\x14\x88\xa2\xeb\xbf\xce\x0f\xeb;RofTU.m\x95\x87.\\\xf5\xb8\x975\x18wUBX\xa2\x83\xd1+KG\xf7H\xaa\xfdWP\xafJ\xd0\xe3\x8c\xebs\xb2U}\xf5?\xdb\xf7$\xefq\x8a\xf7\x18\x1d\xb6>c\xc4\xd6[\xc6\x0d\xda\x8c\x036b\xb6_-\x03\xea*W\xad7\xb3`\x10\xc3D\xa3\xeb\xd7\xdf\x7f\xff\xea\x0f}^\x19\xc88\x18\xc6<\x90\xa94\xa3\xec\xf5\xf7\xbf\xff\xf6\xea_\xb9\x9bCn\x0d\x9f\xf6\xab$\x8e\xfeH\x8f5c\xc97z,\x8c\x12y\xfd\xce\xfc}A1\xc1\xee\x9f\xca\x8d\x1f\xf8v(H\xab\xde\x061y\x88\xc2V\xda\xc8\xb2!\x029\x88\xad\x87\x0c >\x0f\x82\x07\x0f\xbd\x18\x00}\xa5\x7f/F@?f@\x7fY\xff\xb0\xdd\xe9#\xd9Ce\xba\xac-\xe8#\x06=\xa5y?q\xd4\x8biaB\x01\xdb\x00\xa9\xfd\x00}\xe9'\xa1\x03;\x10\xf8\xe9\x10\xc3]\xcf/\xfa\x8cr\xa1\xf6\xa1w\xe2\x948\x97\xf1\x06g2\xdc\xc0\x17\xf5\x806\x1e'=#>\x86pNw\x19\x16y`\xb0\x8b\x8b\x84\x925\x10\x8cq\x00\x8cq0\x0dD\x06\xc4\xab\xce(\xa7\x94sK\xb4\xc9\xf3;;\x9c\xc4H/ 1|\xcb\xf1;'v\xb6\xb69\xb1s\xadu9\x1b\xbb\xaeP\x0f\x95c3\xc8\xfd\x17\xc0\xbcn\x97^_\xe7]O7]O\x87\\\xb8\xebm\x90\x93\xad6\xff^\xefX\x98\xbf+\xd8\xb3\x150U\x01\xab\xdcs\xbc\xf5\xf8H\xf7\xb1\xe6\xf5*\xf5\xf8\x92c8\xb5s3\xd4\xcd\xe3v\xdet\x1f\xc3\xc1\x0e\x19\x87\xb3\xa5A\xce\xeaz\xc9\xc8V\x15\x11\xab\x98V\xebU\xf5\x80Q\x89\xcc\xf8\xa3\x0e\xf1\xd5\xe5\xdf\x8c\xf2_6Yb\x97 \x12\x01\xdbRi\x9c\xd3\xe5\x9c\xa4\xaebj\xd5Wt\xf1/\xf1\xbf\xba\xfcXQ\xd0\xb5\xf8\xc7'\xb2\xa5\x9f\xb1\xf8\xd2\x02\x7fo\x10\xf9eOs\x8c\xa4\x16\xe4\x04'(\xecX\xc1\x81n6q$.-\xc9q\x01W\xdc\xa8\xf8\x9b\xf1c;\xd8\x9a\x97y\xa5S\x06;\x96K\x0e\xee\x93z\xc1G\xcbq\xe7e\x8a%|\xcc\xa5\x92H\xf2\x92\x1b\xf2\x7f\xd2\xfdnEs,\xa4%\xbbb(!\xad\xfe\x9b\x8c\x92%\xc3\x96\x92H34J\xacLY#+\xe6\x85\xaa|\x15\x17\xb0Oq-\xad\x81 >\xdc\xc7J\xbd\xb1\xef\x07G\x8d\xa4>\x85\x07\x1b$t/u\x0dB\xfdokY\xc7\xef\x17\xaf]\xa5\x9b\xaa*\x888I\xad%\xdf^\xee\xdc\xc8\xc91\xbe\x14\x93\xe6\x81\xae\x1fj)o\xc6\x0f\xcb\xbc\xd6IkG\xed\x9d\x05\xc7]\xd9\xbb\x08\x9dk\xf0F'\x1cWt\xcd\xc5~h_\xba\x9c\x1f\xaa\xf1\xe1\xa6^\x8aJ^\xde\xccm\x14\xb15-2bOin!\xae\xfa\xfa\x81\xec\xf0\xb5R\xc8\x9d\xb35m\xd0\xb5\x91\xb4]@\xdd\x9c\xa9\x0d\xa5\\\xdc\x82vH2\x7f\x1fo>\xcb\xad,Eeq\x02\xf1\x06Hz4\xe9\xe6\xe4~\x99\xb0\xed\x10\xd2-\x01+\xe6A\xc5L\xd8\xc2&!a\xdb-\xcd\xe1YN\xee\x15\xf1\xe7\x0bx/+\xe06(\xa5,}\xb1\xa6\x9c\xe6\xbb8\x8d\x0b\x1eG5M\x90m\x0b[\x7f\x1f\xb6F\xf5\xae\xd8\xbas\xea\xf8\x14\x8fn\x95\xa3\xc5\x7fl\x9d\xd7\x15[\xa9n\xf3\xb5\x7fN\xe5kI\xc2\xf1[\xd0\xfd\xab\xbb\xa87\xb6\xee\x01b\xf3\x9a\x86\xbd\x83\xc5\xe6\x1f2\xb6\x00{l\xc0\xe8\xb1y\xca\x7fc\x0b\xa4\x16j\xe8\x11\xad*\xe4]\xde\xf4\xd2jB\xe0>'YFs\xb8\x977\x17u\x81\xea$H\xd2\xb5:\xf3I\xeeI~\x84\x03\xa9\xd5\xaf\x14RB\x8a-;L(ld\xd7\x92.\x96\x07\xd7\xa3\xa2\xa9\xaa\x17\x8e\xb3\xdf\x18\x98\xaaV\xed]\x9f\xae\xf1\xa8\xeb\xba`\xce\xcb\xaa\x00\xba\xae\xe4Y\x96an\x0e\xd5A\xcd\xc9\x80\x90\xe1\xabz\xe0\xa5\x02A\xa0Hb\xb4\xd4\x99\x0c\xd0\x85S\xc4\xe8UEl;\xc7\xf7\xa2\xe3\xb2\xe8\xa5}\xf0\xf4@\xa3=\xb7\xd4\x11\xf7u\xf6\xec\xcd\xf9\xd5{\xcc\xeb\xf3\x8em}\x85\xb0I\x8a\xf5\xed\xc5}\xe7 \xdfm\x11\xd4y/\x13\xb6\xed\xa3q\x85\x1e`b\xf3\xad\x07\x9d]q\xbaaC\xce\xda\xb3\xaa|\xb9Q\xa2^\xf7\xa0\xfb\x9b[R,\xefI\xca\xe9:\xf0\xcb\x81w\x95\xb3\xb2>\xeb\x96\x14\xbad-\xc5|M\x8e\xa2\xf2\xa2+\xfb\xe2a;\x12\xb1\xb4\xd8\xefT^1{7\xf8\xc1\xd6\x81^&d\xf1\xcar\x9f;\xab\x81:$\xb3o'\x00\x9c\xc1\x97\xcf\xef^\xe6\xb4`\xfb<\xa2\x90\x92\x9dR\xf6\xf7i\xfc\xcb\x9e&G\x88\xd74\xe5\xf1&V\xee\"\xaeR\xbe\xda\x85VA\xf3\x98$\xf1\xdf\xeb%\x83u\x93\x15\xbb#\x96\xc0j\xbf\xd9\xd0\\\xef\x9b\x05\xd6%\xc21`\xcd[-\xd6\x08\x87\x84\x92\xc2\x9ah\x8d\xa5\x14\x9e\xbc|\x02\xd1-\xc9I\xc4i\x8e\xc5v\x13Rp(\xe8vG\xd3r_}\xf9\xfc\xeei\x01\x19\xe1XR\xd7B\xacL\xc9e\xfb\x92 \xb1\xd9'\xc9\x11~\xd9\x93\x04KWKN)\xf2\x92'\xcfH\xe1\xc8W\xf6U|\xf8\xe5\x96\xb1mB\x17\x92\x07\xab\xfdfq\xb1\x97e\x81\xd3\xaf\xcf\xb1\xdf\x92`q\xcb\xf6\xc9Z\xec11x\x0b\xad\x88\xa4,\x8d#\x92\xc8\xd5j\xfb\xda3\xba\xd8.N\x04\xdbd\x9a\x92'\x8b'Bm\x935\xa6T\xb1\xe0\xe7\x95\nj\xb6\xab\x142\xc1\xc88\xa2'\xc0)\xd9\x15\xb0/\xf6D\x0c\x1b\x13\x93e\xb1P\xcdu\xa1\xe1U\x9c\x92\xfc(\x0e0\x1b\xc7\x8e\x19U\x82^&3\xb4\xbf\x93=\x92\xb5\xe1\xf9-\xdd\x19kYU\xcd&z\x00\xe2\xff\xefX\xbc\x16J\xab\x95\x18vGn\xd7\\\x96\xdf?\xd1\xaf\n\x8a\x84\xc7\xab8\x89\xf9\x11RJ\xd7\xba0\xb8\x14+\xf9\x9d\xe3\x92\xc3RU]^>.w\xcd\x02\x9e})\xa8N\xbc%\xb8!\x96\x8f\x90\x0e\xb8~HJ\xb6\xf6\xb1\xaerJ\xbe\x89=\xafH.\x9e\xdbV\xc2\x07\xc6\xe9\xa9\xaat\xbfO#\\\xe9\xa2\xd7JJD\xfb<\x97vE\xd3\x1e\xe7,8'\xcd\x90mC\x1chi\xbf\xdao \xa7B\x86\xd3\x13yC\x8f\xb9\xfe\x90,\x99.O\xefr\x7f\xac\xe86NS\xbb\x8eq\x1f\xf3[\xabp>ft\x81\xeb\x96dq\xb1\x88\xd8\xce.\xdf\xae\xe5\xee)\xd0\x08(\xb6g\xda\x94\x07\xf0LY^\xd0\x8a\x8a\xdb\xed9\xec\x1a\xa6#\xddV\xd6\xed/\x87%\xb1\x11\xf1.K\xa88\x86\xd0v]d4\x8a7q\x04\x05\xdd\x91\x94\xc7Q\xeb\xa6\xedP\xc5:\x8f\xf8N\x17\x82\xff\xfc\x7f\xaf+\xcc\xab\xec\x97\xd5\x01\xde:\xad\xf5\x1du\xc5\xee\xacG?\x0eO-\xd8>\xf7\xe0\xafg\xe9\xf1\xab\xa17\xa4@\xf2U\xccs\xb1\xb1:\xfa\xa3$i\x83\x18IX\xbaE\xfe\x93\xe6\xf4\x08y'\xc52\xf6g\xd5\xbe\xd2\x98\xdf\xd3\xb7\x93\xd6b\xfa\xa4\x17v\x12\xafd'\x954.\xa0\xd8g\x19\xcb\xe5\x89\x96\x91\xe8\xdb\xcb}*\xfe#\xce1\x9c\xdb\xc2\xbe\x93lG9\xdb\xc0\x9e\xa38\xd1\xdb\xb4\x10\x82\x8cTW\xf3-Mi.\xd3\x9c\xa2e\xb9L\x1fv\xd6\x92_8%\xcdo\\\x1e\x88X\xa2\xf0\xea\x14>\x89~\x8a\xfd\xa9\xbaL\xccd\xfe\xe7\xbf\xf9\x8d\xf5Py\xcb\x18l\x18\x83\x1f`\xb1X\xfco\xcb\x03b\xe0$=\xda~\"\xe9q!>\xfa6g\xbbg\x1b\xc6\x9e\xdb\x1eZ,l'G\xbc\x81g\xe2\xf5/\xb2\xab7\xec\xd9\xbf\x89\xf7\x9f\xc3\xffX\xa5\xa2\x9d\xc6?\\\xbcx\xed\xe1\xc5\x7f\x91;2\x8a\x19\xf0\x83\xbc\xd7\x08\xca\x03\xc7\x1d\x17\xcf\xde2\xb6\x88\x12R\x14\xceacW\xc4\xe38\n\xe3\x15\xdb\x17\xffa\xf9\xdb\xcb\x97b\xc1\xf9\xfarMvT\\\x13\xce\xb0W[\xca/\xd0\xf3|\x95\x16\x9c\xa4\x11}\xf6\xbc_'\xad\x14\xec}v\xcc\xe1\xef\xd90\xb6X\x91\\\x0e\xe3\xf0\xf2\xb8\xf8\xfb\x13\xe4\x02\xea)6\xc5K~\xf6\x89x\xb2}\xcc\xfd\xd7\xf5\xc7\x0f\xad?\x8a9\x10?T\x9a?\xde\xd2\x98\xd8\x8b\xeaJ\x82\x1a\xce\xbe\xa0\xda\xf5\xbb\xdd'\xa4\x95g\xbbM@<\xbc\xa6\xd5U\xe2\x04\xe8nE\xd7\xeb\xeaRq\xa2n(-{\x81q\xbco\xe4`\xbf\xfe\xa7\x18\xeeW\xa5\xe2\xd6\xd0\x19\x9ay\x0b\xbd\xb5O\xad\xd7p\x12}\x13;\xbbR\xed6qBm\xf2T\xcb\x80O4/X\xeaX\xe4\xcaJ#kL/%\xd7\x7f\x80W6j\xe5\xa3\x12J\xa9\x9e|\x1d$\xc7E\xb3\x7f\xfd\x89\xe4\xc6\x93Sxb[\xf1\xf5!.p\x1cON\xec\x94\xe4\x08>\x90\x9d\xa0\xf6\x7f\xb0\xab\xff\xe1xT\x8c\xa0\xf1d\xc80\xae6J\x99\xa8\xcf=\xce[\\\xc0=M\x92\x17\xdfRv\x9f\xca\xbdxK\n \x10\xed\x0b\xcevj\xcd\xd6\xe9\xd5\x17\xda ^e\x1b\xab\xaf\xc2\x81\xa8\x8f\x8a\x05\x95n[\xb6$\xb9\xb8\x9a\x1f\xf8*\x17\xbc^k\xb7,Y\xab<\xbdU\x9f\xa4]J\xadQP\x96 \xb5D\x9b\xd4\xe4'\xca\xb5 \xcf\xc4\x0e\xd7,h\x19\x1a\xb45\xec\xaf\x7f\xf9\xebs\xeb2\x1e\xb7\x1e\xea\x1fq- 9|A\xec\xd5\xe2\xf5\xab\xd7\xc5\x13\xeb$W\xff\xef\xc0\x9a9\xd55\x8f7 \xae\x0c\x8aYN\xefb\xb6/T\xfd\x02x\xcbr\x85`(\xe0?\xe0\xd5 \xc4\xfc)N\xcd\xbd\xfck\xcb\xba\xb0\xa3\xeb\x98\x08Y\xd4d\xa5\x94\x1b\xba\xdf\xa5\xc2\x80\xba\x9fL\x05_\xab\xd3\xbexG\n\xae\xa0d\xa2\x13\x0db\xd8%\xf8\xe1\x07x\xd5J\xa1,{(4\x94\".\xe4\x17\xcd\xa3\xd1\xe6N\xe6\x8f\xe0U\xe7\x0e\x87q\xa7\x86\xdd\xed$vu\x1b\xdb\xc3\xfa\xbf;\xdd\xc0\x9dc\xc2\xe6q\xfd\x06P\xf0\x94\xfdA\n+\xc6\x12JlV;\xdf\x9e\xd0M\xfa\x0f+\x87\xb1\x04@\x16q\xbaM\xa4W\xf8E\xe5\xf8<1\x8b\x7fH\x8b\x91\x9d Iq\x0d\xf6u\x1d\xa2#S\xda)\x0b\xd3[\x07kzG\x131_\xd2H'\x8b%\xdc\x1a\x87y\x8b\x90\xe1V\x03n\xb9pkd\xce\xdb8\x95w\x08\x89'\x93\xc7\x84\xfe\xe5\xfc\x96F\xdfn\x0e\x16-\xe6\x1d\xe14?1\xbdQ\x05\xec\xd0s\xa7\x91[{\x998\x9d\xdf\xd2\x82\xaa\xcd\xd8\xc7`\xa3<\xbd\xa5\xe3\x14}\xd8\x8a\x90v\xea\xaa\xbbl\x95\xa4\xdd\xe1\x1d\x03e\x93lI\x10\xb3w\x1a\xdd\n\xfc\x96\x15\xd4\xf5 \xd5\x0f]\xb3\xa5A\x0f\xef\xbb\xac}{\xd6\xd4\xaal\xac)\xa7\x0b\xf8\xf9\x96\xe6\x94\x14\xf0\x8em\x8b&,V\xf4\xe9\xc4j\x924.p;\xca\xc9\x9aprR~A^\x9f\xeb\x9d6;\xdc\xbe\xbaZ!\x82\xaf\x17\xaf^\x9d\x88\xff\xf9n\xf1\xbd\xfc\xef\xf7\xe5[\xeey\xab\xc0\x83>\x87wN\x13zGR\x0e\xfc\x80Y\xedIj\x1e/zT\xd2\x0cn\xf6\x97\x93ma@\x0eP'\xd0\xe9\xed\x13&q\xcb\xf2\n\xb1\xa6\x11[\xd35.\x82Z\x8fk \xc7N\xc4\xa5\x89\xb5\xbc9\x94\xd0J'r\xb2\x90kv\x00~\xd2\x10\xbe6Q\xdf\x12\xf0\xe3Q\x96\x85\x1ex\x12\x17\xd2\x0df\x81[\x16\x16\xbce\xdf\x9e:\x0e \xd7\xb1c\x8fb\xea8#\xbaPh~|\xa6\x1d\xa1\xd9\xf9\xc1^(M'N\xb3\xf3\x13\xa1XM\x1bZS\x13\xb6\xe3\xf6\xba\xb8\x15\x86\xd9\xb4\xa16\xc3\xf9\xe5Cn:\xb0\x9b\xe1\x1fh\xe17\xc3\x010~\x04\xa7\x07\x07cCqv]\xdd\x1c\xd7\xb6\xce+[\xf7u\xad\x13\xcf\xd9\xbd2\xb0\xf9\xc2\xc8\x1c\xa8N\xef-\xce\x8d\xec\xf4\xddm=\xb0G\xef\xfd\xd6\xc72l\xae+{\xedw\x1f21\x04\xe7\xe9\x1f.6/\xd63h\xe8\xd8B\x18\x80-\x00\xf1\x19\xc8\x0blA\xa8\xcf\x1e\x14}\x17\xe7z\xeb\x8b\xfd\xf43\xa7\x0f\xfas\x08\xfe3|\x84\x830\xa0\xee\xe5/\x84\xa2\x17\x05:5\x0e\xb4\x03 \x1a\xca\x88\x89\xd1\xa0\x01x\xd0\x0eDhH\xa7G\xa0B\x1d\xd4\xdc\xb8P\x7f\x7fB\x8fF\xde\x85\x0d\xf5\x9e\x8am|h\xf8y>\x06#\xeaF\x89\x0e\xbeQ\x8e\xc5\x8a\xba\xd0\xa2\x0f\xd1\xa1\x00\xcch\x1b5\xday\xac\xf8\x8c^v\xec\xa8W\xbe\xfbV)L\x8f \xf5aH\xa7F\x91N\x8c#\xf5 IGcI\xa7E\x93\x86\xe0IG J\xa7\xc5\x94\xe2j\xf5\xa0J\xa7\xc5\x95\x06 K'\xc7\x96z\xd0\xa5\xc3\xf0\xa5VB\x9d\x98\xd3IP\xa7\x81\xb8S\xeb\x9b\xbd\xb0\xa8\xa3\xd1\xa8S\xe3Q\xdd\x88\xd4\x891\xa9\x0f\x81J\x9d\x18\x97\x1a\x8aL\x9d\x18\x9b\xda\x8dN\x9d\x1c\x9f\xeaF\xa8\xa2\xe0\n\xc2\xa8\x0eG\xa9Z\x89I\xe4\xaa\x03\xa7:\n\xa9\xda\xa1@z\xae\x14}R^8n\x1c\xd3aV\xbbQ\xab\xfe\xdeL\x8a\\\xed\xc6\xaeN\x86^\x1d\x8b_m\x91\x937\x1a\xeb\xe5aZ\x0c\xab\xdaF\x96\x01\x8d\xc5\xb1\x06\x807;\xb1\xac\x81hV'@\xac'\xa2\xd5M\xc7\x82\xa4\x19\x8dk\xed\xc3\x9c\x10l\xab\x9f\x0bA\xf8\xd6\xde\x08W\x07`\xb0\x13\xe5:\x15\xceu,\xd2\xb5sfG\xa0]\x03\xf0\xae>\xc4\xab\x1f\xf3\xda9\xe1}p\xafa\xc8W+\xf6u4\xfa5\x18\xff\xda\x17\x01\x1b\x88\x81u3\xd1\xb1\xac\xdd\xcf\x87`a\xa7@\xc3vv\xb9\xf5\xf7Q\x98\xd8\x165\x0bFvR\x94\xac\x0b';\x12)\xdb\xeer\x1b9;=v\xb6\x1b=\xeb\xc0\xcfN\x89\xa0\x9d\x18C\xfb\x10(\xda>8\xda@$m/,m8\x9a\xd6\x81\xa7u!(\xc31\x94~Lm/Tm0\xae\xd6:\xa0\xa9\xb1\xb5\xd3\xa2k\x1d\xf8\xda\xa9\x11\xb6Scl\xc7\xaf\x91 \x9cm\x18\xd2\xb6y\xb093;v(\x9c>\xfdmR\xccm\x07\xeavb\xdcm7\xf2\xd6\x83\xbdu\xb9\xfc\xf9#\xa2!\xb8\xd3\xa9\xef\xb1\x1e\xf8\x1c\xf9\xeeA`{\x0c\xc4\x82\xc7U\xef\x19!6\xaf{>\x88\x8a\x07\x9d\xab\xa9t\xe1s\xfd{H\xb7A\x18]'5u\xb4\xdbQ\xba!\x9d\x9a\x0c\xa9\xeb\xc7\xea\x8eC\xebN\x82\xd7\xf5sd\x10f\xb7\xbd\xe7\x0do\xa5\x1d\xb5;\x1c\xb7\xdb\"\xa4a\xb1n\xe4\xee\xc4\xd8\xdd\xa9\xd1\xbb\xfd\xf1\xbb\xdd\xf38\x19\x86\xb7\x03\xc5;\x14\xc7\xdb\xea\xbb\x89Lu!Z\xab\x01\x85\xa7\x08\xae\xe1\x08\x87\xe7\x0b\x06\xb8\x10w\xbbH\xda\x1e3Vp\xb8\xfb\xed\xe2\xbb\xdf/\x0e\xa7\xa8\xb5a\xb2Z\x04\xcbToY\x8f\x889\xcb\xb0js\x96aK\x96\xe1\xd6\x88\xad\xa3u\x8cT\x8d2|P\xf2M\xfb\x92\xb1\xe0\xe0\xc3 \xf67\x87\xe2\xcd\x11\xcf\x0fE\xea\xf3\xa7\xf3N\xc8\xfd{\xb6\xa6W%\xb6\xa8\xb5i\xda\x1b\x06/\n\xa7\xcdq\xab\xfbC\xa9\x85\x19w\x8a\"\xde\xa6\x06T\xb6\xc7\xc6\xdc\xb5\xf3\xe8\xe2\xd7\xc4\x0f\x9a#\x82\xbc\xc4\x91\x88\xbfi\xef\x8a\xf5\xcb\xd0\xb5\x80m\xa5\x05^\xc0\xf5\xd5\x8f\x1f\x96\xef?^\\.\xbf|\xb8\xfety~\xf5\xf6\xea\xb2Yl\xc1|\xea\xe2\xea\xf3\xe5y\xb3&\x80\xf9\xc0\xcd\xe5\x7f\xdf|9kV\x02h\x93X\x9e}\xf9\xef\x8e\x87\xde]\xfexv\xfe\xe7\xe5\xd9\xfb\xab\x0f\x1f\x97RKv?{y\xf5i\xf9\xea\x0f\xafjO\x94%\x07\xfc\x03\xec\xbe\xae\\\xc7\xdbT\xac\xa1\xe6\xcc\x1bs\x82~K^\x80P\xf1\x0b\x1a\xed\xf3\x987\xef\xfc\xdb=\xc9\xc5}\xc0v6K\xb0\x90\x98\x1e\x03%\x13\xb1\xb4\x88\xd74\x17\xe7\x1d\xe4t\x1b\x17\",\xb7\xfe\x8d\xdb\xfd\x8e\xa4/rJ\xd6\xf2\xb4\xe5\xf4\xc0\xf7$i\x99z\x85N\x95i\x11\x8b\xc0\x95\x16o\xcd7\x9a\xb3,\x87\xd8\xe4hX$\xdd\xf7\xbf\xf5\xcf\x96\x10\x99\xed\x19\x13\x7f\x0d\x995\x8b\\\xbb`\xd1E\x9c\xd3\x88\x9f\xed\x0f\x0b8+\x80e\x19S7\xb5\xe6gNpu\x97\xfb\xa5An\xcd\xa8\x84\xaa4\xc7\x9a\xd3_\xf6q\xaeO\xaa\xa2\xec\x1c\xbb\x13\xb7\x06 ,Q?=\x85\xaf\xf8\x7fK\xa1\xe4~\x0dc\xdbw\xbf\xefb[\xeb\x109\xed\xfa\x11\x97\xd8\x8aD\xdf\xeeI\xbe.\x1a\x90\xa5nn\x9e\xed\xe2\x94\xa1*blL\xc8\xe9\x8e\xdda\x1d\x14\xf4\xbd\x88\xe5\xdb\xb9\x03\xd4Yv\xda\xfe\x931\xc7\xfaV\x80\x9d\x12w\xa4\xcb\xabO \x9f\xd1\xec5O\x80&\x1f/\xfe\xb8\x80\xcfts\n\x12\xc4s\xfa\xf2%\x8d\xb3bA\xe5\x95y\xbf[\xb0|\xfb\xf2\xf2\xea\xd3\xb5\xf8\xf3\x0bq\xae6'\xe2\\C\x9fN,\xbd\x8c\x0bu\\\xe1\xd9%XZ\x13\xc1MiA\xf2\x98\xa4\xbc\xa5\xbb\xaf\xf6%\xf8\xa9D\x04I\xbd\x17\xaf\x83\x17\x7f4\\n\x0b\xb8a@S\xb9\xb5/\xaf>\x89>7\xad\xbdG\xb6\x97\xa03\xcb)!\x94\x93\xca \xff\xf5\xe6p\xce\xd2M\xbc\xfd\x8a\x82EZ\xeb\xd3&*\xa9mV\xfd\xaa\x07\xf9\x13I\xd7 \xcd\xbf\xeai\x11\xbdA\x1c\xac\xe8\xf4\x8e\x88^G\xf1Z\x9e`\xe8\x8bS\x07e\x93\xa2z\xb7\xb9v\x82v\x05V\xee\x10m\xb7Ox\\]\xfb\x02CB\xf5\xa5y\xf1^\xbc^\x85\x87\xea\xdb\xa9\xf8k\xfdB\x94\"\xaa]\xfeR\xc4[\xf3fZ\xbb_i\xca\x0d\xe4P\xf3\x8e[\xde\xadY\xee \xdd}\xdb\xc7\x8e\x07\xdf\xf9W1\x97\x86\xda\xd6\xad_\xff`l>\x94\x01\xb2T\xa58\xe1\xd4\xf4\x94\xbd#\xd5\xf9T\x11\x0b\xd7\x08\xe8\x81\xe7d\xb9\x8ay\xb1,8\xcb\xed \xa3\xfb\x94\xd9\xa0I\xcb\xcc\xec\xd5qk\x8a\xbf\xfbz|.\x04d\xc4\xdf\xc4\xfcL\xf2(\xb6o\x151\x992@\xb5T\xe1\x05[\xd12^\xbb(\xc9{\xb0P_\xd5\x11D\xd3b\x9f\xd3\x12d-\xef\x88k\xbaF+\x12'\xdfh\x81\xf8\xe4]\x9c\xc6;\x92\x00\x91\x91\x0d\x06\xc1\xfa6\xc5N\xa0\x97[\xfa\x87\x90`\x9cn\xad\xbd\x10\xa2\x87\xdf\x8a;\x03\x14d\xa3!\x99J$\xa5\x9c\xa6k\x85\xc9\x8cX\xaa\xc0\xa0\xb0G\x9c\x1b\x12\x12kY\x9ee}\xa3\xa1{n\xd2\xd6\xf6\xacYf\xaa^h}2b9*\xd9k\xbd\xe3\x8aJ\xad\xc4SZ\xfdS/j\x83\x9c\xf6Z\x8b\x9b\xbe6\xa867h&\x8b\xbb\xca-\xf2+\xa3[rK\xeaN\xa0\x82+\x04\x81`!\xb1\xbd\xdc\xbd\xc1\xaf\x0d5=`\x87\xd75\xedQZ\xb6u\xfb4\xb5k\xbff\xdd\xa9Uwk\xd4^m:T\x93\xee\xd2\xa2\x035h\xb7x\x18\xaa9;u\xe5I\xf5\xe4Q:r[+\x9eV#\x9eT\x1b\x9eV\x13\x1e\xac\x05?\x92\x06l\xd5~\x1f^\xf3\xed\xa3\xf5>\xb4\xc6;\x89\xb6\xeb\xd6t\x03\xb4\\\xbf\x86\xfb\x80\xda\xedX\xcdV\xea\xb2\x06\xbd\x86V;\x91F\xeb\xd7f\x1f_\x93\x1d\xac\xc5>\xa2\x06;J{\x1d\xa5\xb9Zu\xd5\xb1z\xaa\xd0L\xcd\xb5\xd6\xd0Q'\xd1O\xa7\xd5M\x03\xf4\xd2N\x9d\xb4yI\xc5\x8b\x9c\xeb^X\xbb\x82I\xc7\x1f\x06\xd6\xa2\x9fYMS=\x88E\x1c\x86I\xc2\xee\x91B\x03~Y@\xb1\x8fn\xc5k \x8bH\x82k\xcf\"{\xcdH.\x1c\xa2\xf5:\xfa1_\xd3\xfc\xcd\xd1\xbc\x86\x1a\x17C\xf3R\xf8\x02>~\xbe\xb8\xfc\xbc|\xf3g\xcb5\xca\xf8\xf1\xec\xfa\xbc\xfd\xc7\x8bK\xf5\xd7\xf2R\xe6$f\xbf\x8f\xd9\xbfn'\xe38zY\xce\xab\x0b/\x13\xe3^\x80\x1a\xbe\xeeVy\xc1\xe2\x0c\xce\xae\xcf\x91\x8bq!o$\xa5\xbc\xa8\x8f\xf5\xb4\xf6\xaf\xcas^D\x14\xf5\x13\xf9%\xcb\xbb\x82%\xa7\xf5\x7f\x96o\x0b\x1e\xb4^W\xeb\xce\xe8\xb2|VJ\"\x1c[\xf9p{\x9e\xaf\xe5\xfa\xeb\xe5GDE\xa6\xeev\xefa\x08\xe0\xd6Py\xa7\xea\xde\xed\xc4\x9a00\xde\x1d\x12?]0\xfcda\xf0\xce\x00x><\xf4}\xaa\xa0\xf7\xeep\xf7A\x81\xee\x83C\xdc\xe5x\x9bvbgp\xfb\xe0\xb0v\xbcu4\xa89\x02\xda\xc7\x84\xb2K\xb3Ps4\x96h\x83!\xe1\xeb\xeeP\xf5\x91A\xeaA\xe1\xe9\xe1\xa1\xe8#\x82\xd0G\x84\x9f[\x04\xc6\x84A\xe6\xd3\x86\x97O\x16X\xee\x0f)\x9f,\x98\xdc\x15F>&\x80\xdc\x8a?\xe4!a\xe2C\x03\xc4\x9d\xc1\xe0\x03\xc3\xc0-\x10\xe5~6n\xf0\x9e\xa0\x03\x03\xbd\xab\xa0n\x1b\x7f\x7f\xe5\xff\xf6\xb8\xb0n\x0c\xe36\xc8\xb5\x03\xba'\x08\xe5\x1e\x17\xc4\xddX\xe5\xcd\xc3pd\xe0\xb6btM\x81\x19\x11\xa2\xdd\x19\x7f\xec\x08\xcb\xf6\x06d\xb7c\x13\xc3\x83\xb0\xdb\xef\xfe\xc36\xd6A!\xd7!\x83\xf5\x85Y\xbb\xc7\xe6\x0d\xad\xee\x11T\xdd\x0c\x1cu\x05R\x8f\x0f\xa1\x1e\x1e\x95\xe0\xa2\x0d\xdc\xb3\xfc\x1b\xdc+;&\x1a\xe2\xf8\xa1\x1d}\x98\xd1\\tb\xd1\x18E;\x15\xf3\xe81\xfcH\x8a/E\xd5aRK\xcaL\"\x8eV{\x9d\x9dYw\x08\xcd\xad\x8e \xc6\x1f\xab%)\xffU\x1e$\xa3\xa6\xb2]\xcd\xc3\xcb\x80\x9e\xf6\xb5\x0b\xc2 \x02H\x8f\x88\xef\xcc)\xdf\xe7\xa9\x0e\xa7\xd6\xb7 iE\x96Nl#\xc3:\\5\xfd>\xef\xbf\\\xdfX\xcc\x8b M\xb7\xfcV\x9c\x00\x9b\xf8\x80\xeb\\\xba\xfc\xa44\xa3\x19\xc9 \xa7\xf8u\xfc\xa88@\xc5\x85\xc6\x9e$\xb1\xec@\xd1\xd2\xcfM1x\x83(-q7\x97n0qA\xcbX&\xf7\xf8\xfaD\x02\x08D\x87h.\x0bs\xe8\xf0\xc7\x06A%9\x9b\xdfY\xd1\x88H\x07\x0c\x07\x92\x14\xac~\xdd\x7f_l\xeb\xd1\x94\xe2\xeao\x10h\x95\xe9p\xcei\xf7\xd4\xbdc\xdb\xfa\x87e`\xb6!]\x1c3\xe8b\xa7\xd9\xc7\xb9:_\xe7\x10\xb0\xf93\x81\xcc\xd5\xf9\xe6\xea|\xff\xc4\xea|\x03*o\xa8\x1a\x1b\x0dzZ\x107\xfel=\x15\x8cgL\xc1\xfaO\x12&s\xd5\x83\xb9\xea\x81\x95\xda\\\xf5\x00\xe6\xaa\x07\xf6\xef\x8c\x04\x94h\"\x01\xb0\x12\xeb\x9b\xc1P\x13l#\x00'\xd8F\xc0N\\\x1b\xdd\xd1\xd5\xc9\x00)\xd8\xa6\x85\xa5`\x9b\x0c\x9c\x82\xcd\x0fQ\xc16\x19P\x05\xdb\\\xf5`\xaez\x80\xf6\x8d\xb9\xea\x81\xd1\xc6\x01fZ\xe4\xf8\\\xf5\xc0\x0f\xb2\xc1\xe6\xcb\xad\xef\x07\xdc`\x9b\xab\x1e\xf4\x03\xe8`\x9b\xab\x1e\xb4\xdb\\\xf5\xc0\x0f\xfa\xc1\x16\x00\xfd\xc1\x16\x0e\x00\xc2\xe6\x85\x01a\x9b\xab\x1e\xccU\x0f\xb0M <\xc26W=\x98\xab\x1ex!.s\xd5\x83\xb9\xea\x81o\x8dxaP\x8a\xdc\x80\xaa\x07\xdd\xbaX\xcd\xc6\xdevDj\xfb|\xf5\x88\\(bOK\x93K\x83\xdaYz\xb4$\xca\xec\x88\x99\xf7\xc15\x02\x92\xcc\xeaw\x1a\xb0\x0d\x1f^\xe3&\xce\x82!\x1a\xe8\xe6o\xe2]<\xe9\x80Zt\xb1\xb9<\x0ek\x9a\xb2V\xa2W\xa7M\xa0\xd9\xa3\xce\xc7\xdd\xa0\x1b\x80s\x16\x9b\x89\xaf9\xfbFSu>`\x97t\x1el!\x0d\x84\x9e.?\xdc\xb8'~\xf8xsy*\xcf5\x05\x88(\xfd\xe6$\x85\xab\x94\xabm[ZKj{\x17'\xa9F\xaf\x88\xb7)\xe1\xfb\x9c\x16:m\x83\xbc\xcdl\xd9\x96\xc9\xbdb\x80!\x10\xa9\xa7>\xdbBe\xc8s*\xce~\xa5\x1f\xce2\x9a7\xa7\xb1\xc1.\x9d/Y>[RD\xa0Z\x03\x12\x07\x199\xcasH\xd9\x95\xf4\x97\xec\xfc\xbe\x89\xb3\x12\x91\x15g\x95\x95lG9ya\xfa\xf2J\xe6:\xf7\x8d\x0d\x13\x16\xbc\x98WlmI\x98\xc6\xd6e\x02p\x95\x9c^\x1a \xa5\xf1\xdf\xe0e\xd5\xcd\x06\x17\x83\xf0(:\xcf\xfd\xec\xcb\xe3\xb3/o\xf6\xe5\xcd\xbe\xbc\xd9\x977\xfb\xf2f_^\xbd\xcd\xbe\xbc\xd9\x97\xe7\xbfq\xcc\xbe\xbc\xd9\x97Wk\xb3/O\xb5\xd9\x977\xfb\xf2f_\xde\xec\xcb\x83\xd9\x977\xfb\xf2f_\xde\xec\xcb3\xdbX?\xcd\xec\xcb\x9b}y\xbe5\xf2\xcf\xf3\xe5)\xf3:\xc6O\xe9J\xa9\xe5_\xd1\xea\x81\x916\x18\xe1HK\xf7J\x83RUP\xa2\xc9\"\xac\xc2[\xd2D\xcf\x91\x9c\x1f\x15\xff/V\x1aFg\xb2\x8d\xacb\xa2\x8a\xf86\xe8\x9c\xed\xf9\xadL\xba\xd0\xaa\x82g\xe4\xde\xc6\xba\xbd7\x87\xa7\x85\xe1\x12Z\xc0%\x89n+\xc7\x90N\xb6\xa0\\4\xad\xc2fD.\xd2v\x0c\x16/\xab\xc9\x8aSJ\x9ePb\xdf\xcaj\xe7\x10s`Q\xb4\xcf\xdb1\xa2odx\xef\x1dM\xf5\x0e\xd1\xef5;\xf4L\x1by\xcb\xc2\xc2\xf29\xfb\x9c\xb5lA2\xab\xf5\x86\xe69\x9a\xde\x88v\xcd\xc4;\xa9WW &2r\xc4\xdf6\xb4\xe9\x12\xd5\xed\xfe\x96%\xedB{fl}\xf5\xe7\x1d\xdd1\x9b{\xa6wx\xa9 \xa4#\x83+\x83@\xca8}\x19\xb1\x9dt(\xe0\x82\xd4\xf3\x03\x0d\x07S\x8b\xf3?\x9f}\xfep\xf5\xe1\xc7S!\x1c\xa2$\xc6\"\xcc\x82<\xe6sH\x8e@\x0f*[<=pm\xf8O\x19o\xd7\xda\x8bH\x92H\x81\xb9c\xd6\x12VF\xa1\n|\xf2\xab\xe8\xf8W\x1d\xcf\x0b\xcf\n\xda$\xa9\xd3\x9aoc~\xbb_I\x91\x80n\xba\x97\x95\xff\xeee\\\x14{Z\xbc\xfc\xc3\xab\xd7\xaf\x9f\x9b\\\x17k\x8e\xed\xf9\x12\x8b\xf2\x07\xf2\xdf_\xda\xb6U\xebW}G{\xfaV2\xe8\x10?\xaana(\x941\xd2\xde\xc8\x1b!\x85~\xca\x9a\xabwUz\x0b\xf1\x8e*\xc5\xf8-\xa9\xedvz\xe04-b\x96.\xd1\xec?{\xfff\xef\xdf\xec\xfd\x9b\xbd\x7f\xb3\xf7o\xf6\xfe\xcd\xde\xbff\x9b\xbd\x7f\xb3\xf7\xcf\x7f\xe3\x98\xbd\x7f\xb3\xf7\xaf\xd6f\xef\x9fj\xb3\xf7o\xf6\xfe\xcd\xde\xbf\xd9\xfb\x07\xb3\xf7o\xf6\xfe\xcd\xde\xbf\xd9\xfbg\xb6\xb1\x9e\x9d\xd9\xfb7{\xff|k\xe4\x01\xbd\x7f\xca\xaa\xdf\xd2\xc2Z\x16v4\xdd\x94z\x98\xfe\xab\x9c\xcf\x88\xa4\x95\xd7e\xd5\xd40\xa4\xf1\xbe\xe5\x92\xbb\xbf\xa5\xa9\x12GXm\xc2\xfcN\xca8\x14{ig\xa0)_\x88u)\xeeK(\xc0\n*kd\xd7\xc99\xac\xc3b\x95F$}*5[\x0c<\\\xa3\x83\xad\xe5\x89\x90\xd5m\xb1`\xb4A$e\xe92\xcac\x1eG$Y\xcen\x87\xd9\xedPk\xb3\xdbav;\xccn\x87\xd9\xed0\xbb\x1d,mv;\xccn\x07\xff\x8dcv;\xccn\x87Z\x9b\xdd\x0e\xaa\xcdn\x87\xd9\xed0\xbb\x1df\xb7\x03\xccn\x87\xd9\xed0\xbb\x1df\xb7\x83\xd9\xc6\x9a\x94g\xb7\xc3\xecv\xf0\xad\x91\xd9\xed0\xb9\xdb\xe1X\xae\xbax\x9b23H\xaa\xa6\x9d\xde\x1c\xde\x18\xc9\xd3d\"5YD\xb4VvS\xb0\x80$I\x19X%\xfe\x0b\xec\x8e\x96&1\xb2\xe7\xb7\xc3\xca\xd7\x96\x91T\xe5\x8b\xb6\xe8\x8f\x92~\x99\xd2n\xcfoY\x1e\xff\x1d\xf7WNe]\xbb\x8e|o\xe6\x8a\xd2f\n4\xa6\xe2\x90NtP\xd2\x8e \x85VpuS\x06\xc9T\xd1[\x83\x92(\xb6l\x1a\xfe\xda\xa2\xf5\x12\xb7U>\xc1Zh\x9c\xf1we\xd4\xe5\xd1\xad:1U\xd1\xc12\x9c\xcd W\x8f\x8a\xab\"\xd9\xea\xa1k\x9c\xa9\xb2\x95\x11KS\x1aq!\xae\xca\x0f\xca\xac\x7ff\x910\x83`\x12\x7f\xab\xdd\x14\xba\xca\xd5\x8a+\x1a+\xe4\xda\xc0\x95\xd4X\x9az\xb6\x85\x92\xb3&\xb9\xba\x00\x95\x06\xb6U\xce\xc8:\"\x85\xec\\=\x07\xa1=\xcb\xe0\x9b2y \xf7g\x1a\xd4Q\x82\x83\xe6<8q&wx\xd9:\xcca>\xeb\xd2\xa4\x9e\xb5.\xaf\xda\x94\x1e\xb5 \xbdi\x1d\x9e\xb4Q^\xb4\xe9\xef\xd9@\xcf\xd9`\xaf\x19Z\xea-\xdcrz\xcc\x06{\xcb\xf0\n\xd3\xa2\xe7\xf4\x94\x8d\xf1\x92\xc1>k\xd1sy\xc8\x86x\xc7\xba\xde\xaeQ\x9e\xae\x11^.\xabX\x99\xd4\x9b5\xb5'kB/V\x88\x07kB\xef\x95\xdbs5\xa9\xd7\xca\xee\xb1\xb2\\\xf1mRj\xa8\xa7\n\xbdR-r6/\xd5`\x0f\x95\xd5;\xd5q\x14wx\xa5|\xa7\xf4T\xde(\xb7'\xaa\xab\x07\xe3\x0fK\xb0w%\xc8\xb3\xd2\xe8\xfc\xb4\x1e\x95Q\xde\x14\x9b\xf7dJ\xcf\xc9\x94^\x931\xf3\x1d\xe0-\xf1{J* \xef\xd6\x13\xb4 t@J6G\x12\xb6\xc1 \xd8\x1c)\xd7\xa6L\xb7fK\xb5\xc6\xfb\xa7Y\x9b0\xc5\x9a\xe2S\xcdf0*\xb5Z;\x99\x9a%\x91Z=\x89\x9aU\xfb\xedZ2S&N\x1b\x934M%?k\xf4\xad\x960m@\xb2\xb4\xc1\x89\xd2\\I\xd2\xac\xfcu$G\xb3\xb9\xc6\xa6L\x8a\xe6K\x88\xd6\x11\x95\xc4g\xdfH\xad\xcd\xbe\x91\xd972\xfbFf\xdf\xc8\xec\x1b\x99}#\xb3o\xa4\xf1\x93\xef\x94\x9e}#|\xf6\x8d\xcc\xbe\x91\xd972\xfbF`\xf6\x8d\xcc\xbe\x11\xd9f\xdf\xc8\xec\x1b\x99}#\xba\x85\xda\xcag\xdf\xc8\xec\x1bi\x92\xea\xe1\x1b\xb1E\x8f\x8c\x89\x1c\xb1\xc4\x8aL\x18'b\xb1\xed\x8dJK\x15\x9a\x92j6\xfe\xd6\xdbl\xfc\x9d\x8d\xbf\xb3\xf1w6\xfe\xce\xc6\xdf\xd9\xf8;\x1b\x7f\x1b?\xf9N\xe9\xd9\xf8;\x1b\x7fg\xe3\xefl\xfc\x9d\x8d\xbf\xfa\xb7\xd9\xf8;\x1b\x7fg\xe3\xefl\xfc\x9d\x8d\xbf\xaa\x85\x1a\x03g\xe3\xefl\xfcm\x92\x9a\x8d\xbf\xce\xe4@\x13'\x06\xb2e`\xb9\xa0\x11[\xd3\xb3]\x9c\xb2\xcf\xf4\x97=-xp>\x16\"^Z\xa2\xfd\"\x10>]j\x9f\xb5\x91\x95\xf0i[w\xf4\x80s\xf5O\xb9[5z\xfe\x9a\xe6wqD\xeb\xe3P\xc4>\x7f:W\xa7`y]\xba\x8e\xd3\x88\x9eB\x05\x0c\x87\xdf.\xbe\xfb\xf7\x10\xce\x14\x19K\x0b\xda\x935\x7f+X\xda\xc1\x98 \x1e\xe0\x87+&\xa8\x7f?2\x17\xfa.\x0d~X\x8a\xa9ny$|\xcb\xa2\xc5\x16M\xa8d\x00\xb9oGHt3r\xc8:\x9a\x98y=W\x0f?T|\x0b\xcc\xdausx\xeab\xa0\x1e\xf8Zvf\xdd\x9f}\x01KP3\xa7\xc1\xc6Q\xcc\xbbLGJ\xa6\x81\xdb\xaf\xfd\xdd\xc0\xa5c\xbc8\xd1\xfa\xa9u\xa5\xe7\"z\x08\xe9l\xe9O\xa8dz(\xe6\xf4]\x1a\x0f\xb3\xb7jg0\x03*\xbb\xd6\xbd\xbbj\xdd\xef\xb5\xc2&\xe6_\xcfu\xf5`\xa2\x1d\x99V\x93O\xf2\xed\"\x8c\x8f\x01\xcbQs\xa9\xc1\xcf`.r\x9a\xaei\xbe\x8bS\xbe \xab(^\\\xde\xd1\xb4\xc7\xca\x13\x8ft1\x8dp\x9e\xc7\xab\xbd\x85\xb7\xd3:\xf2\xbf\xd1c\xb0\xe3\xa0\x9f\x9b!N\xd7\xf4`\x7fz\xc5XB\x89\x99\x97\xb06\xa1\x92\x95g\x9a\x01\x18\xdeZ\xc4\xe96\xa1\xa2\xbb/P\xbf\xcfH\x9c\x9f\x00)\n\x16\xc5\xd2\xc6\xad\x94s\xa0\xe2\xed\xaee\"\xc9\xa3\x1f\xb0\x00R\xf9\x07aM\xefh\"\xd8\x84 \x169'\xd1\xad\xa9\xde\x1b)\x15\x81\x97\x92K-\xae\xb7q*\x0d\x07od\x88\x9f\xb8\xdb\xeb_\xceoi\xf4\xed\xe6\xa0\xcdH\xef\x08\xa7\xf9I-#\"\xec\xc8Q\\\xf7\x7f\xd9\xd3<\xa6k\xd8\x172g\xa2T#\xe4p\xe4\xb2\xb7\xae\xb8\x92M\xc1K\xaf6\xe3\x96\xd9k\xcc\xb2\xe5\x89\xc6\xcc\xb6\xe7t\xfa\xd9\xfc\x7f\x01\x00\x00\xff\xffPK\x07\x08\xb2\xb8e\x85\xe0k\x02\x00S\x80#\x00PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(\xd4`4t\xc7\x01\x00\x00\xbd\x01\x00\x00\x11\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x00\x00\x00\x00favicon-16x16.pngUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(6B\xc8\xd7\x7f\x04\x00\x00u\x04\x00\x00\x11\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x0f\x02\x00\x00favicon-32x32.pngUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(R\xb2\xb0\x8fo\x02\x00\x00\xb6\x05\x00\x00\n\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\xd6\x06\x00\x00index.htmlUT\x05\x00\x01\x80Cm8PK\x01\x02\x14\x03\x14\x00\x08\x00\x08\x00\x00\x00!(\xb2\xb8e\x85\xe0k\x02\x00S\x80#\x00\x0c\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x81\x86 \x00\x00swagger.yamlUT\x05\x00\x01\x80Cm8PK\x05\x06\x00\x00\x00\x00\x04\x00\x04\x00\x14\x01\x00\x00\xa9u\x02\x00\x00\x00" fs.Register(data) } \ No newline at end of file diff --git a/docs/swagger-ui/swagger.yaml b/docs/swagger-ui/swagger.yaml index 816c5e4f..187f5b0c 100644 --- a/docs/swagger-ui/swagger.yaml +++ b/docs/swagger-ui/swagger.yaml @@ -7904,9 +7904,6 @@ paths: type: string denom: type: string - channel_ibc: - type: string - title: 'Deprecated: after upgrade v3' default: description: An unexpected error response. schema: @@ -42167,9 +42164,6 @@ definitions: type: string denom: type: string - channel_ibc: - type: string - title: 'Deprecated: after upgrade v3' fx.gravity.crosschain.v1.BridgeValidator: type: object properties: @@ -42794,9 +42788,6 @@ definitions: type: string denom: type: string - channel_ibc: - type: string - title: 'Deprecated: after upgrade v3' fx.gravity.crosschain.v1.QueryCurrentOracleSetResponse: type: object properties: diff --git a/proto/fx/erc20/v1/legacy.proto b/proto/fx/erc20/v1/erc20_legacy.proto similarity index 90% rename from proto/fx/erc20/v1/legacy.proto rename to proto/fx/erc20/v1/erc20_legacy.proto index 9ecf6ccc..b4b66a5f 100644 --- a/proto/fx/erc20/v1/legacy.proto +++ b/proto/fx/erc20/v1/erc20_legacy.proto @@ -5,12 +5,11 @@ import "cosmos/bank/v1beta1/bank.proto"; import "cosmos/base/v1beta1/coin.proto"; import "cosmos/msg/v1/msg.proto"; import "cosmos_proto/cosmos.proto"; -import "fx/erc20/v1/types.proto"; import "gogoproto/gogo.proto"; import "amino/amino.proto"; import "google/protobuf/duration.proto"; -option go_package = "github.com/pundiai/fx-core/x/erc20/types"; +option go_package = "github.com/pundiai/fx-core/types/legacy"; message MsgConvertERC20 { option deprecated = true; @@ -91,11 +90,6 @@ message MsgRegisterCoin { cosmos.bank.v1beta1.Metadata metadata = 2 [ (gogoproto.nullable) = false ]; } -message MsgRegisterCoinResponse { - option deprecated = true; - ERC20Token pair = 1 [ (gogoproto.nullable) = false ]; -} - message MsgRegisterERC20 { option deprecated = true; option (cosmos.msg.v1.signer) = "authority"; @@ -106,12 +100,8 @@ message MsgRegisterERC20 { repeated string aliases = 3; } -message MsgRegisterERC20Response { +message LegacyERC20Params { option deprecated = true; - ERC20Token pair = 1 [ (gogoproto.nullable) = false ]; -} - -message LegacyParams { bool enable_erc20 = 1 [ (gogoproto.moretags) = "yaml:\"enable_erc20\"" ]; bool enable_evm_hook = 2 [ (gogoproto.customname) = "EnableEVMHook", diff --git a/proto/fx/gov/v1/gov_legacy.proto b/proto/fx/gov/v1/gov_legacy.proto index c6ba23c6..0b9cf3be 100644 --- a/proto/fx/gov/v1/gov_legacy.proto +++ b/proto/fx/gov/v1/gov_legacy.proto @@ -43,10 +43,10 @@ message MsgUpdateParams { option (cosmos.msg.v1.signer) = "authority"; string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ]; - LegacyParams params = 2 [ (gogoproto.nullable) = false ]; + LegacyGovParams params = 2 [ (gogoproto.nullable) = false ]; } -message LegacyParams { +message LegacyGovParams { option deprecated = true; string msg_type = 1; diff --git a/proto/fx/gravity/crosschain/v1/legacy.proto b/proto/fx/gravity/crosschain/v1/crosschain_legacy.proto similarity index 59% rename from proto/fx/gravity/crosschain/v1/legacy.proto rename to proto/fx/gravity/crosschain/v1/crosschain_legacy.proto index 47be170c..be0f3411 100644 --- a/proto/fx/gravity/crosschain/v1/legacy.proto +++ b/proto/fx/gravity/crosschain/v1/crosschain_legacy.proto @@ -1,14 +1,13 @@ syntax = "proto3"; package fx.gravity.crosschain.v1; -import "fx/gravity/crosschain/v1/types.proto"; import "gogoproto/gogo.proto"; import "cosmos/base/v1beta1/coin.proto"; import "cosmos/msg/v1/msg.proto"; import "cosmos_proto/cosmos.proto"; import "amino/amino.proto"; -option go_package = "github.com/pundiai/fx-core/x/crosschain/types"; +option go_package = "github.com/pundiai/fx-core/types/legacy"; // Deprecated: after block 5713000 message InitCrossChainParamsProposal { @@ -18,12 +17,43 @@ message InitCrossChainParamsProposal { string title = 1; string description = 2; - Params params = 3; + ForkParams params = 3; string chain_name = 4; } -// Deprecated: Do not use. +message ForkParams { + option (gogoproto.stringer) = false; + string gravity_id = 1; + uint64 average_block_time = 2; + uint64 external_batch_timeout = 3; + uint64 average_external_block_time = 4; + uint64 signed_window = 5; + bytes slash_fraction = 6 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", + (gogoproto.nullable) = false + ]; + bytes oracle_set_update_power_change_percent = 7 [ + (cosmos_proto.scalar) = "cosmos.Dec", + (gogoproto.customtype) = "cosmossdk.io/math.LegacyDec", + (gogoproto.nullable) = false + ]; + uint64 ibc_transfer_timeout_height = 8; + // Deprecated: after block 5713000 + repeated string oracles = 9 [ (gogoproto.nullable) = true ]; + cosmos.base.v1beta1.Coin delegate_threshold = 10 + [ (gogoproto.nullable) = false ]; + int64 delegate_multiple = 11; + uint64 bridge_call_timeout = 12; + uint64 bridge_call_max_gas_limit = 13; + // Deprecated: do not use + bool enable_send_to_external_pending = 14; + // Deprecated: do not use + bool enable_bridge_call_pending = 15; +} + message UpdateChainOraclesProposal { + option deprecated = true; option (gogoproto.equal) = false; option (gogoproto.goproto_getters) = false; option (gogoproto.goproto_stringer) = false; @@ -59,23 +89,8 @@ message MsgAddOracleDeposit { string chain_name = 3; } -// Deprecated: Please use precompile BridgeCall -message MsgSendToExternal { - option (cosmos.msg.v1.signer) = "sender"; - option (amino.name) = "crosschain/MsgSendToExternal"; - - string sender = 1; - string dest = 2; - cosmos.base.v1beta1.Coin amount = 3 [ (gogoproto.nullable) = false ]; - cosmos.base.v1beta1.Coin bridge_fee = 4 [ (gogoproto.nullable) = false ]; - string chain_name = 5; -} - -// Deprecated: do not use -message MsgSendToExternalResponse { uint64 batch_nonce = 1; } - -// Deprecated: do not use message MsgCancelSendToExternal { + option deprecated = true; option (cosmos.msg.v1.signer) = "sender"; option (amino.name) = "crosschain/MsgCancelSendToExternal"; @@ -84,8 +99,8 @@ message MsgCancelSendToExternal { string chain_name = 3; } -// Deprecated: do not use message MsgRequestBatch { + option deprecated = true; option (cosmos.msg.v1.signer) = "sender"; option (amino.name) = "crosschain/MsgRequestBatch"; @@ -105,9 +120,6 @@ message MsgRequestBatch { ]; } -// Deprecated: do not use -message MsgRequestBatchResponse { uint64 batch_nonce = 1; } - message MsgIncreaseBridgeFee { option deprecated = true; option (cosmos.msg.v1.signer) = "sender"; @@ -118,54 +130,3 @@ message MsgIncreaseBridgeFee { string sender = 3; cosmos.base.v1beta1.Coin add_bridge_fee = 4 [ (gogoproto.nullable) = false ]; } - -message MsgOracleSetConfirmResponse { option deprecated = true; } - -message MsgConfirmBatchResponse { option deprecated = true; } - -message MsgBridgeCallConfirmResponse { option deprecated = true; } - -message BridgeToken { - option deprecated = true; - string token = 1; - string denom = 2; - // Deprecated: after upgrade v3 - string channel_ibc = 3; -} - -message BatchFees { - option deprecated = true; - string token_contract = 1; - string total_fees = 2 [ - (cosmos_proto.scalar) = "cosmos.Int", - (gogoproto.customtype) = "cosmossdk.io/math.Int", - (gogoproto.nullable) = false - ]; - uint64 total_txs = 3; - string total_amount = 4 [ - (cosmos_proto.scalar) = "cosmos.Int", - (gogoproto.customtype) = "cosmossdk.io/math.Int", - (gogoproto.nullable) = false - ]; -} - -message MinBatchFee { - option deprecated = true; - string token_contract = 1; - string base_fee = 2 [ - (cosmos_proto.scalar) = "cosmos.Int", - (gogoproto.customtype) = "cosmossdk.io/math.Int", - (gogoproto.nullable) = false - ]; -} - -message QueryBatchFeeRequest { - option deprecated = true; - string chain_name = 1; - repeated MinBatchFee min_batch_fees = 2 [ (gogoproto.nullable) = false ]; -} - -message QueryBatchFeeResponse { - option deprecated = true; - repeated BatchFees batch_fees = 1; -} diff --git a/proto/fx/gravity/crosschain/v1/query.proto b/proto/fx/gravity/crosschain/v1/query.proto index 585773a8..1334174d 100644 --- a/proto/fx/gravity/crosschain/v1/query.proto +++ b/proto/fx/gravity/crosschain/v1/query.proto @@ -6,7 +6,6 @@ import "cosmos/base/v1beta1/coin.proto"; import "cosmos_proto/cosmos.proto"; import "fx/gravity/crosschain/v1/tx.proto"; import "fx/gravity/crosschain/v1/types.proto"; -import "fx/gravity/crosschain/v1/legacy.proto"; import "gogoproto/gogo.proto"; import "google/api/annotations.proto"; import "google/protobuf/any.proto"; @@ -296,6 +295,11 @@ message QueryProjectedBatchTimeoutHeightResponse { uint64 timeout_height = 1; } message QueryBridgeTokensRequest { string chain_name = 1; } message QueryBridgeTokensResponse { repeated BridgeToken bridge_tokens = 1; } +message BridgeToken { + string token = 1; + string denom = 2; +} + message QueryBridgeCoinByDenomRequest { string chain_name = 1; string denom = 2; diff --git a/proto/fx/gravity/crosschain/v1/tx.proto b/proto/fx/gravity/crosschain/v1/tx.proto index 91113024..c9422e2b 100644 --- a/proto/fx/gravity/crosschain/v1/tx.proto +++ b/proto/fx/gravity/crosschain/v1/tx.proto @@ -5,7 +5,6 @@ import "cosmos/base/v1beta1/coin.proto"; import "cosmos/msg/v1/msg.proto"; import "cosmos_proto/cosmos.proto"; import "fx/gravity/crosschain/v1/types.proto"; -import "fx/gravity/crosschain/v1/legacy.proto"; import "gogoproto/gogo.proto"; import "google/protobuf/any.proto"; import "amino/amino.proto"; @@ -306,3 +305,26 @@ message MsgConfirm { } message MsgConfirmResponse {} + +message MsgOracleSetConfirmResponse { option deprecated = true; } + +message MsgConfirmBatchResponse { option deprecated = true; } + +message MsgBridgeCallConfirmResponse { option deprecated = true; } + +// Deprecated: Please use precompile BridgeCall +message MsgSendToExternal { + option (cosmos.msg.v1.signer) = "sender"; + option (amino.name) = "crosschain/MsgSendToExternal"; + + string sender = 1; + string dest = 2; + cosmos.base.v1beta1.Coin amount = 3 [ (gogoproto.nullable) = false ]; + cosmos.base.v1beta1.Coin bridge_fee = 4 [ (gogoproto.nullable) = false ]; + string chain_name = 5; +} + +message MsgSendToExternalResponse { + option deprecated = true; + uint64 batch_nonce = 1; +} diff --git a/proto/fx/gravity/v1/gravity_legacy.proto b/proto/fx/gravity/v1/gravity_legacy.proto index 31592b49..305f0c3b 100644 --- a/proto/fx/gravity/v1/gravity_legacy.proto +++ b/proto/fx/gravity/v1/gravity_legacy.proto @@ -22,21 +22,6 @@ message MsgSendToEth { cosmos.base.v1beta1.Coin bridge_fee = 4 [ (gogoproto.nullable) = false ]; } -// Deprecated: after upgrade v3 -message MsgRequestBatch { - string sender = 1; - string denom = 2; - string minimum_fee = 3 [ - (gogoproto.customtype) = "cosmossdk.io/math.Int", - (gogoproto.nullable) = false - ]; - string fee_receive = 4; - string base_fee = 5 [ - (gogoproto.customtype) = "cosmossdk.io/math.Int", - (gogoproto.nullable) = false - ]; -} - // Deprecated: after upgrade v3 message MsgConfirmBatch { uint64 nonce = 1; @@ -91,13 +76,6 @@ message BridgeValidator { string eth_address = 2; } -// Deprecated: after upgrade v3 -message MsgSetOrchestratorAddress { - string validator = 1; - string orchestrator = 2; - string eth_address = 3; -} - // Deprecated: after upgrade v3 message MsgFxOriginatedTokenClaim { uint64 event_nonce = 1; diff --git a/proto/fx/gravity/v1/legacy.proto b/proto/fx/gravity/v1/legacy.proto new file mode 100644 index 00000000..939390d0 --- /dev/null +++ b/proto/fx/gravity/v1/legacy.proto @@ -0,0 +1,29 @@ +syntax = "proto3"; +package fx.gravity.v1; + +import "cosmos/base/v1beta1/coin.proto"; +import "gogoproto/gogo.proto"; + +option go_package = "github.com/pundiai/fx-core/types/legacy/gravity"; + +// Deprecated: after upgrade v3 +message MsgRequestBatch { + string sender = 1; + string denom = 2; + string minimum_fee = 3 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; + string fee_receive = 4; + string base_fee = 5 [ + (gogoproto.customtype) = "cosmossdk.io/math.Int", + (gogoproto.nullable) = false + ]; +} + +// Deprecated: after upgrade v3 +message MsgSetOrchestratorAddress { + string validator = 1; + string orchestrator = 2; + string eth_address = 3; +} diff --git a/proto/fx/ibc/applications/transfer/v1/ibc_legacy.proto b/proto/fx/ibc/applications/transfer/v1/ibc_legacy.proto index f0aaa023..3c755413 100644 --- a/proto/fx/ibc/applications/transfer/v1/ibc_legacy.proto +++ b/proto/fx/ibc/applications/transfer/v1/ibc_legacy.proto @@ -10,6 +10,7 @@ option go_package = "github.com/pundiai/fx-core/types/legacy"; // ICS20 enabled chains. See ICS Spec here: // https://github.com/cosmos/ics/tree/master/spec/ics-020-fungible-token-transfer#data-structures message MsgTransfer { + option deprecated = true; option (gogoproto.equal) = false; option (gogoproto.goproto_getters) = false; @@ -53,6 +54,7 @@ message MsgTransfer { // height continues to be monitonically increasing even as the RevisionHeight // gets reset message Height { + option deprecated = true; option (gogoproto.goproto_getters) = true; option (gogoproto.goproto_stringer) = true; diff --git a/proto/fx/staking/v1/staking_legacy.proto b/proto/fx/staking/v1/staking_legacy.proto index c7a44bd2..17dfa018 100644 --- a/proto/fx/staking/v1/staking_legacy.proto +++ b/proto/fx/staking/v1/staking_legacy.proto @@ -7,6 +7,7 @@ import "google/protobuf/any.proto"; option go_package = "github.com/pundiai/fx-core/types/legacy"; message MsgGrantPrivilege { + option deprecated = true; string validator_address = 1; // validator address string from_address = 2; // from address google.protobuf.Any to_pubkey = 3 @@ -16,6 +17,7 @@ message MsgGrantPrivilege { } message MsgEditConsensusPubKey { + option deprecated = true; string validator_address = 1; string from = 2; google.protobuf.Any pubkey = 3 diff --git a/scripts/linter.sh b/scripts/linter.sh index bc378523..b286b972 100755 --- a/scripts/linter.sh +++ b/scripts/linter.sh @@ -4,8 +4,8 @@ set -eo pipefail patternLimits=( "nolint:22" - "#nosec:6" - "CrossChain:4" + "#nosec:5" + "CrossChain:2" "cross chain:0" "GetERC1967Proxy:4" ) @@ -22,7 +22,7 @@ check_pattern_count() { # Default values if not provided file_type=${file_type:-go} - rg_args=(--type go --glob '!*.pb.go' --glob '!*.pulsar.go' --glob '!*.sol.go' --glob '!legacy.go') + rg_args=(--type go --glob '!*.pb.go' --glob '!*.pulsar.go' --glob '!*.sol.go' --glob '!types/legacy/*.go') if [[ "$allowed_count" -eq 0 ]]; then if rg "${rg_args[@]}" "$pattern" ./ >/dev/null; then diff --git a/tests/amino_test.go b/tests/amino_test.go index d48fc0dc..7209a40b 100644 --- a/tests/amino_test.go +++ b/tests/amino_test.go @@ -17,6 +17,7 @@ import ( "github.com/stretchr/testify/require" "github.com/pundiai/fx-core/v8/testutil/helpers" + legacytypes "github.com/pundiai/fx-core/v8/types/legacy" crosschaintypes "github.com/pundiai/fx-core/v8/x/crosschain/types" erc20types "github.com/pundiai/fx-core/v8/x/erc20/types" ) @@ -69,7 +70,7 @@ func TestAminoEncode(t *testing.T) { name: "erc20-RegisterCoinProposal", expected: `{"type":"cosmos-sdk/MsgSubmitProposal","value":{"content":{"type":"erc20/RegisterCoinProposal","value":{"description":"foo","metadata":{"base":"test","denom_units":[{"aliases":["ethtest"],"denom":"test"},{"denom":"TEST","exponent":18}],"description":"test","display":"test","name":"test name","symbol":"TEST"},"title":"v2"}},"initial_deposit":[]}}`, msg: govv1betal.MsgSubmitProposal{ - Content: mustNewAnyWithValue(&erc20types.RegisterCoinProposal{ + Content: mustNewAnyWithValue(&legacytypes.RegisterCoinProposal{ Title: "v2", Description: "foo", Metadata: types.Metadata{ diff --git a/tests/integration/crosschain_suite.go b/tests/integration/crosschain_suite.go index 0e5b453e..8d228ab3 100644 --- a/tests/integration/crosschain_suite.go +++ b/tests/integration/crosschain_suite.go @@ -336,20 +336,10 @@ func (suite *CrosschainSuite) SendToExternalAndCancel(coin sdk.Coin) { _, txId := suite.SendToExternal(1, coin) suite.Greater(txId, uint64(0)) - suite.SendCancelSendToExternal(txId) - balAfter := suite.GetAllBalances(suite.signer.AccAddress()) suite.Equal(balBefore.AmountOf(coin.Denom), balAfter.AmountOf(coin.Denom)) } -func (suite *CrosschainSuite) SendCancelSendToExternal(txId uint64) { - suite.BroadcastTx(suite.signer, &crosschaintypes.MsgCancelSendToExternal{ - TransactionId: txId, - Sender: suite.signer.AccAddress().String(), - ChainName: suite.chainName, - }) -} - func (suite *CrosschainSuite) SendConfirmBatch() { response, err := suite.CrosschainQuery().LastPendingBatchRequestByAddr( suite.ctx, diff --git a/types/legacy/codec.go b/types/legacy/codec.go new file mode 100644 index 00000000..2e17816e --- /dev/null +++ b/types/legacy/codec.go @@ -0,0 +1,105 @@ +package legacy + +import ( + "github.com/cosmos/cosmos-sdk/codec" + "github.com/cosmos/cosmos-sdk/codec/types" + sdk "github.com/cosmos/cosmos-sdk/types" + govv1betal "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" + + "github.com/pundiai/fx-core/v8/types/legacy/gravity" +) + +// RegisterInterfaces registers the interfaces for the proto stuff +func RegisterInterfaces(registry types.InterfaceRegistry) { + registry.RegisterImplementations((*sdk.Msg)(nil), + &MsgSetOrchestratorAddress{}, + &MsgAddOracleDeposit{}, + &MsgCancelSendToExternal{}, + &MsgIncreaseBridgeFee{}, + &MsgRequestBatch{}, + + &MsgValsetConfirm{}, + &MsgSendToEth{}, + &MsgRequestBatch{}, + &MsgConfirmBatch{}, + &MsgDepositClaim{}, + &MsgWithdrawClaim{}, + &MsgSetOrchestratorAddress{}, + &MsgCancelSendToEth{}, + &MsgValsetUpdatedClaim{}, + &MsgFxOriginatedTokenClaim{}, + + &MsgGrantPrivilege{}, + &MsgEditConsensusPubKey{}, + + &MsgUpdateFXParams{}, + &MsgUpdateEGFParams{}, + &MsgUpdateParams{}, + + &MsgConvertERC20{}, + &MsgConvertDenom{}, + &MsgRegisterCoin{}, + &MsgRegisterERC20{}, + &MsgUpdateDenomAlias{}, + + &MsgTransfer{}, + + &gravity.MsgRequestBatch{}, + &gravity.MsgSetOrchestratorAddress{}, + ) + + registry.RegisterImplementations( + (*govv1betal.Content)(nil), + &InitEvmParamsProposal{}, + + &RegisterCoinProposal{}, + &RegisterERC20Proposal{}, + &ToggleTokenConversionProposal{}, + &UpdateDenomAliasProposal{}, + + &InitCrossChainParamsProposal{}, + &UpdateChainOraclesProposal{}, + ) +} + +// RegisterLegacyAminoCodec registers concrete types on the Amino codec +func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { + cdc.RegisterConcrete(&gravity.MsgSetOrchestratorAddress{}, "gravity/MsgSetOrchestratorAddress", nil) + cdc.RegisterConcrete(&MsgValsetConfirm{}, "gravity/MsgValsetConfirm", nil) + cdc.RegisterConcrete(&MsgSendToEth{}, "gravity/MsgSendToEth", nil) + cdc.RegisterConcrete(&gravity.MsgRequestBatch{}, "gravity/MsgRequestBatch", nil) + cdc.RegisterConcrete(&MsgConfirmBatch{}, "gravity/MsgConfirmBatch", nil) + cdc.RegisterConcrete(&MsgDepositClaim{}, "gravity/MsgDepositClaim", nil) + cdc.RegisterConcrete(&MsgWithdrawClaim{}, "gravity/MsgWithdrawClaim", nil) + cdc.RegisterConcrete(&MsgCancelSendToEth{}, "gravity/MsgCancelSendToEth", nil) + cdc.RegisterConcrete(&MsgValsetUpdatedClaim{}, "gravity/MsgValsetUpdatedClaim", nil) + cdc.RegisterConcrete(&MsgFxOriginatedTokenClaim{}, "gravity/MsgFxOriginatedTokenClaim", nil) + + cdc.RegisterConcrete(&MsgGrantPrivilege{}, "staking/MsgGrantPrivilege", nil) + cdc.RegisterConcrete(&MsgEditConsensusPubKey{}, "staking/MsgEditConsensusPubKey", nil) + + cdc.RegisterConcrete(&MsgUpdateFXParams{}, "gov/MsgUpdateFXParams", nil) + cdc.RegisterConcrete(&MsgUpdateEGFParams{}, "gov/MsgUpdateEGFParams", nil) + + cdc.RegisterConcrete(&MsgConvertERC20{}, "erc20/MsgConvertERC20", nil) + cdc.RegisterConcrete(&MsgConvertDenom{}, "erc20/MsgConvertDenom", nil) + cdc.RegisterConcrete(&MsgRegisterCoin{}, "erc20/MsgRegisterCoin", nil) + cdc.RegisterConcrete(&MsgRegisterERC20{}, "erc20/MsgRegisterERC20", nil) + cdc.RegisterConcrete(&MsgUpdateDenomAlias{}, "erc20/MsgUpdateDenomAlias", nil) + + cdc.RegisterConcrete(&RegisterCoinProposal{}, "erc20/RegisterCoinProposal", nil) + cdc.RegisterConcrete(&RegisterERC20Proposal{}, "erc20/RegisterERC20Proposal", nil) + cdc.RegisterConcrete(&ToggleTokenConversionProposal{}, "erc20/ToggleTokenConversionProposal", nil) + cdc.RegisterConcrete(&UpdateDenomAliasProposal{}, "erc20/UpdateDenomAliasProposal", nil) + + cdc.RegisterConcrete(&UpdateChainOraclesProposal{}, "crosschain/UpdateChainOraclesProposal", nil) + cdc.RegisterConcrete(&InitCrossChainParamsProposal{}, "crosschain/InitCrossChainParamsProposal", nil) + + cdc.RegisterConcrete(&MsgCancelSendToExternal{}, "crosschain/MsgCancelSendToExternal", nil) + cdc.RegisterConcrete(&MsgIncreaseBridgeFee{}, "crosschain/MsgIncreaseBridgeFee", nil) + cdc.RegisterConcrete(&MsgRequestBatch{}, "crosschain/MsgRequestBatch", nil) + cdc.RegisterConcrete(&MsgSetOrchestratorAddress{}, "crosschain/MsgSetOrchestratorAddress", nil) + cdc.RegisterConcrete(&MsgAddOracleDeposit{}, "crosschain/MsgAddOracleDeposit", nil) + + cdc.RegisterConcrete(&MsgTransfer{}, "fxtransfer/MsgTransfer", nil) +} diff --git a/types/legacy/crosschain_legacy.pb.go b/types/legacy/crosschain_legacy.pb.go new file mode 100644 index 00000000..62499f6d --- /dev/null +++ b/types/legacy/crosschain_legacy.pb.go @@ -0,0 +1,3197 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: fx/gravity/crosschain/v1/crosschain_legacy.proto + +package legacy + +import ( + cosmossdk_io_math "cosmossdk.io/math" + fmt "fmt" + _ "github.com/cosmos/cosmos-proto" + types "github.com/cosmos/cosmos-sdk/types" + _ "github.com/cosmos/cosmos-sdk/types/msgservice" + _ "github.com/cosmos/cosmos-sdk/types/tx/amino" + _ "github.com/cosmos/gogoproto/gogoproto" + proto "github.com/cosmos/gogoproto/proto" + io "io" + math "math" + math_bits "math/bits" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Deprecated: after block 5713000 +type InitCrossChainParamsProposal struct { + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` + Params *ForkParams `protobuf:"bytes,3,opt,name=params,proto3" json:"params,omitempty"` + ChainName string `protobuf:"bytes,4,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (m *InitCrossChainParamsProposal) Reset() { *m = InitCrossChainParamsProposal{} } +func (*InitCrossChainParamsProposal) ProtoMessage() {} +func (*InitCrossChainParamsProposal) Descriptor() ([]byte, []int) { + return fileDescriptor_276fc1a91771efc3, []int{0} +} +func (m *InitCrossChainParamsProposal) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *InitCrossChainParamsProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_InitCrossChainParamsProposal.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 *InitCrossChainParamsProposal) XXX_Merge(src proto.Message) { + xxx_messageInfo_InitCrossChainParamsProposal.Merge(m, src) +} +func (m *InitCrossChainParamsProposal) XXX_Size() int { + return m.Size() +} +func (m *InitCrossChainParamsProposal) XXX_DiscardUnknown() { + xxx_messageInfo_InitCrossChainParamsProposal.DiscardUnknown(m) +} + +var xxx_messageInfo_InitCrossChainParamsProposal proto.InternalMessageInfo + +type ForkParams struct { + GravityId string `protobuf:"bytes,1,opt,name=gravity_id,json=gravityId,proto3" json:"gravity_id,omitempty"` + AverageBlockTime uint64 `protobuf:"varint,2,opt,name=average_block_time,json=averageBlockTime,proto3" json:"average_block_time,omitempty"` + ExternalBatchTimeout uint64 `protobuf:"varint,3,opt,name=external_batch_timeout,json=externalBatchTimeout,proto3" json:"external_batch_timeout,omitempty"` + AverageExternalBlockTime uint64 `protobuf:"varint,4,opt,name=average_external_block_time,json=averageExternalBlockTime,proto3" json:"average_external_block_time,omitempty"` + SignedWindow uint64 `protobuf:"varint,5,opt,name=signed_window,json=signedWindow,proto3" json:"signed_window,omitempty"` + SlashFraction cosmossdk_io_math.LegacyDec `protobuf:"bytes,6,opt,name=slash_fraction,json=slashFraction,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"slash_fraction"` + OracleSetUpdatePowerChangePercent cosmossdk_io_math.LegacyDec `protobuf:"bytes,7,opt,name=oracle_set_update_power_change_percent,json=oracleSetUpdatePowerChangePercent,proto3,customtype=cosmossdk.io/math.LegacyDec" json:"oracle_set_update_power_change_percent"` + IbcTransferTimeoutHeight uint64 `protobuf:"varint,8,opt,name=ibc_transfer_timeout_height,json=ibcTransferTimeoutHeight,proto3" json:"ibc_transfer_timeout_height,omitempty"` + // Deprecated: after block 5713000 + Oracles []string `protobuf:"bytes,9,rep,name=oracles,proto3" json:"oracles,omitempty"` + DelegateThreshold types.Coin `protobuf:"bytes,10,opt,name=delegate_threshold,json=delegateThreshold,proto3" json:"delegate_threshold"` + DelegateMultiple int64 `protobuf:"varint,11,opt,name=delegate_multiple,json=delegateMultiple,proto3" json:"delegate_multiple,omitempty"` + BridgeCallTimeout uint64 `protobuf:"varint,12,opt,name=bridge_call_timeout,json=bridgeCallTimeout,proto3" json:"bridge_call_timeout,omitempty"` + BridgeCallMaxGasLimit uint64 `protobuf:"varint,13,opt,name=bridge_call_max_gas_limit,json=bridgeCallMaxGasLimit,proto3" json:"bridge_call_max_gas_limit,omitempty"` + // Deprecated: do not use + EnableSendToExternalPending bool `protobuf:"varint,14,opt,name=enable_send_to_external_pending,json=enableSendToExternalPending,proto3" json:"enable_send_to_external_pending,omitempty"` + // Deprecated: do not use + EnableBridgeCallPending bool `protobuf:"varint,15,opt,name=enable_bridge_call_pending,json=enableBridgeCallPending,proto3" json:"enable_bridge_call_pending,omitempty"` +} + +func (m *ForkParams) Reset() { *m = ForkParams{} } +func (m *ForkParams) String() string { return proto.CompactTextString(m) } +func (*ForkParams) ProtoMessage() {} +func (*ForkParams) Descriptor() ([]byte, []int) { + return fileDescriptor_276fc1a91771efc3, []int{1} +} +func (m *ForkParams) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *ForkParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_ForkParams.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 *ForkParams) XXX_Merge(src proto.Message) { + xxx_messageInfo_ForkParams.Merge(m, src) +} +func (m *ForkParams) XXX_Size() int { + return m.Size() +} +func (m *ForkParams) XXX_DiscardUnknown() { + xxx_messageInfo_ForkParams.DiscardUnknown(m) +} + +var xxx_messageInfo_ForkParams proto.InternalMessageInfo + +func (m *ForkParams) GetGravityId() string { + if m != nil { + return m.GravityId + } + return "" +} + +func (m *ForkParams) GetAverageBlockTime() uint64 { + if m != nil { + return m.AverageBlockTime + } + return 0 +} + +func (m *ForkParams) GetExternalBatchTimeout() uint64 { + if m != nil { + return m.ExternalBatchTimeout + } + return 0 +} + +func (m *ForkParams) GetAverageExternalBlockTime() uint64 { + if m != nil { + return m.AverageExternalBlockTime + } + return 0 +} + +func (m *ForkParams) GetSignedWindow() uint64 { + if m != nil { + return m.SignedWindow + } + return 0 +} + +func (m *ForkParams) GetIbcTransferTimeoutHeight() uint64 { + if m != nil { + return m.IbcTransferTimeoutHeight + } + return 0 +} + +func (m *ForkParams) GetOracles() []string { + if m != nil { + return m.Oracles + } + return nil +} + +func (m *ForkParams) GetDelegateThreshold() types.Coin { + if m != nil { + return m.DelegateThreshold + } + return types.Coin{} +} + +func (m *ForkParams) GetDelegateMultiple() int64 { + if m != nil { + return m.DelegateMultiple + } + return 0 +} + +func (m *ForkParams) GetBridgeCallTimeout() uint64 { + if m != nil { + return m.BridgeCallTimeout + } + return 0 +} + +func (m *ForkParams) GetBridgeCallMaxGasLimit() uint64 { + if m != nil { + return m.BridgeCallMaxGasLimit + } + return 0 +} + +func (m *ForkParams) GetEnableSendToExternalPending() bool { + if m != nil { + return m.EnableSendToExternalPending + } + return false +} + +func (m *ForkParams) GetEnableBridgeCallPending() bool { + if m != nil { + return m.EnableBridgeCallPending + } + return false +} + +// Deprecated: Do not use. +type UpdateChainOraclesProposal struct { + // the title of the update proposal + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` + // the description of the proposal + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` + Oracles []string `protobuf:"bytes,3,rep,name=oracles,proto3" json:"oracles,omitempty"` + ChainName string `protobuf:"bytes,4,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (m *UpdateChainOraclesProposal) Reset() { *m = UpdateChainOraclesProposal{} } +func (*UpdateChainOraclesProposal) ProtoMessage() {} +func (*UpdateChainOraclesProposal) Descriptor() ([]byte, []int) { + return fileDescriptor_276fc1a91771efc3, []int{2} +} +func (m *UpdateChainOraclesProposal) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *UpdateChainOraclesProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_UpdateChainOraclesProposal.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 *UpdateChainOraclesProposal) XXX_Merge(src proto.Message) { + xxx_messageInfo_UpdateChainOraclesProposal.Merge(m, src) +} +func (m *UpdateChainOraclesProposal) XXX_Size() int { + return m.Size() +} +func (m *UpdateChainOraclesProposal) XXX_DiscardUnknown() { + xxx_messageInfo_UpdateChainOraclesProposal.DiscardUnknown(m) +} + +var xxx_messageInfo_UpdateChainOraclesProposal proto.InternalMessageInfo + +// Deprecated: after block 5713000 +type MsgSetOrchestratorAddress struct { + OracleAddress string `protobuf:"bytes,1,opt,name=oracle_address,json=oracleAddress,proto3" json:"oracle_address,omitempty"` + BridgerAddress string `protobuf:"bytes,2,opt,name=bridger_address,json=bridgerAddress,proto3" json:"bridger_address,omitempty"` + ExternalAddress string `protobuf:"bytes,3,opt,name=external_address,json=externalAddress,proto3" json:"external_address,omitempty"` + Deposit types.Coin `protobuf:"bytes,4,opt,name=deposit,proto3" json:"deposit"` + ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (m *MsgSetOrchestratorAddress) Reset() { *m = MsgSetOrchestratorAddress{} } +func (m *MsgSetOrchestratorAddress) String() string { return proto.CompactTextString(m) } +func (*MsgSetOrchestratorAddress) ProtoMessage() {} +func (*MsgSetOrchestratorAddress) Descriptor() ([]byte, []int) { + return fileDescriptor_276fc1a91771efc3, []int{3} +} +func (m *MsgSetOrchestratorAddress) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgSetOrchestratorAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgSetOrchestratorAddress.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 *MsgSetOrchestratorAddress) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgSetOrchestratorAddress.Merge(m, src) +} +func (m *MsgSetOrchestratorAddress) XXX_Size() int { + return m.Size() +} +func (m *MsgSetOrchestratorAddress) XXX_DiscardUnknown() { + xxx_messageInfo_MsgSetOrchestratorAddress.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgSetOrchestratorAddress proto.InternalMessageInfo + +func (m *MsgSetOrchestratorAddress) GetOracleAddress() string { + if m != nil { + return m.OracleAddress + } + return "" +} + +func (m *MsgSetOrchestratorAddress) GetBridgerAddress() string { + if m != nil { + return m.BridgerAddress + } + return "" +} + +func (m *MsgSetOrchestratorAddress) GetExternalAddress() string { + if m != nil { + return m.ExternalAddress + } + return "" +} + +func (m *MsgSetOrchestratorAddress) GetDeposit() types.Coin { + if m != nil { + return m.Deposit + } + return types.Coin{} +} + +func (m *MsgSetOrchestratorAddress) GetChainName() string { + if m != nil { + return m.ChainName + } + return "" +} + +// Deprecated: after block 5713000 +type MsgAddOracleDeposit struct { + OracleAddress string `protobuf:"bytes,1,opt,name=oracle_address,json=oracleAddress,proto3" json:"oracle_address,omitempty"` + Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount"` + ChainName string `protobuf:"bytes,3,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (m *MsgAddOracleDeposit) Reset() { *m = MsgAddOracleDeposit{} } +func (m *MsgAddOracleDeposit) String() string { return proto.CompactTextString(m) } +func (*MsgAddOracleDeposit) ProtoMessage() {} +func (*MsgAddOracleDeposit) Descriptor() ([]byte, []int) { + return fileDescriptor_276fc1a91771efc3, []int{4} +} +func (m *MsgAddOracleDeposit) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgAddOracleDeposit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgAddOracleDeposit.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 *MsgAddOracleDeposit) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgAddOracleDeposit.Merge(m, src) +} +func (m *MsgAddOracleDeposit) XXX_Size() int { + return m.Size() +} +func (m *MsgAddOracleDeposit) XXX_DiscardUnknown() { + xxx_messageInfo_MsgAddOracleDeposit.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgAddOracleDeposit proto.InternalMessageInfo + +func (m *MsgAddOracleDeposit) GetOracleAddress() string { + if m != nil { + return m.OracleAddress + } + return "" +} + +func (m *MsgAddOracleDeposit) GetAmount() types.Coin { + if m != nil { + return m.Amount + } + return types.Coin{} +} + +func (m *MsgAddOracleDeposit) GetChainName() string { + if m != nil { + return m.ChainName + } + return "" +} + +// Deprecated: Do not use. +type MsgCancelSendToExternal struct { + TransactionId uint64 `protobuf:"varint,1,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` + Sender string `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"` + ChainName string `protobuf:"bytes,3,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (m *MsgCancelSendToExternal) Reset() { *m = MsgCancelSendToExternal{} } +func (m *MsgCancelSendToExternal) String() string { return proto.CompactTextString(m) } +func (*MsgCancelSendToExternal) ProtoMessage() {} +func (*MsgCancelSendToExternal) Descriptor() ([]byte, []int) { + return fileDescriptor_276fc1a91771efc3, []int{5} +} +func (m *MsgCancelSendToExternal) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgCancelSendToExternal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgCancelSendToExternal.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 *MsgCancelSendToExternal) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgCancelSendToExternal.Merge(m, src) +} +func (m *MsgCancelSendToExternal) XXX_Size() int { + return m.Size() +} +func (m *MsgCancelSendToExternal) XXX_DiscardUnknown() { + xxx_messageInfo_MsgCancelSendToExternal.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgCancelSendToExternal proto.InternalMessageInfo + +func (m *MsgCancelSendToExternal) GetTransactionId() uint64 { + if m != nil { + return m.TransactionId + } + return 0 +} + +func (m *MsgCancelSendToExternal) GetSender() string { + if m != nil { + return m.Sender + } + return "" +} + +func (m *MsgCancelSendToExternal) GetChainName() string { + if m != nil { + return m.ChainName + } + return "" +} + +// Deprecated: Do not use. +type MsgRequestBatch struct { + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` + MinimumFee cosmossdk_io_math.Int `protobuf:"bytes,3,opt,name=minimum_fee,json=minimumFee,proto3,customtype=cosmossdk.io/math.Int" json:"minimum_fee"` + FeeReceive string `protobuf:"bytes,4,opt,name=fee_receive,json=feeReceive,proto3" json:"fee_receive,omitempty"` + ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` + BaseFee cosmossdk_io_math.Int `protobuf:"bytes,6,opt,name=base_fee,json=baseFee,proto3,customtype=cosmossdk.io/math.Int" json:"base_fee"` +} + +func (m *MsgRequestBatch) Reset() { *m = MsgRequestBatch{} } +func (m *MsgRequestBatch) String() string { return proto.CompactTextString(m) } +func (*MsgRequestBatch) ProtoMessage() {} +func (*MsgRequestBatch) Descriptor() ([]byte, []int) { + return fileDescriptor_276fc1a91771efc3, []int{6} +} +func (m *MsgRequestBatch) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgRequestBatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgRequestBatch.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 *MsgRequestBatch) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgRequestBatch.Merge(m, src) +} +func (m *MsgRequestBatch) XXX_Size() int { + return m.Size() +} +func (m *MsgRequestBatch) XXX_DiscardUnknown() { + xxx_messageInfo_MsgRequestBatch.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgRequestBatch proto.InternalMessageInfo + +func (m *MsgRequestBatch) GetSender() string { + if m != nil { + return m.Sender + } + return "" +} + +func (m *MsgRequestBatch) GetDenom() string { + if m != nil { + return m.Denom + } + return "" +} + +func (m *MsgRequestBatch) GetFeeReceive() string { + if m != nil { + return m.FeeReceive + } + return "" +} + +func (m *MsgRequestBatch) GetChainName() string { + if m != nil { + return m.ChainName + } + return "" +} + +// Deprecated: Do not use. +type MsgIncreaseBridgeFee struct { + ChainName string `protobuf:"bytes,1,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` + TransactionId uint64 `protobuf:"varint,2,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` + Sender string `protobuf:"bytes,3,opt,name=sender,proto3" json:"sender,omitempty"` + AddBridgeFee types.Coin `protobuf:"bytes,4,opt,name=add_bridge_fee,json=addBridgeFee,proto3" json:"add_bridge_fee"` +} + +func (m *MsgIncreaseBridgeFee) Reset() { *m = MsgIncreaseBridgeFee{} } +func (m *MsgIncreaseBridgeFee) String() string { return proto.CompactTextString(m) } +func (*MsgIncreaseBridgeFee) ProtoMessage() {} +func (*MsgIncreaseBridgeFee) Descriptor() ([]byte, []int) { + return fileDescriptor_276fc1a91771efc3, []int{7} +} +func (m *MsgIncreaseBridgeFee) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgIncreaseBridgeFee) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgIncreaseBridgeFee.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 *MsgIncreaseBridgeFee) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgIncreaseBridgeFee.Merge(m, src) +} +func (m *MsgIncreaseBridgeFee) XXX_Size() int { + return m.Size() +} +func (m *MsgIncreaseBridgeFee) XXX_DiscardUnknown() { + xxx_messageInfo_MsgIncreaseBridgeFee.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgIncreaseBridgeFee proto.InternalMessageInfo + +func (m *MsgIncreaseBridgeFee) GetChainName() string { + if m != nil { + return m.ChainName + } + return "" +} + +func (m *MsgIncreaseBridgeFee) GetTransactionId() uint64 { + if m != nil { + return m.TransactionId + } + return 0 +} + +func (m *MsgIncreaseBridgeFee) GetSender() string { + if m != nil { + return m.Sender + } + return "" +} + +func (m *MsgIncreaseBridgeFee) GetAddBridgeFee() types.Coin { + if m != nil { + return m.AddBridgeFee + } + return types.Coin{} +} + +func init() { + proto.RegisterType((*InitCrossChainParamsProposal)(nil), "fx.gravity.crosschain.v1.InitCrossChainParamsProposal") + proto.RegisterType((*ForkParams)(nil), "fx.gravity.crosschain.v1.ForkParams") + proto.RegisterType((*UpdateChainOraclesProposal)(nil), "fx.gravity.crosschain.v1.UpdateChainOraclesProposal") + proto.RegisterType((*MsgSetOrchestratorAddress)(nil), "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress") + proto.RegisterType((*MsgAddOracleDeposit)(nil), "fx.gravity.crosschain.v1.MsgAddOracleDeposit") + proto.RegisterType((*MsgCancelSendToExternal)(nil), "fx.gravity.crosschain.v1.MsgCancelSendToExternal") + proto.RegisterType((*MsgRequestBatch)(nil), "fx.gravity.crosschain.v1.MsgRequestBatch") + proto.RegisterType((*MsgIncreaseBridgeFee)(nil), "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee") +} + +func init() { + proto.RegisterFile("fx/gravity/crosschain/v1/crosschain_legacy.proto", fileDescriptor_276fc1a91771efc3) +} + +var fileDescriptor_276fc1a91771efc3 = []byte{ + // 1245 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0x4b, 0x6f, 0x1c, 0xc5, + 0x13, 0xdf, 0xf1, 0xae, 0xed, 0xb8, 0xfd, 0x4a, 0x26, 0x4e, 0x32, 0x76, 0xfe, 0xff, 0xdd, 0x65, + 0x09, 0xc4, 0xe4, 0xb1, 0x83, 0x21, 0xe2, 0x61, 0xc2, 0x21, 0x6b, 0xc7, 0x60, 0x29, 0x9b, 0x58, + 0x13, 0x23, 0x10, 0x97, 0x51, 0xef, 0x74, 0xed, 0x6c, 0x2b, 0x33, 0xdd, 0x4b, 0x77, 0xaf, 0xe3, + 0xdc, 0x10, 0xe2, 0x80, 0x38, 0x71, 0xe4, 0x82, 0x14, 0x89, 0x33, 0x28, 0x07, 0xbe, 0x00, 0xe2, + 0x92, 0x03, 0x87, 0x88, 0x13, 0x42, 0x28, 0x42, 0xc9, 0x21, 0x9c, 0xf8, 0x0c, 0x68, 0xba, 0x7b, + 0xf6, 0x15, 0x82, 0x0d, 0x5c, 0x2c, 0x77, 0xd5, 0xaf, 0xaa, 0x7e, 0xf5, 0x9c, 0x45, 0x2f, 0xb7, + 0xf7, 0xfd, 0x58, 0xe0, 0x3d, 0xaa, 0xee, 0xf8, 0x91, 0xe0, 0x52, 0x46, 0x1d, 0x4c, 0x99, 0xbf, + 0xb7, 0x36, 0xf4, 0x0a, 0x13, 0x88, 0x71, 0x74, 0xa7, 0xde, 0x15, 0x5c, 0x71, 0xd7, 0x6b, 0xef, + 0xd7, 0xad, 0x45, 0x7d, 0x80, 0xa9, 0xef, 0xad, 0xad, 0x2c, 0xc5, 0x3c, 0xe6, 0x1a, 0xe4, 0x67, + 0xff, 0x19, 0xfc, 0x4a, 0x39, 0xe2, 0x32, 0xe5, 0xd2, 0x6f, 0x61, 0x09, 0xfe, 0xde, 0x5a, 0x0b, + 0x14, 0x5e, 0xf3, 0x23, 0x4e, 0x99, 0xd5, 0x9f, 0xb2, 0xfa, 0x54, 0xc6, 0x59, 0xd8, 0x54, 0xc6, + 0x56, 0xb1, 0x6c, 0x14, 0xa1, 0xf1, 0x68, 0x1e, 0x56, 0x75, 0x0c, 0xa7, 0x94, 0x71, 0x5f, 0xff, + 0x35, 0xa2, 0xda, 0xf7, 0x0e, 0xfa, 0xdf, 0x36, 0xa3, 0x6a, 0x23, 0xa3, 0xb4, 0x91, 0x51, 0xda, + 0xc1, 0x02, 0xa7, 0x72, 0x47, 0xf0, 0x2e, 0x97, 0x38, 0x71, 0x97, 0xd0, 0xa4, 0xa2, 0x2a, 0x01, + 0xcf, 0xa9, 0x3a, 0xab, 0x33, 0x81, 0x79, 0xb8, 0x55, 0x34, 0x4b, 0x40, 0x46, 0x82, 0x76, 0x15, + 0xe5, 0xcc, 0x9b, 0xd0, 0xba, 0x61, 0x91, 0x7b, 0x19, 0x4d, 0x75, 0xb5, 0x27, 0xaf, 0x58, 0x75, + 0x56, 0x67, 0x5f, 0x39, 0x53, 0x7f, 0x56, 0x01, 0xea, 0x5b, 0x5c, 0xdc, 0x32, 0x51, 0x03, 0x6b, + 0xe3, 0xfe, 0x1f, 0x21, 0x53, 0x43, 0x86, 0x53, 0xf0, 0x4a, 0xda, 0xfd, 0x8c, 0x96, 0x5c, 0xc7, + 0x29, 0xac, 0xcf, 0x7d, 0x76, 0xb7, 0x52, 0xf8, 0xf2, 0x6e, 0xa5, 0xf0, 0xfb, 0xdd, 0x4a, 0xa1, + 0xf6, 0xf5, 0x34, 0x42, 0x03, 0x1f, 0x99, 0xad, 0x8d, 0x13, 0x52, 0x62, 0x69, 0xcf, 0x58, 0xc9, + 0x36, 0x71, 0x2f, 0x20, 0x17, 0xef, 0x81, 0xc0, 0x31, 0x84, 0xad, 0x84, 0x47, 0xb7, 0x42, 0x45, + 0x53, 0xd0, 0x19, 0x94, 0x82, 0xa3, 0x56, 0xd3, 0xc8, 0x14, 0xbb, 0x34, 0x05, 0xf7, 0x12, 0x3a, + 0x09, 0xfb, 0x0a, 0x04, 0xc3, 0x49, 0xd8, 0xc2, 0x2a, 0xea, 0x68, 0x38, 0xef, 0x29, 0x9d, 0x56, + 0x29, 0x58, 0xca, 0xb5, 0x8d, 0x4c, 0xb9, 0x6b, 0x74, 0xee, 0xdb, 0xe8, 0x74, 0x1e, 0x63, 0x60, + 0x3d, 0x08, 0x56, 0xd2, 0xa6, 0x9e, 0x85, 0x5c, 0xcd, 0x3d, 0xf4, 0x83, 0x3e, 0x8f, 0xe6, 0x25, + 0x8d, 0x19, 0x90, 0xf0, 0x36, 0x65, 0x84, 0xdf, 0xf6, 0x26, 0xb5, 0xc1, 0x9c, 0x11, 0xbe, 0xaf, + 0x65, 0xee, 0x07, 0x68, 0x41, 0x26, 0x58, 0x76, 0xc2, 0xb6, 0xc0, 0x91, 0xee, 0xc2, 0x54, 0xd5, + 0x59, 0x9d, 0x6b, 0xac, 0xdd, 0x7f, 0x58, 0x29, 0xfc, 0xf2, 0xb0, 0x72, 0xda, 0xb4, 0x5e, 0x92, + 0x5b, 0x75, 0xca, 0xfd, 0x14, 0xab, 0x4e, 0xfd, 0x9a, 0x1e, 0xc8, 0x4d, 0x88, 0x7e, 0xfa, 0xee, + 0x22, 0xb2, 0x93, 0xb1, 0x09, 0x51, 0x30, 0xaf, 0x1d, 0x6d, 0x59, 0x3f, 0xee, 0xa7, 0x0e, 0x7a, + 0x91, 0x0b, 0x1c, 0x25, 0x10, 0x4a, 0x50, 0x61, 0xaf, 0x4b, 0xb0, 0x82, 0xb0, 0xcb, 0x6f, 0x83, + 0x08, 0xa3, 0x0e, 0x66, 0x31, 0x84, 0x5d, 0x10, 0x11, 0x30, 0xe5, 0x4d, 0xff, 0xdb, 0x90, 0xcf, + 0x99, 0x00, 0x37, 0x41, 0xbd, 0xa7, 0xdd, 0xef, 0x64, 0xde, 0x37, 0xb4, 0xf3, 0x1d, 0xe3, 0x3b, + 0x2b, 0x22, 0x6d, 0x45, 0xa1, 0x12, 0x98, 0xc9, 0x36, 0x88, 0xbc, 0xf0, 0x61, 0x07, 0x68, 0xdc, + 0x51, 0xde, 0x11, 0x53, 0x44, 0xda, 0x8a, 0x76, 0x2d, 0xc2, 0x56, 0xff, 0x5d, 0xad, 0x77, 0xcb, + 0x68, 0xda, 0xc4, 0x90, 0xde, 0x4c, 0xb5, 0xb8, 0x3a, 0xd3, 0x28, 0xdd, 0x7f, 0x58, 0x71, 0x82, + 0x5c, 0xe8, 0x5e, 0x47, 0x2e, 0x81, 0x6c, 0x45, 0x15, 0x84, 0xaa, 0x23, 0x40, 0x76, 0x78, 0x42, + 0x3c, 0xa4, 0x87, 0x75, 0xb9, 0x6e, 0xa9, 0x66, 0xdb, 0x57, 0xb7, 0xdb, 0x57, 0xdf, 0xe0, 0x94, + 0x69, 0x2f, 0x85, 0xe0, 0x58, 0x6e, 0xba, 0x9b, 0x5b, 0xba, 0xe7, 0x51, 0x5f, 0x18, 0xa6, 0xbd, + 0x44, 0xd1, 0x6e, 0x02, 0xde, 0x6c, 0xd5, 0x59, 0x2d, 0x06, 0x47, 0x73, 0x45, 0xd3, 0xca, 0xdd, + 0x3a, 0x3a, 0xde, 0x12, 0x94, 0xc4, 0x10, 0x46, 0x38, 0x49, 0xfa, 0x33, 0x35, 0xa7, 0x73, 0x3a, + 0x66, 0x54, 0x1b, 0x38, 0x49, 0xf2, 0x81, 0x7a, 0x03, 0x2d, 0x0f, 0xe3, 0x53, 0xbc, 0x1f, 0xc6, + 0x58, 0x86, 0x09, 0x4d, 0xa9, 0xf2, 0xe6, 0xb5, 0xd5, 0x89, 0x81, 0x55, 0x13, 0xef, 0xbf, 0x83, + 0xe5, 0xb5, 0x4c, 0xe9, 0x6e, 0xa2, 0x0a, 0x30, 0xdc, 0xd2, 0xbd, 0x64, 0x24, 0x54, 0x7c, 0x30, + 0x91, 0x5d, 0x60, 0x84, 0xb2, 0xd8, 0x5b, 0xa8, 0x3a, 0xab, 0x47, 0x82, 0xd3, 0x06, 0x76, 0x13, + 0x18, 0xd9, 0xe5, 0xf9, 0x4c, 0xee, 0x18, 0x88, 0xfb, 0x16, 0x5a, 0xb1, 0x5e, 0x86, 0x69, 0xe4, + 0x0e, 0x16, 0xb5, 0x83, 0x53, 0x06, 0xd1, 0xe8, 0xd3, 0xb0, 0xc6, 0xeb, 0xa5, 0x8f, 0x7f, 0xad, + 0x16, 0x6a, 0x5f, 0x39, 0x68, 0xc5, 0xf4, 0x5a, 0x9f, 0x99, 0x1b, 0xa6, 0x0d, 0xff, 0xf9, 0xce, + 0x78, 0x83, 0x36, 0x17, 0xb3, 0x36, 0x0f, 0x1a, 0x7c, 0xc0, 0x0d, 0x59, 0x18, 0xbe, 0x21, 0x9e, + 0x53, 0xfb, 0x76, 0x02, 0x2d, 0x37, 0x65, 0x7c, 0x13, 0xd4, 0x0d, 0x11, 0x75, 0x40, 0x2a, 0x81, + 0x15, 0x17, 0x57, 0x08, 0x11, 0x20, 0xa5, 0xfb, 0x02, 0x5a, 0xb0, 0x2b, 0x81, 0x8d, 0xc4, 0xf2, + 0x9c, 0x37, 0xd2, 0x1c, 0x76, 0x16, 0x2d, 0x9a, 0x02, 0x89, 0x3e, 0xce, 0x70, 0x5e, 0xb0, 0xe2, + 0x1c, 0xf8, 0x12, 0x3a, 0xda, 0xef, 0x43, 0x8e, 0x2c, 0x6a, 0xe4, 0x62, 0x2e, 0xcf, 0xa1, 0x6f, + 0xa2, 0x69, 0x02, 0x5d, 0x2e, 0xa9, 0xd2, 0x49, 0x1c, 0x62, 0x3a, 0x73, 0xfc, 0x58, 0x09, 0x26, + 0xc7, 0x4b, 0x70, 0xf9, 0x93, 0x27, 0xf7, 0xce, 0x8d, 0xe5, 0xf5, 0xf9, 0x93, 0x7b, 0xe7, 0xce, + 0x0c, 0x7d, 0xd2, 0x9e, 0x59, 0x92, 0xda, 0x8f, 0x0e, 0x3a, 0xde, 0x94, 0xf1, 0x15, 0x42, 0x4c, + 0x2f, 0x37, 0x6d, 0xd0, 0x43, 0x96, 0xea, 0x75, 0x34, 0x85, 0x53, 0xde, 0x63, 0x4a, 0x57, 0xe8, + 0x10, 0x59, 0x59, 0xf8, 0x58, 0x52, 0xc5, 0xf1, 0xa4, 0x5e, 0x7b, 0x46, 0x52, 0xe5, 0xd1, 0xa4, + 0xc6, 0x69, 0xd7, 0xbe, 0x71, 0xd0, 0xa9, 0xa6, 0x8c, 0x37, 0x30, 0x8b, 0x20, 0x19, 0xdd, 0x82, + 0x2c, 0x25, 0x7d, 0x86, 0xcc, 0x81, 0xcc, 0x3f, 0x2b, 0xa5, 0x60, 0x7e, 0x48, 0xba, 0x4d, 0xdc, + 0x93, 0x68, 0x2a, 0x5b, 0x32, 0x10, 0xb6, 0xe9, 0xf6, 0x75, 0x10, 0xe3, 0x4b, 0x19, 0x63, 0x8b, + 0xcd, 0x98, 0xd6, 0x46, 0x99, 0xfe, 0x15, 0x23, 0xcf, 0xa9, 0xfd, 0x30, 0x81, 0x16, 0x9b, 0x32, + 0x0e, 0xe0, 0xa3, 0x1e, 0x48, 0xa5, 0x3f, 0x3f, 0x43, 0x04, 0x9c, 0x11, 0x02, 0x4b, 0x68, 0x92, + 0x00, 0xe3, 0xa9, 0xe5, 0x65, 0x1e, 0xee, 0x35, 0x34, 0x9b, 0x52, 0x46, 0xd3, 0x5e, 0x1a, 0xb6, + 0xc1, 0xf2, 0x6a, 0x9c, 0xb7, 0xb7, 0xfc, 0xc4, 0xd3, 0xb7, 0x7c, 0x9b, 0xa9, 0xa1, 0x2b, 0xbe, + 0xcd, 0x54, 0x80, 0xac, 0xfd, 0x16, 0x80, 0x5b, 0x41, 0xb3, 0x6d, 0x80, 0x50, 0x40, 0x04, 0x74, + 0x2f, 0xdf, 0x37, 0xd4, 0x06, 0x08, 0x8c, 0xe4, 0x80, 0x61, 0x74, 0xb7, 0xd0, 0x91, 0xac, 0xf3, + 0x9a, 0xca, 0xd4, 0x3f, 0xa7, 0x32, 0x9d, 0x19, 0x6f, 0x01, 0xac, 0x5f, 0x18, 0xab, 0xe6, 0xca, + 0x68, 0x35, 0x87, 0xeb, 0xe5, 0x39, 0xb5, 0x3f, 0x1c, 0xb4, 0xd4, 0x94, 0xf1, 0x36, 0x8b, 0x04, + 0x60, 0x69, 0x8f, 0x57, 0x96, 0xce, 0x28, 0x5b, 0x67, 0x9c, 0xed, 0xd3, 0x13, 0x31, 0xf1, 0xf7, + 0x13, 0x51, 0x1c, 0x69, 0xc8, 0x55, 0xb4, 0x80, 0x09, 0xc9, 0x8f, 0x69, 0x96, 0xf2, 0x21, 0x57, + 0x7b, 0x0e, 0x13, 0xd2, 0x27, 0xb9, 0xbe, 0x36, 0x96, 0x6b, 0x65, 0x34, 0xd7, 0xa7, 0xb2, 0xf2, + 0x9c, 0xc6, 0x95, 0xfb, 0x8f, 0xca, 0xce, 0x83, 0x47, 0x65, 0xe7, 0xb7, 0x47, 0x65, 0xe7, 0x8b, + 0xc7, 0xe5, 0xc2, 0x83, 0xc7, 0xe5, 0xc2, 0xcf, 0x8f, 0xcb, 0x85, 0x0f, 0xcf, 0xc6, 0x54, 0x75, + 0x7a, 0xad, 0x7a, 0xc4, 0x53, 0xbf, 0xdb, 0x63, 0x84, 0x62, 0xea, 0xb7, 0xf7, 0x2f, 0x46, 0x5c, + 0x80, 0xaf, 0xee, 0x74, 0x41, 0xfa, 0xe6, 0x07, 0x6d, 0x6b, 0x4a, 0xff, 0x74, 0x7c, 0xf5, 0xcf, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x44, 0x32, 0x06, 0x82, 0x05, 0x0b, 0x00, 0x00, +} + +func (m *InitCrossChainParamsProposal) 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 *InitCrossChainParamsProposal) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *InitCrossChainParamsProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ChainName) > 0 { + i -= len(m.ChainName) + copy(dAtA[i:], m.ChainName) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.ChainName))) + i-- + dAtA[i] = 0x22 + } + if m.Params != nil { + { + size, err := m.Params.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + if len(m.Description) > 0 { + i -= len(m.Description) + copy(dAtA[i:], m.Description) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Description))) + i-- + dAtA[i] = 0x12 + } + if len(m.Title) > 0 { + i -= len(m.Title) + copy(dAtA[i:], m.Title) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Title))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *ForkParams) 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 *ForkParams) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *ForkParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.EnableBridgeCallPending { + i-- + if m.EnableBridgeCallPending { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x78 + } + if m.EnableSendToExternalPending { + i-- + if m.EnableSendToExternalPending { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x70 + } + if m.BridgeCallMaxGasLimit != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.BridgeCallMaxGasLimit)) + i-- + dAtA[i] = 0x68 + } + if m.BridgeCallTimeout != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.BridgeCallTimeout)) + i-- + dAtA[i] = 0x60 + } + if m.DelegateMultiple != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.DelegateMultiple)) + i-- + dAtA[i] = 0x58 + } + { + size, err := m.DelegateThreshold.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x52 + if len(m.Oracles) > 0 { + for iNdEx := len(m.Oracles) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Oracles[iNdEx]) + copy(dAtA[i:], m.Oracles[iNdEx]) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Oracles[iNdEx]))) + i-- + dAtA[i] = 0x4a + } + } + if m.IbcTransferTimeoutHeight != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.IbcTransferTimeoutHeight)) + i-- + dAtA[i] = 0x40 + } + { + size := m.OracleSetUpdatePowerChangePercent.Size() + i -= size + if _, err := m.OracleSetUpdatePowerChangePercent.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + { + size := m.SlashFraction.Size() + i -= size + if _, err := m.SlashFraction.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + if m.SignedWindow != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.SignedWindow)) + i-- + dAtA[i] = 0x28 + } + if m.AverageExternalBlockTime != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.AverageExternalBlockTime)) + i-- + dAtA[i] = 0x20 + } + if m.ExternalBatchTimeout != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.ExternalBatchTimeout)) + i-- + dAtA[i] = 0x18 + } + if m.AverageBlockTime != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.AverageBlockTime)) + i-- + dAtA[i] = 0x10 + } + if len(m.GravityId) > 0 { + i -= len(m.GravityId) + copy(dAtA[i:], m.GravityId) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.GravityId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *UpdateChainOraclesProposal) 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 *UpdateChainOraclesProposal) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UpdateChainOraclesProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ChainName) > 0 { + i -= len(m.ChainName) + copy(dAtA[i:], m.ChainName) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.ChainName))) + i-- + dAtA[i] = 0x22 + } + if len(m.Oracles) > 0 { + for iNdEx := len(m.Oracles) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Oracles[iNdEx]) + copy(dAtA[i:], m.Oracles[iNdEx]) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Oracles[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.Description) > 0 { + i -= len(m.Description) + copy(dAtA[i:], m.Description) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Description))) + i-- + dAtA[i] = 0x12 + } + if len(m.Title) > 0 { + i -= len(m.Title) + copy(dAtA[i:], m.Title) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Title))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MsgSetOrchestratorAddress) 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 *MsgSetOrchestratorAddress) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgSetOrchestratorAddress) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ChainName) > 0 { + i -= len(m.ChainName) + copy(dAtA[i:], m.ChainName) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.ChainName))) + i-- + dAtA[i] = 0x2a + } + { + size, err := m.Deposit.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + if len(m.ExternalAddress) > 0 { + i -= len(m.ExternalAddress) + copy(dAtA[i:], m.ExternalAddress) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.ExternalAddress))) + i-- + dAtA[i] = 0x1a + } + if len(m.BridgerAddress) > 0 { + i -= len(m.BridgerAddress) + copy(dAtA[i:], m.BridgerAddress) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.BridgerAddress))) + i-- + dAtA[i] = 0x12 + } + if len(m.OracleAddress) > 0 { + i -= len(m.OracleAddress) + copy(dAtA[i:], m.OracleAddress) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.OracleAddress))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MsgAddOracleDeposit) 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 *MsgAddOracleDeposit) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgAddOracleDeposit) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ChainName) > 0 { + i -= len(m.ChainName) + copy(dAtA[i:], m.ChainName) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.ChainName))) + i-- + dAtA[i] = 0x1a + } + { + size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + if len(m.OracleAddress) > 0 { + i -= len(m.OracleAddress) + copy(dAtA[i:], m.OracleAddress) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.OracleAddress))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MsgCancelSendToExternal) 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 *MsgCancelSendToExternal) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgCancelSendToExternal) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ChainName) > 0 { + i -= len(m.ChainName) + copy(dAtA[i:], m.ChainName) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.ChainName))) + i-- + dAtA[i] = 0x1a + } + if len(m.Sender) > 0 { + i -= len(m.Sender) + copy(dAtA[i:], m.Sender) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Sender))) + i-- + dAtA[i] = 0x12 + } + if m.TransactionId != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.TransactionId)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func (m *MsgRequestBatch) 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 *MsgRequestBatch) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgRequestBatch) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size := m.BaseFee.Size() + i -= size + if _, err := m.BaseFee.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + if len(m.ChainName) > 0 { + i -= len(m.ChainName) + copy(dAtA[i:], m.ChainName) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.ChainName))) + i-- + dAtA[i] = 0x2a + } + if len(m.FeeReceive) > 0 { + i -= len(m.FeeReceive) + copy(dAtA[i:], m.FeeReceive) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.FeeReceive))) + i-- + dAtA[i] = 0x22 + } + { + size := m.MinimumFee.Size() + i -= size + if _, err := m.MinimumFee.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0x12 + } + if len(m.Sender) > 0 { + i -= len(m.Sender) + copy(dAtA[i:], m.Sender) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Sender))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MsgIncreaseBridgeFee) 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 *MsgIncreaseBridgeFee) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgIncreaseBridgeFee) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size, err := m.AddBridgeFee.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + if len(m.Sender) > 0 { + i -= len(m.Sender) + copy(dAtA[i:], m.Sender) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.Sender))) + i-- + dAtA[i] = 0x1a + } + if m.TransactionId != 0 { + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(m.TransactionId)) + i-- + dAtA[i] = 0x10 + } + if len(m.ChainName) > 0 { + i -= len(m.ChainName) + copy(dAtA[i:], m.ChainName) + i = encodeVarintCrosschainLegacy(dAtA, i, uint64(len(m.ChainName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintCrosschainLegacy(dAtA []byte, offset int, v uint64) int { + offset -= sovCrosschainLegacy(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *InitCrossChainParamsProposal) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Title) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = len(m.Description) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + if m.Params != nil { + l = m.Params.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + return n +} + +func (m *ForkParams) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.GravityId) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + if m.AverageBlockTime != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.AverageBlockTime)) + } + if m.ExternalBatchTimeout != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.ExternalBatchTimeout)) + } + if m.AverageExternalBlockTime != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.AverageExternalBlockTime)) + } + if m.SignedWindow != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.SignedWindow)) + } + l = m.SlashFraction.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + l = m.OracleSetUpdatePowerChangePercent.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + if m.IbcTransferTimeoutHeight != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.IbcTransferTimeoutHeight)) + } + if len(m.Oracles) > 0 { + for _, s := range m.Oracles { + l = len(s) + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + } + l = m.DelegateThreshold.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + if m.DelegateMultiple != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.DelegateMultiple)) + } + if m.BridgeCallTimeout != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.BridgeCallTimeout)) + } + if m.BridgeCallMaxGasLimit != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.BridgeCallMaxGasLimit)) + } + if m.EnableSendToExternalPending { + n += 2 + } + if m.EnableBridgeCallPending { + n += 2 + } + return n +} + +func (m *UpdateChainOraclesProposal) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Title) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = len(m.Description) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + if len(m.Oracles) > 0 { + for _, s := range m.Oracles { + l = len(s) + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + } + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + return n +} + +func (m *MsgSetOrchestratorAddress) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.OracleAddress) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = len(m.BridgerAddress) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = len(m.ExternalAddress) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = m.Deposit.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + return n +} + +func (m *MsgAddOracleDeposit) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.OracleAddress) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = m.Amount.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + return n +} + +func (m *MsgCancelSendToExternal) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.TransactionId != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.TransactionId)) + } + l = len(m.Sender) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + return n +} + +func (m *MsgRequestBatch) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Sender) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = m.MinimumFee.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + l = len(m.FeeReceive) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = m.BaseFee.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + return n +} + +func (m *MsgIncreaseBridgeFee) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + if m.TransactionId != 0 { + n += 1 + sovCrosschainLegacy(uint64(m.TransactionId)) + } + l = len(m.Sender) + if l > 0 { + n += 1 + l + sovCrosschainLegacy(uint64(l)) + } + l = m.AddBridgeFee.Size() + n += 1 + l + sovCrosschainLegacy(uint64(l)) + return n +} + +func sovCrosschainLegacy(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozCrosschainLegacy(x uint64) (n int) { + return sovCrosschainLegacy(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (m *InitCrossChainParamsProposal) 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 ErrIntOverflowCrosschainLegacy + } + 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: InitCrossChainParamsProposal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: InitCrossChainParamsProposal: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Title = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Params == nil { + m.Params = &ForkParams{} + } + if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCrosschainLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ForkParams) 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 ErrIntOverflowCrosschainLegacy + } + 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: ForkParams: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ForkParams: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GravityId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GravityId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AverageBlockTime", wireType) + } + m.AverageBlockTime = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.AverageBlockTime |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ExternalBatchTimeout", wireType) + } + m.ExternalBatchTimeout = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ExternalBatchTimeout |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AverageExternalBlockTime", wireType) + } + m.AverageExternalBlockTime = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.AverageExternalBlockTime |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field SignedWindow", wireType) + } + m.SignedWindow = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.SignedWindow |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SlashFraction", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SlashFraction.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OracleSetUpdatePowerChangePercent", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.OracleSetUpdatePowerChangePercent.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field IbcTransferTimeoutHeight", wireType) + } + m.IbcTransferTimeoutHeight = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.IbcTransferTimeoutHeight |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Oracles", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Oracles = append(m.Oracles, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DelegateThreshold", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.DelegateThreshold.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 11: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DelegateMultiple", wireType) + } + m.DelegateMultiple = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DelegateMultiple |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 12: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BridgeCallTimeout", wireType) + } + m.BridgeCallTimeout = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BridgeCallTimeout |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 13: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BridgeCallMaxGasLimit", wireType) + } + m.BridgeCallMaxGasLimit = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BridgeCallMaxGasLimit |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 14: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableSendToExternalPending", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.EnableSendToExternalPending = bool(v != 0) + case 15: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field EnableBridgeCallPending", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.EnableBridgeCallPending = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipCrosschainLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *UpdateChainOraclesProposal) 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 ErrIntOverflowCrosschainLegacy + } + 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: UpdateChainOraclesProposal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UpdateChainOraclesProposal: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Title = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Description = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Oracles", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Oracles = append(m.Oracles, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCrosschainLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgSetOrchestratorAddress) 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 ErrIntOverflowCrosschainLegacy + } + 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: MsgSetOrchestratorAddress: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgSetOrchestratorAddress: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OracleAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.OracleAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BridgerAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BridgerAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ExternalAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ExternalAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Deposit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Deposit.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCrosschainLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAddOracleDeposit) 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 ErrIntOverflowCrosschainLegacy + } + 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: MsgAddOracleDeposit: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAddOracleDeposit: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OracleAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.OracleAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCrosschainLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgCancelSendToExternal) 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 ErrIntOverflowCrosschainLegacy + } + 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: MsgCancelSendToExternal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgCancelSendToExternal: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TransactionId", wireType) + } + m.TransactionId = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.TransactionId |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCrosschainLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgRequestBatch) 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 ErrIntOverflowCrosschainLegacy + } + 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: MsgRequestBatch: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgRequestBatch: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MinimumFee", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.MinimumFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FeeReceive", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FeeReceive = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BaseFee", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.BaseFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCrosschainLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgIncreaseBridgeFee) 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 ErrIntOverflowCrosschainLegacy + } + 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: MsgIncreaseBridgeFee: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgIncreaseBridgeFee: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TransactionId", wireType) + } + m.TransactionId = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.TransactionId |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + 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 ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AddBridgeFee", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthCrosschainLegacy + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.AddBridgeFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipCrosschainLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthCrosschainLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipCrosschainLegacy(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowCrosschainLegacy + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthCrosschainLegacy + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupCrosschainLegacy + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthCrosschainLegacy + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthCrosschainLegacy = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowCrosschainLegacy = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupCrosschainLegacy = fmt.Errorf("proto: unexpected end of group") +) diff --git a/x/crosschain/types/legacy.go b/types/legacy/crosschain_legacy_proposal.go similarity index 94% rename from x/crosschain/types/legacy.go rename to types/legacy/crosschain_legacy_proposal.go index 7ed3507e..aaf7bc3e 100644 --- a/x/crosschain/types/legacy.go +++ b/types/legacy/crosschain_legacy_proposal.go @@ -1,4 +1,4 @@ -package types +package legacy import ( "fmt" @@ -14,7 +14,7 @@ import ( const ( // Deprecated: ProposalTypeInitCrossChainParams ProposalTypeInitCrossChainParams = "InitCrossChainParams" - // ProposalTypeUpdateChainOracles defines the type for a UpdateChainOraclesProposal + // Deprecated: ProposalTypeUpdateChainOracles defines the type for a UpdateChainOraclesProposal ProposalTypeUpdateChainOracles = "UpdateChainOracles" ) @@ -32,7 +32,7 @@ func (m *InitCrossChainParamsProposal) GetTitle() string { return m.Title } func (m *InitCrossChainParamsProposal) GetDescription() string { return m.Description } -func (m *InitCrossChainParamsProposal) ProposalRoute() string { return RouterKey } +func (m *InitCrossChainParamsProposal) ProposalRoute() string { return "crosschain" } func (m *InitCrossChainParamsProposal) ProposalType() string { return ProposalTypeInitCrossChainParams } @@ -53,7 +53,7 @@ func (m *UpdateChainOraclesProposal) GetTitle() string { return m.Title } func (m *UpdateChainOraclesProposal) GetDescription() string { return m.Description } -func (m *UpdateChainOraclesProposal) ProposalRoute() string { return RouterKey } +func (m *UpdateChainOraclesProposal) ProposalRoute() string { return "crosschain" } func (m *UpdateChainOraclesProposal) ProposalType() string { return ProposalTypeUpdateChainOracles diff --git a/x/erc20/types/legacy.pb.go b/types/legacy/erc20_legacy.pb.go similarity index 71% rename from x/erc20/types/legacy.pb.go rename to types/legacy/erc20_legacy.pb.go index d4219321..33798bbd 100644 --- a/x/erc20/types/legacy.pb.go +++ b/types/legacy/erc20_legacy.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-gogo. DO NOT EDIT. -// source: fx/erc20/v1/legacy.proto +// source: fx/erc20/v1/erc20_legacy.proto -package types +package legacy import ( cosmossdk_io_math "cosmossdk.io/math" @@ -45,7 +45,7 @@ func (m *MsgConvertERC20) Reset() { *m = MsgConvertERC20{} } func (m *MsgConvertERC20) String() string { return proto.CompactTextString(m) } func (*MsgConvertERC20) ProtoMessage() {} func (*MsgConvertERC20) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{0} + return fileDescriptor_54ca0725ecd5eeca, []int{0} } func (m *MsgConvertERC20) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -107,7 +107,7 @@ func (m *MsgConvertDenom) Reset() { *m = MsgConvertDenom{} } func (m *MsgConvertDenom) String() string { return proto.CompactTextString(m) } func (*MsgConvertDenom) ProtoMessage() {} func (*MsgConvertDenom) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{1} + return fileDescriptor_54ca0725ecd5eeca, []int{1} } func (m *MsgConvertDenom) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -175,7 +175,7 @@ func (m *MsgUpdateDenomAlias) Reset() { *m = MsgUpdateDenomAlias{} } func (m *MsgUpdateDenomAlias) String() string { return proto.CompactTextString(m) } func (*MsgUpdateDenomAlias) ProtoMessage() {} func (*MsgUpdateDenomAlias) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{2} + return fileDescriptor_54ca0725ecd5eeca, []int{2} } func (m *MsgUpdateDenomAlias) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -236,7 +236,7 @@ func (m *RegisterCoinProposal) Reset() { *m = RegisterCoinProposal{} } func (m *RegisterCoinProposal) String() string { return proto.CompactTextString(m) } func (*RegisterCoinProposal) ProtoMessage() {} func (*RegisterCoinProposal) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{3} + return fileDescriptor_54ca0725ecd5eeca, []int{3} } func (m *RegisterCoinProposal) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -298,7 +298,7 @@ func (m *RegisterERC20Proposal) Reset() { *m = RegisterERC20Proposal{} } func (m *RegisterERC20Proposal) String() string { return proto.CompactTextString(m) } func (*RegisterERC20Proposal) ProtoMessage() {} func (*RegisterERC20Proposal) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{4} + return fileDescriptor_54ca0725ecd5eeca, []int{4} } func (m *RegisterERC20Proposal) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -366,7 +366,7 @@ func (m *ToggleTokenConversionProposal) Reset() { *m = ToggleTokenConver func (m *ToggleTokenConversionProposal) String() string { return proto.CompactTextString(m) } func (*ToggleTokenConversionProposal) ProtoMessage() {} func (*ToggleTokenConversionProposal) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{5} + return fileDescriptor_54ca0725ecd5eeca, []int{5} } func (m *ToggleTokenConversionProposal) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -428,7 +428,7 @@ func (m *UpdateDenomAliasProposal) Reset() { *m = UpdateDenomAliasPropos func (m *UpdateDenomAliasProposal) String() string { return proto.CompactTextString(m) } func (*UpdateDenomAliasProposal) ProtoMessage() {} func (*UpdateDenomAliasProposal) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{6} + return fileDescriptor_54ca0725ecd5eeca, []int{6} } func (m *UpdateDenomAliasProposal) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -495,7 +495,7 @@ func (m *MsgRegisterCoin) Reset() { *m = MsgRegisterCoin{} } func (m *MsgRegisterCoin) String() string { return proto.CompactTextString(m) } func (*MsgRegisterCoin) ProtoMessage() {} func (*MsgRegisterCoin) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{7} + return fileDescriptor_54ca0725ecd5eeca, []int{7} } func (m *MsgRegisterCoin) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -538,51 +538,6 @@ func (m *MsgRegisterCoin) GetMetadata() types1.Metadata { return types1.Metadata{} } -// Deprecated: Do not use. -type MsgRegisterCoinResponse struct { - Pair ERC20Token `protobuf:"bytes,1,opt,name=pair,proto3" json:"pair"` -} - -func (m *MsgRegisterCoinResponse) Reset() { *m = MsgRegisterCoinResponse{} } -func (m *MsgRegisterCoinResponse) String() string { return proto.CompactTextString(m) } -func (*MsgRegisterCoinResponse) ProtoMessage() {} -func (*MsgRegisterCoinResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{8} -} -func (m *MsgRegisterCoinResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgRegisterCoinResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgRegisterCoinResponse.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 *MsgRegisterCoinResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgRegisterCoinResponse.Merge(m, src) -} -func (m *MsgRegisterCoinResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgRegisterCoinResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgRegisterCoinResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgRegisterCoinResponse proto.InternalMessageInfo - -func (m *MsgRegisterCoinResponse) GetPair() ERC20Token { - if m != nil { - return m.Pair - } - return ERC20Token{} -} - // Deprecated: Do not use. type MsgRegisterERC20 struct { Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"` @@ -594,7 +549,7 @@ func (m *MsgRegisterERC20) Reset() { *m = MsgRegisterERC20{} } func (m *MsgRegisterERC20) String() string { return proto.CompactTextString(m) } func (*MsgRegisterERC20) ProtoMessage() {} func (*MsgRegisterERC20) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{9} + return fileDescriptor_54ca0725ecd5eeca, []int{8} } func (m *MsgRegisterERC20) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -645,68 +600,24 @@ func (m *MsgRegisterERC20) GetAliases() []string { } // Deprecated: Do not use. -type MsgRegisterERC20Response struct { - Pair ERC20Token `protobuf:"bytes,1,opt,name=pair,proto3" json:"pair"` -} - -func (m *MsgRegisterERC20Response) Reset() { *m = MsgRegisterERC20Response{} } -func (m *MsgRegisterERC20Response) String() string { return proto.CompactTextString(m) } -func (*MsgRegisterERC20Response) ProtoMessage() {} -func (*MsgRegisterERC20Response) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{10} -} -func (m *MsgRegisterERC20Response) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgRegisterERC20Response) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgRegisterERC20Response.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 *MsgRegisterERC20Response) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgRegisterERC20Response.Merge(m, src) -} -func (m *MsgRegisterERC20Response) XXX_Size() int { - return m.Size() -} -func (m *MsgRegisterERC20Response) XXX_DiscardUnknown() { - xxx_messageInfo_MsgRegisterERC20Response.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgRegisterERC20Response proto.InternalMessageInfo - -func (m *MsgRegisterERC20Response) GetPair() ERC20Token { - if m != nil { - return m.Pair - } - return ERC20Token{} -} - -type LegacyParams struct { +type LegacyERC20Params struct { EnableErc20 bool `protobuf:"varint,1,opt,name=enable_erc20,json=enableErc20,proto3" json:"enable_erc20,omitempty" yaml:"enable_erc20"` EnableEVMHook bool `protobuf:"varint,2,opt,name=enable_evm_hook,json=enableEvmHook,proto3" json:"enable_evm_hook,omitempty" yaml:"enable_evm_hook"` IbcTimeout time.Duration `protobuf:"bytes,3,opt,name=ibc_timeout,json=ibcTimeout,proto3,stdduration" json:"ibc_timeout" yaml:"ibc_timeout"` } -func (m *LegacyParams) Reset() { *m = LegacyParams{} } -func (m *LegacyParams) String() string { return proto.CompactTextString(m) } -func (*LegacyParams) ProtoMessage() {} -func (*LegacyParams) Descriptor() ([]byte, []int) { - return fileDescriptor_74a64fea62e45cbf, []int{11} +func (m *LegacyERC20Params) Reset() { *m = LegacyERC20Params{} } +func (m *LegacyERC20Params) String() string { return proto.CompactTextString(m) } +func (*LegacyERC20Params) ProtoMessage() {} +func (*LegacyERC20Params) Descriptor() ([]byte, []int) { + return fileDescriptor_54ca0725ecd5eeca, []int{9} } -func (m *LegacyParams) XXX_Unmarshal(b []byte) error { +func (m *LegacyERC20Params) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LegacyParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *LegacyERC20Params) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_LegacyParams.Marshal(b, m, deterministic) + return xxx_messageInfo_LegacyERC20Params.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -716,33 +627,33 @@ func (m *LegacyParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) return b[:n], nil } } -func (m *LegacyParams) XXX_Merge(src proto.Message) { - xxx_messageInfo_LegacyParams.Merge(m, src) +func (m *LegacyERC20Params) XXX_Merge(src proto.Message) { + xxx_messageInfo_LegacyERC20Params.Merge(m, src) } -func (m *LegacyParams) XXX_Size() int { +func (m *LegacyERC20Params) XXX_Size() int { return m.Size() } -func (m *LegacyParams) XXX_DiscardUnknown() { - xxx_messageInfo_LegacyParams.DiscardUnknown(m) +func (m *LegacyERC20Params) XXX_DiscardUnknown() { + xxx_messageInfo_LegacyERC20Params.DiscardUnknown(m) } -var xxx_messageInfo_LegacyParams proto.InternalMessageInfo +var xxx_messageInfo_LegacyERC20Params proto.InternalMessageInfo -func (m *LegacyParams) GetEnableErc20() bool { +func (m *LegacyERC20Params) GetEnableErc20() bool { if m != nil { return m.EnableErc20 } return false } -func (m *LegacyParams) GetEnableEVMHook() bool { +func (m *LegacyERC20Params) GetEnableEVMHook() bool { if m != nil { return m.EnableEVMHook } return false } -func (m *LegacyParams) GetIbcTimeout() time.Duration { +func (m *LegacyERC20Params) GetIbcTimeout() time.Duration { if m != nil { return m.IbcTimeout } @@ -758,75 +669,71 @@ func init() { proto.RegisterType((*ToggleTokenConversionProposal)(nil), "fx.erc20.v1.ToggleTokenConversionProposal") proto.RegisterType((*UpdateDenomAliasProposal)(nil), "fx.erc20.v1.UpdateDenomAliasProposal") proto.RegisterType((*MsgRegisterCoin)(nil), "fx.erc20.v1.MsgRegisterCoin") - proto.RegisterType((*MsgRegisterCoinResponse)(nil), "fx.erc20.v1.MsgRegisterCoinResponse") proto.RegisterType((*MsgRegisterERC20)(nil), "fx.erc20.v1.MsgRegisterERC20") - proto.RegisterType((*MsgRegisterERC20Response)(nil), "fx.erc20.v1.MsgRegisterERC20Response") - proto.RegisterType((*LegacyParams)(nil), "fx.erc20.v1.LegacyParams") -} - -func init() { proto.RegisterFile("fx/erc20/v1/legacy.proto", fileDescriptor_74a64fea62e45cbf) } - -var fileDescriptor_74a64fea62e45cbf = []byte{ - // 941 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xbd, 0x6f, 0x23, 0x45, - 0x14, 0xf7, 0x38, 0x26, 0x24, 0xe3, 0x9c, 0x72, 0xec, 0xe5, 0x63, 0x72, 0xd2, 0xd9, 0xd1, 0x36, - 0x84, 0x44, 0xd9, 0x3d, 0xe7, 0x24, 0x0a, 0x37, 0xe8, 0x9c, 0x8b, 0xc4, 0x49, 0x44, 0x0a, 0x7b, - 0x81, 0xe2, 0x1a, 0x6b, 0xbc, 0x3b, 0xd9, 0x8c, 0xec, 0x9d, 0xb1, 0x66, 0xc6, 0x56, 0xd2, 0x52, - 0x50, 0x50, 0xd1, 0x20, 0x28, 0x69, 0xe9, 0xae, 0x38, 0x68, 0xf8, 0x07, 0xae, 0x3c, 0x5d, 0x85, - 0x28, 0x0c, 0x4a, 0x8a, 0xa3, 0x4e, 0x4b, 0x83, 0xe6, 0x63, 0xed, 0xb5, 0x83, 0x40, 0x4a, 0xae, - 0x89, 0xf2, 0x7b, 0x5f, 0xf3, 0x7b, 0xbf, 0xf7, 0x76, 0xc6, 0x10, 0x9d, 0x9c, 0x85, 0x44, 0xc4, - 0x7b, 0x0f, 0xc3, 0x61, 0x23, 0xec, 0x91, 0x14, 0xc7, 0xe7, 0x41, 0x5f, 0x70, 0xc5, 0xbd, 0xea, - 0xc9, 0x59, 0x60, 0x3c, 0xc1, 0xb0, 0x71, 0xbf, 0x16, 0x73, 0x99, 0x71, 0x19, 0x76, 0x30, 0xeb, - 0x86, 0xc3, 0x46, 0x87, 0x28, 0xdc, 0x30, 0xc0, 0x06, 0x17, 0xfc, 0x92, 0x8c, 0xfd, 0x31, 0xa7, - 0xcc, 0xf9, 0xd7, 0x9d, 0x3f, 0x93, 0xa9, 0x3e, 0x28, 0x93, 0xa9, 0x73, 0x6c, 0x58, 0x47, 0xdb, - 0xa0, 0xd0, 0x82, 0x3c, 0xa7, 0x48, 0x4d, 0x9d, 0xf7, 0x49, 0xee, 0x58, 0x49, 0x79, 0xca, 0x6d, - 0x82, 0xfe, 0xcf, 0x59, 0x3f, 0xc0, 0x19, 0x65, 0x3c, 0x34, 0x7f, 0x73, 0x56, 0x29, 0xe7, 0x69, - 0x8f, 0x84, 0x06, 0x75, 0x06, 0x27, 0x61, 0x32, 0x10, 0x58, 0x51, 0xee, 0x58, 0xf9, 0x23, 0x00, - 0x97, 0x0f, 0x65, 0xba, 0xcf, 0xd9, 0x90, 0x08, 0x75, 0x10, 0xed, 0xef, 0x3d, 0xf4, 0x3e, 0x82, - 0x77, 0x63, 0xce, 0x94, 0xc0, 0xb1, 0x6a, 0xe3, 0x24, 0x11, 0x44, 0x4a, 0x04, 0x36, 0xc1, 0xd6, - 0x62, 0xb4, 0x9c, 0xdb, 0x1f, 0x5b, 0xb3, 0xb7, 0x0f, 0xe7, 0x71, 0xc6, 0x07, 0x4c, 0xa1, 0xb2, - 0x0e, 0x68, 0xed, 0xbc, 0x1a, 0xd5, 0x4b, 0xbf, 0x8f, 0xea, 0xab, 0xb6, 0x0d, 0x99, 0x74, 0x03, - 0xca, 0xc3, 0x0c, 0xab, 0xd3, 0xe0, 0x29, 0x53, 0x6f, 0x5e, 0xee, 0x42, 0xd7, 0xdf, 0x53, 0xa6, - 0x22, 0x97, 0xea, 0xdd, 0x87, 0x0b, 0x82, 0xc4, 0x84, 0x0e, 0x89, 0x40, 0x73, 0xe6, 0x9c, 0x31, - 0xf6, 0xd6, 0xe0, 0xbc, 0x24, 0x2c, 0x21, 0x02, 0x55, 0x8c, 0xc7, 0xa1, 0xe6, 0x87, 0x5f, 0xbd, - 0x7d, 0xb1, 0xed, 0xc0, 0x37, 0x6f, 0x5f, 0x6c, 0xaf, 0x5a, 0x99, 0x66, 0x5a, 0x41, 0xc0, 0xff, - 0x75, 0xaa, 0xc1, 0x27, 0x84, 0xf1, 0xac, 0x50, 0x14, 0x14, 0x8b, 0x4e, 0x11, 0x29, 0xcf, 0x10, - 0x79, 0x04, 0x2b, 0x7a, 0x98, 0x86, 0x60, 0x75, 0x6f, 0x23, 0x70, 0x7d, 0xe8, 0x69, 0x07, 0x6e, - 0xda, 0xc1, 0x3e, 0xa7, 0xac, 0x55, 0xd1, 0x12, 0x44, 0x26, 0x58, 0x1f, 0xa4, 0xb0, 0x48, 0x89, - 0xca, 0xd9, 0x5b, 0xf4, 0xff, 0xec, 0x0d, 0x4f, 0x04, 0xfc, 0x9f, 0x00, 0xbc, 0x77, 0x28, 0xd3, - 0x2f, 0xfa, 0x09, 0x56, 0xc4, 0x18, 0x1f, 0xf7, 0x28, 0x96, 0xde, 0xc7, 0x70, 0x11, 0x0f, 0xd4, - 0x29, 0x17, 0x54, 0x9d, 0xdb, 0x26, 0x5a, 0xe8, 0xcd, 0xcb, 0xdd, 0x15, 0xc7, 0xca, 0x8d, 0xe7, - 0x99, 0x12, 0x94, 0xa5, 0xd1, 0x24, 0xd4, 0x5b, 0x81, 0xef, 0x25, 0xa6, 0xb4, 0x6d, 0xcf, 0x02, - 0x6d, 0xc5, 0xba, 0xac, 0x53, 0xdf, 0x82, 0x66, 0xa0, 0x49, 0x4e, 0x72, 0x35, 0xcf, 0x8d, 0x31, - 0xcf, 0x59, 0x46, 0x08, 0xf8, 0xdf, 0x03, 0xb8, 0x12, 0x91, 0x94, 0x4a, 0x45, 0x84, 0x56, 0xe2, - 0x48, 0xf0, 0x3e, 0x97, 0xb8, 0xa7, 0xcb, 0x2b, 0xaa, 0x7a, 0xc4, 0xa9, 0x6d, 0x81, 0xb7, 0x09, - 0xab, 0x09, 0x91, 0xb1, 0xa0, 0x7d, 0xbd, 0x8e, 0x8e, 0x50, 0xd1, 0xe4, 0x7d, 0x02, 0x17, 0x32, - 0xa2, 0x70, 0x82, 0x15, 0x76, 0xb2, 0x3f, 0x98, 0xc8, 0xce, 0xba, 0x63, 0xd9, 0x0f, 0x5d, 0x90, - 0x93, 0x7e, 0x9c, 0xd4, 0x9c, 0xff, 0xeb, 0xc7, 0x7a, 0x09, 0x01, 0xff, 0x3b, 0x00, 0x57, 0x73, - 0x66, 0x66, 0x2f, 0x6e, 0x4d, 0xcd, 0x87, 0x4b, 0x46, 0x8a, 0xfc, 0xf3, 0xb0, 0xc2, 0x4d, 0xd9, - 0x3c, 0x04, 0xdf, 0x37, 0x42, 0x12, 0x89, 0x2a, 0x9b, 0x73, 0x5b, 0x8b, 0x51, 0x0e, 0xc7, 0xbc, - 0x06, 0xf0, 0xc1, 0x31, 0x4f, 0xd3, 0x1e, 0x39, 0xe6, 0x5d, 0xc2, 0xec, 0xe8, 0x25, 0xe5, 0xb7, - 0x57, 0x4e, 0xe7, 0xe9, 0x92, 0xf9, 0x40, 0x0d, 0x30, 0xc7, 0x02, 0x04, 0xfc, 0xaf, 0x01, 0x44, - 0xb3, 0xf3, 0x7b, 0x17, 0x47, 0xda, 0xcd, 0x9a, 0xfb, 0xd7, 0xcd, 0xaa, 0x14, 0x37, 0x2b, 0xef, - 0xff, 0x17, 0xfb, 0x6d, 0x16, 0x97, 0xe6, 0xc6, 0x9b, 0x5d, 0x5c, 0x96, 0xf2, 0x4d, 0x96, 0x65, - 0xfb, 0xfa, 0xba, 0x4f, 0x3e, 0xcb, 0x22, 0x45, 0x04, 0xfc, 0x23, 0xb8, 0x3e, 0x63, 0x8c, 0x88, - 0xec, 0x73, 0x26, 0x89, 0xd7, 0x80, 0x95, 0x3e, 0xa6, 0xf6, 0x66, 0xa9, 0xee, 0xad, 0x07, 0x85, - 0x27, 0x24, 0x30, 0xbb, 0x67, 0x66, 0x9d, 0xdf, 0x12, 0x3a, 0xb4, 0x59, 0x46, 0xc0, 0xff, 0x19, - 0xc0, 0xbb, 0x85, 0x92, 0xf6, 0x22, 0xbe, 0xa9, 0x16, 0xb3, 0xdb, 0x59, 0xfe, 0xef, 0xed, 0x9c, - 0x9b, 0xde, 0xce, 0x9d, 0xeb, 0x42, 0xac, 0x5d, 0x13, 0x22, 0xbf, 0x5e, 0x3f, 0x87, 0x68, 0xd6, - 0x7a, 0x5b, 0x29, 0xfe, 0x06, 0x70, 0xe9, 0x33, 0xf3, 0x0c, 0x1f, 0x61, 0x81, 0x33, 0xe9, 0x35, - 0xe1, 0x12, 0x61, 0xb8, 0xd3, 0x23, 0x6d, 0x93, 0x6e, 0xea, 0x2d, 0xb4, 0xd6, 0xaf, 0x46, 0xf5, - 0x7b, 0xe7, 0x38, 0xeb, 0x35, 0xfd, 0xa2, 0xd7, 0x8f, 0xaa, 0x16, 0x1e, 0x68, 0xe4, 0x3d, 0x83, - 0xcb, 0xb9, 0x77, 0x98, 0xb5, 0x4f, 0x39, 0xef, 0x1a, 0x35, 0x16, 0x5a, 0x3b, 0x17, 0xa3, 0xfa, - 0x9d, 0x03, 0x1b, 0xf9, 0xe5, 0xe1, 0xa7, 0x9c, 0x77, 0xaf, 0x46, 0xf5, 0xb5, 0xe9, 0x7a, 0x2e, - 0xc3, 0x8f, 0xee, 0xb8, 0x92, 0xc3, 0x4c, 0x07, 0x7a, 0xcf, 0x61, 0x95, 0x76, 0xe2, 0xb6, 0xa2, - 0x19, 0xe1, 0x03, 0x35, 0x7e, 0x12, 0xec, 0x53, 0x1b, 0xe4, 0x4f, 0x6d, 0xf0, 0xc4, 0x3d, 0xb5, - 0xad, 0x9a, 0xee, 0xf0, 0x6a, 0x54, 0xf7, 0x6c, 0xf9, 0x42, 0xae, 0xff, 0xc3, 0x1f, 0x75, 0x10, - 0x41, 0xda, 0x89, 0x8f, 0xad, 0xa1, 0xd5, 0x7a, 0x75, 0x51, 0x03, 0xaf, 0x2f, 0x6a, 0xe0, 0xcf, - 0x8b, 0x1a, 0xf8, 0xf6, 0xb2, 0x56, 0x7a, 0x7d, 0x59, 0x2b, 0xfd, 0x76, 0x59, 0x2b, 0x3d, 0xdf, - 0x4a, 0xa9, 0x3a, 0x1d, 0x74, 0x82, 0x98, 0x67, 0x61, 0x7f, 0xc0, 0x12, 0x8a, 0x69, 0x78, 0x72, - 0xb6, 0x1b, 0x73, 0x41, 0xc2, 0xfc, 0x67, 0x82, 0xf9, 0x8d, 0xd0, 0x99, 0x37, 0x14, 0x1e, 0xfd, - 0x13, 0x00, 0x00, 0xff, 0xff, 0x5e, 0x70, 0xff, 0x17, 0xda, 0x08, 0x00, 0x00, + proto.RegisterType((*LegacyERC20Params)(nil), "fx.erc20.v1.LegacyERC20Params") +} + +func init() { proto.RegisterFile("fx/erc20/v1/erc20_legacy.proto", fileDescriptor_54ca0725ecd5eeca) } + +var fileDescriptor_54ca0725ecd5eeca = []byte{ + // 897 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x3d, 0x6f, 0xdb, 0x46, + 0x18, 0xd6, 0xc9, 0xaa, 0x6b, 0x9f, 0x12, 0x38, 0x61, 0x6c, 0x87, 0x0e, 0x10, 0xca, 0xe0, 0x92, + 0xd4, 0x86, 0xc9, 0xd8, 0x01, 0x3a, 0x68, 0x29, 0x2c, 0xc7, 0x40, 0x03, 0xd4, 0x40, 0xc1, 0xb8, + 0x1d, 0xb2, 0x08, 0x47, 0xf2, 0x4c, 0x1f, 0x44, 0xde, 0x09, 0x77, 0x47, 0xc1, 0x5e, 0x8b, 0xa2, + 0x43, 0xa7, 0x2e, 0x45, 0x3b, 0x76, 0xed, 0x96, 0x21, 0xed, 0xd2, 0x3f, 0x90, 0x31, 0xc8, 0x54, + 0x74, 0x50, 0x0b, 0x7b, 0x48, 0x67, 0xff, 0x82, 0xe2, 0x3e, 0x28, 0x53, 0x72, 0xd1, 0x02, 0x4e, + 0x16, 0x81, 0xcf, 0xfb, 0xf9, 0xbc, 0x1f, 0x77, 0x27, 0xe8, 0x1d, 0x9d, 0x84, 0x98, 0x27, 0x3b, + 0x8f, 0xc2, 0xd1, 0xb6, 0xf9, 0xe8, 0xe7, 0x38, 0x43, 0xc9, 0x69, 0x30, 0xe4, 0x4c, 0x32, 0xa7, + 0x7d, 0x74, 0x12, 0x68, 0x71, 0x30, 0xda, 0xbe, 0xe7, 0x25, 0x4c, 0x14, 0x4c, 0x84, 0x31, 0xa2, + 0x83, 0x70, 0xb4, 0x1d, 0x63, 0x89, 0xb6, 0x35, 0x30, 0xc6, 0x35, 0xbd, 0xc0, 0x13, 0x7d, 0xc2, + 0x08, 0xb5, 0xfa, 0xbb, 0x56, 0x5f, 0x88, 0x4c, 0xa5, 0x2b, 0x44, 0x66, 0x15, 0x6b, 0x46, 0xd1, + 0xd7, 0x28, 0x34, 0xc0, 0xaa, 0x96, 0x33, 0x96, 0x31, 0x23, 0x57, 0x5f, 0x56, 0x7a, 0x1b, 0x15, + 0x84, 0xb2, 0x50, 0xff, 0x56, 0xc9, 0x33, 0xc6, 0xb2, 0x1c, 0x87, 0x1a, 0xc5, 0xe5, 0x51, 0x98, + 0x96, 0x1c, 0x49, 0xc2, 0x6c, 0x72, 0x7f, 0x0c, 0xe0, 0xd2, 0x81, 0xc8, 0xf6, 0x18, 0x1d, 0x61, + 0x2e, 0xf7, 0xa3, 0xbd, 0x9d, 0x47, 0xce, 0x47, 0xf0, 0x56, 0xc2, 0xa8, 0xe4, 0x28, 0x91, 0x7d, + 0x94, 0xa6, 0x1c, 0x0b, 0xe1, 0x82, 0x75, 0xf0, 0x70, 0x31, 0x5a, 0xaa, 0xe4, 0xbb, 0x46, 0xec, + 0xec, 0xc1, 0x79, 0x54, 0xb0, 0x92, 0x4a, 0xb7, 0xa9, 0x0c, 0x7a, 0x9b, 0xaf, 0xc6, 0x9d, 0xc6, + 0x1f, 0xe3, 0xce, 0x8a, 0x61, 0x2b, 0xd2, 0x41, 0x40, 0x58, 0x58, 0x20, 0x79, 0x1c, 0x3c, 0xa5, + 0xf2, 0xcd, 0xcb, 0x2d, 0x68, 0xcb, 0x78, 0x4a, 0x65, 0x64, 0x5d, 0x9d, 0x7b, 0x70, 0x81, 0xe3, + 0x04, 0x93, 0x11, 0xe6, 0xee, 0x9c, 0xce, 0x33, 0xc1, 0xce, 0x2a, 0x9c, 0x17, 0x98, 0xa6, 0x98, + 0xbb, 0x2d, 0xad, 0xb1, 0xa8, 0xfb, 0xe0, 0xab, 0xb7, 0x2f, 0x36, 0x2c, 0xf8, 0xf6, 0xed, 0x8b, + 0x8d, 0x15, 0x33, 0xae, 0x99, 0x52, 0x5c, 0xe0, 0xff, 0x36, 0x55, 0xe0, 0x13, 0x4c, 0x59, 0x51, + 0x0b, 0x0a, 0xea, 0x41, 0xa7, 0x88, 0x34, 0x67, 0x88, 0x3c, 0x86, 0x2d, 0x35, 0x33, 0x4d, 0xb0, + 0xbd, 0xb3, 0x16, 0xd8, 0x3a, 0xd4, 0x50, 0x03, 0x3b, 0xd4, 0x60, 0x8f, 0x11, 0xda, 0x6b, 0xa9, + 0x16, 0x44, 0xda, 0x58, 0x25, 0x92, 0x88, 0x67, 0x58, 0x56, 0xec, 0x0d, 0xfa, 0x7f, 0xf6, 0x9a, + 0xa7, 0x0b, 0xfc, 0x9f, 0x01, 0xbc, 0x73, 0x20, 0xb2, 0x2f, 0x86, 0x29, 0x92, 0x58, 0x0b, 0x77, + 0x73, 0x82, 0x84, 0xf3, 0x31, 0x5c, 0x44, 0xa5, 0x3c, 0x66, 0x9c, 0xc8, 0x53, 0x53, 0x44, 0xcf, + 0x7d, 0xf3, 0x72, 0x6b, 0xd9, 0xb2, 0xb2, 0xe3, 0x79, 0x26, 0x39, 0xa1, 0x59, 0x74, 0x69, 0xea, + 0x2c, 0xc3, 0x0f, 0x52, 0x1d, 0xda, 0x94, 0x67, 0x80, 0x92, 0x22, 0x15, 0xd6, 0x76, 0xdf, 0x80, + 0x6e, 0xa0, 0x48, 0x5e, 0xfa, 0x2a, 0x9e, 0x6b, 0x13, 0x9e, 0xb3, 0x8c, 0x5c, 0xe0, 0xff, 0x00, + 0xe0, 0x72, 0x84, 0x33, 0x22, 0x24, 0xe6, 0xaa, 0x13, 0x9f, 0x73, 0x36, 0x64, 0x02, 0xe5, 0x2a, + 0xbc, 0x24, 0x32, 0xc7, 0xb6, 0xdb, 0x06, 0x38, 0xeb, 0xb0, 0x9d, 0x62, 0x91, 0x70, 0x32, 0x54, + 0xeb, 0x68, 0x09, 0xd5, 0x45, 0xce, 0x27, 0x70, 0xa1, 0xc0, 0x12, 0xa5, 0x48, 0x22, 0xdb, 0xf6, + 0xfb, 0x97, 0x6d, 0xa7, 0x83, 0x49, 0xdb, 0x0f, 0xac, 0x91, 0x6d, 0xfd, 0xc4, 0xa9, 0x3b, 0xff, + 0xf7, 0x4f, 0x9d, 0x86, 0x0b, 0xfc, 0xef, 0x01, 0x5c, 0xa9, 0x98, 0xe9, 0xbd, 0x78, 0x67, 0x6a, + 0x3e, 0xbc, 0xa1, 0x5b, 0x51, 0x1d, 0x0f, 0xd3, 0xb8, 0x29, 0x99, 0xe3, 0xc2, 0x0f, 0x75, 0x23, + 0xb1, 0x70, 0x5b, 0xeb, 0x73, 0x0f, 0x17, 0xa3, 0x0a, 0x4e, 0x78, 0x95, 0xf0, 0xfe, 0x21, 0xcb, + 0xb2, 0x1c, 0x1f, 0xb2, 0x01, 0xa6, 0x66, 0xf4, 0x82, 0xb0, 0x77, 0xef, 0x9c, 0xf2, 0x53, 0x21, + 0xab, 0x81, 0x6a, 0xa0, 0xd3, 0x02, 0x17, 0xf8, 0xdf, 0x00, 0xe8, 0xce, 0xce, 0xef, 0x7d, 0xa4, + 0x34, 0x9b, 0x35, 0xf7, 0xaf, 0x9b, 0xd5, 0xaa, 0x6f, 0x56, 0x55, 0xff, 0xaf, 0xe6, 0x6c, 0xd6, + 0x97, 0xe6, 0xda, 0x9b, 0x5d, 0x5f, 0x96, 0xe6, 0x75, 0x96, 0x65, 0xe3, 0xea, 0xba, 0x5f, 0x1e, + 0xcb, 0x3a, 0x45, 0x17, 0xf8, 0xbf, 0x00, 0x78, 0xab, 0x26, 0x35, 0xd7, 0xe6, 0x75, 0x99, 0xcf, + 0xee, 0x52, 0xf3, 0xbf, 0x77, 0x69, 0x6e, 0x7a, 0x97, 0x36, 0xaf, 0xd2, 0x5e, 0xbd, 0x42, 0xbb, + 0xba, 0x0c, 0xbf, 0x6e, 0xc2, 0xdb, 0x9f, 0xe9, 0x87, 0xcc, 0x1c, 0x03, 0xc4, 0x51, 0x21, 0x9c, + 0x2e, 0xbc, 0x81, 0x29, 0x8a, 0x73, 0xdc, 0xd7, 0x8e, 0x9a, 0xfb, 0x42, 0xef, 0xee, 0xc5, 0xb8, + 0x73, 0xe7, 0x14, 0x15, 0x79, 0xd7, 0xaf, 0x6b, 0xfd, 0xa8, 0x6d, 0xe0, 0xbe, 0x42, 0xce, 0x33, + 0xb8, 0x54, 0x69, 0x47, 0x45, 0xff, 0x98, 0xb1, 0x81, 0xe6, 0xbf, 0xd0, 0xdb, 0x3c, 0x1b, 0x77, + 0x6e, 0xee, 0x1b, 0xcb, 0x2f, 0x0f, 0x3e, 0x65, 0x6c, 0x70, 0x31, 0xee, 0xac, 0x4e, 0xc7, 0xb3, + 0x1e, 0x7e, 0x74, 0xd3, 0x86, 0x1c, 0x15, 0xca, 0xd0, 0x79, 0x0e, 0xdb, 0x24, 0x4e, 0xfa, 0x92, + 0x14, 0x98, 0x95, 0x72, 0x72, 0xe5, 0x9a, 0xa7, 0x2c, 0xa8, 0x9e, 0xb2, 0xe0, 0x89, 0x7d, 0xca, + 0x7a, 0x9e, 0x1a, 0xe5, 0xc5, 0xb8, 0xe3, 0x98, 0xf0, 0x35, 0x5f, 0xff, 0xc7, 0x3f, 0x3b, 0x20, + 0x82, 0x24, 0x4e, 0x0e, 0x8d, 0xa0, 0xdb, 0x74, 0x41, 0x6f, 0xf7, 0xd5, 0x99, 0x07, 0x5e, 0x9f, + 0x79, 0xe0, 0xaf, 0x33, 0x0f, 0x7c, 0x77, 0xee, 0x35, 0x5e, 0x9f, 0x7b, 0x8d, 0xdf, 0xcf, 0xbd, + 0xc6, 0xf3, 0x07, 0x19, 0x91, 0xc7, 0x65, 0x1c, 0x24, 0xac, 0x08, 0x87, 0x25, 0x4d, 0x09, 0x22, + 0xe1, 0xd1, 0xc9, 0x56, 0xc2, 0x38, 0x0e, 0xe5, 0xe9, 0x10, 0x8b, 0xd0, 0xfc, 0x0f, 0x88, 0xe7, + 0x35, 0x8b, 0xc7, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0xde, 0x0b, 0x49, 0x83, 0x2a, 0x08, 0x00, + 0x00, } func (this *ToggleTokenConversionProposal) Equal(that interface{}) bool { @@ -882,14 +789,14 @@ func (m *MsgConvertERC20) MarshalToSizedBuffer(dAtA []byte) (int, error) { if len(m.Sender) > 0 { i -= len(m.Sender) copy(dAtA[i:], m.Sender) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Sender))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Sender))) i-- dAtA[i] = 0x22 } if len(m.Receiver) > 0 { i -= len(m.Receiver) copy(dAtA[i:], m.Receiver) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Receiver))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Receiver))) i-- dAtA[i] = 0x1a } @@ -899,14 +806,14 @@ func (m *MsgConvertERC20) MarshalToSizedBuffer(dAtA []byte) (int, error) { if _, err := m.Amount.MarshalTo(dAtA[i:]); err != nil { return 0, err } - i = encodeVarintLegacy(dAtA, i, uint64(size)) + i = encodeVarintErc20Legacy(dAtA, i, uint64(size)) } i-- dAtA[i] = 0x12 if len(m.ContractAddress) > 0 { i -= len(m.ContractAddress) copy(dAtA[i:], m.ContractAddress) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ContractAddress))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.ContractAddress))) i-- dAtA[i] = 0xa } @@ -936,7 +843,7 @@ func (m *MsgConvertDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { if len(m.Target) > 0 { i -= len(m.Target) copy(dAtA[i:], m.Target) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Target))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Target))) i-- dAtA[i] = 0x22 } @@ -946,21 +853,21 @@ func (m *MsgConvertDenom) MarshalToSizedBuffer(dAtA []byte) (int, error) { return 0, err } i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) + i = encodeVarintErc20Legacy(dAtA, i, uint64(size)) } i-- dAtA[i] = 0x1a if len(m.Receiver) > 0 { i -= len(m.Receiver) copy(dAtA[i:], m.Receiver) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Receiver))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Receiver))) i-- dAtA[i] = 0x12 } if len(m.Sender) > 0 { i -= len(m.Sender) copy(dAtA[i:], m.Sender) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Sender))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Sender))) i-- dAtA[i] = 0xa } @@ -990,21 +897,21 @@ func (m *MsgUpdateDenomAlias) MarshalToSizedBuffer(dAtA []byte) (int, error) { if len(m.Alias) > 0 { i -= len(m.Alias) copy(dAtA[i:], m.Alias) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Alias))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Alias))) i-- dAtA[i] = 0x1a } if len(m.Denom) > 0 { i -= len(m.Denom) copy(dAtA[i:], m.Denom) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Denom))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Denom))) i-- dAtA[i] = 0x12 } if len(m.Authority) > 0 { i -= len(m.Authority) copy(dAtA[i:], m.Authority) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Authority))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Authority))) i-- dAtA[i] = 0xa } @@ -1037,21 +944,21 @@ func (m *RegisterCoinProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { return 0, err } i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) + i = encodeVarintErc20Legacy(dAtA, i, uint64(size)) } i-- dAtA[i] = 0x1a if len(m.Description) > 0 { i -= len(m.Description) copy(dAtA[i:], m.Description) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Description))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Description))) i-- dAtA[i] = 0x12 } if len(m.Title) > 0 { i -= len(m.Title) copy(dAtA[i:], m.Title) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Title))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Title))) i-- dAtA[i] = 0xa } @@ -1082,7 +989,7 @@ func (m *RegisterERC20Proposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { for iNdEx := len(m.Aliases) - 1; iNdEx >= 0; iNdEx-- { i -= len(m.Aliases[iNdEx]) copy(dAtA[i:], m.Aliases[iNdEx]) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Aliases[iNdEx]))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Aliases[iNdEx]))) i-- dAtA[i] = 0x22 } @@ -1090,21 +997,21 @@ func (m *RegisterERC20Proposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { if len(m.Erc20Address) > 0 { i -= len(m.Erc20Address) copy(dAtA[i:], m.Erc20Address) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Erc20Address))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Erc20Address))) i-- dAtA[i] = 0x1a } if len(m.Description) > 0 { i -= len(m.Description) copy(dAtA[i:], m.Description) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Description))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Description))) i-- dAtA[i] = 0x12 } if len(m.Title) > 0 { i -= len(m.Title) copy(dAtA[i:], m.Title) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Title))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Title))) i-- dAtA[i] = 0xa } @@ -1134,21 +1041,21 @@ func (m *ToggleTokenConversionProposal) MarshalToSizedBuffer(dAtA []byte) (int, if len(m.Token) > 0 { i -= len(m.Token) copy(dAtA[i:], m.Token) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Token))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Token))) i-- dAtA[i] = 0x1a } if len(m.Description) > 0 { i -= len(m.Description) copy(dAtA[i:], m.Description) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Description))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Description))) i-- dAtA[i] = 0x12 } if len(m.Title) > 0 { i -= len(m.Title) copy(dAtA[i:], m.Title) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Title))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Title))) i-- dAtA[i] = 0xa } @@ -1178,28 +1085,28 @@ func (m *UpdateDenomAliasProposal) MarshalToSizedBuffer(dAtA []byte) (int, error if len(m.Alias) > 0 { i -= len(m.Alias) copy(dAtA[i:], m.Alias) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Alias))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Alias))) i-- dAtA[i] = 0x22 } if len(m.Denom) > 0 { i -= len(m.Denom) copy(dAtA[i:], m.Denom) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Denom))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Denom))) i-- dAtA[i] = 0x1a } if len(m.Description) > 0 { i -= len(m.Description) copy(dAtA[i:], m.Description) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Description))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Description))) i-- dAtA[i] = 0x12 } if len(m.Title) > 0 { i -= len(m.Title) copy(dAtA[i:], m.Title) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Title))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Title))) i-- dAtA[i] = 0xa } @@ -1232,53 +1139,20 @@ func (m *MsgRegisterCoin) MarshalToSizedBuffer(dAtA []byte) (int, error) { return 0, err } i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) + i = encodeVarintErc20Legacy(dAtA, i, uint64(size)) } i-- dAtA[i] = 0x12 if len(m.Authority) > 0 { i -= len(m.Authority) copy(dAtA[i:], m.Authority) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Authority))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Authority))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *MsgRegisterCoinResponse) 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 *MsgRegisterCoinResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgRegisterCoinResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.Pair.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil -} - func (m *MsgRegisterERC20) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1303,7 +1177,7 @@ func (m *MsgRegisterERC20) MarshalToSizedBuffer(dAtA []byte) (int, error) { for iNdEx := len(m.Aliases) - 1; iNdEx >= 0; iNdEx-- { i -= len(m.Aliases[iNdEx]) copy(dAtA[i:], m.Aliases[iNdEx]) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Aliases[iNdEx]))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Aliases[iNdEx]))) i-- dAtA[i] = 0x1a } @@ -1311,54 +1185,21 @@ func (m *MsgRegisterERC20) MarshalToSizedBuffer(dAtA []byte) (int, error) { if len(m.Erc20Address) > 0 { i -= len(m.Erc20Address) copy(dAtA[i:], m.Erc20Address) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Erc20Address))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Erc20Address))) i-- dAtA[i] = 0x12 } if len(m.Authority) > 0 { i -= len(m.Authority) copy(dAtA[i:], m.Authority) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Authority))) + i = encodeVarintErc20Legacy(dAtA, i, uint64(len(m.Authority))) i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *MsgRegisterERC20Response) 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 *MsgRegisterERC20Response) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgRegisterERC20Response) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.Pair.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil -} - -func (m *LegacyParams) Marshal() (dAtA []byte, err error) { +func (m *LegacyERC20Params) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -1368,22 +1209,22 @@ func (m *LegacyParams) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *LegacyParams) MarshalTo(dAtA []byte) (int, error) { +func (m *LegacyERC20Params) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LegacyParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *LegacyERC20Params) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - n6, err6 := github_com_cosmos_gogoproto_types.StdDurationMarshalTo(m.IbcTimeout, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdDuration(m.IbcTimeout):]) - if err6 != nil { - return 0, err6 + n4, err4 := github_com_cosmos_gogoproto_types.StdDurationMarshalTo(m.IbcTimeout, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdDuration(m.IbcTimeout):]) + if err4 != nil { + return 0, err4 } - i -= n6 - i = encodeVarintLegacy(dAtA, i, uint64(n6)) + i -= n4 + i = encodeVarintErc20Legacy(dAtA, i, uint64(n4)) i-- dAtA[i] = 0x1a if m.EnableEVMHook { @@ -1409,8 +1250,8 @@ func (m *LegacyParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func encodeVarintLegacy(dAtA []byte, offset int, v uint64) int { - offset -= sovLegacy(v) +func encodeVarintErc20Legacy(dAtA []byte, offset int, v uint64) int { + offset -= sovErc20Legacy(v) base := offset for v >= 1<<7 { dAtA[offset] = uint8(v&0x7f | 0x80) @@ -1428,17 +1269,17 @@ func (m *MsgConvertERC20) Size() (n int) { _ = l l = len(m.ContractAddress) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = m.Amount.Size() - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) l = len(m.Receiver) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Sender) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } return n } @@ -1451,17 +1292,17 @@ func (m *MsgConvertDenom) Size() (n int) { _ = l l = len(m.Sender) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Receiver) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = m.Coin.Size() - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) l = len(m.Target) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } return n } @@ -1474,15 +1315,15 @@ func (m *MsgUpdateDenomAlias) Size() (n int) { _ = l l = len(m.Authority) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Denom) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Alias) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } return n } @@ -1495,14 +1336,14 @@ func (m *RegisterCoinProposal) Size() (n int) { _ = l l = len(m.Title) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Description) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = m.Metadata.Size() - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) return n } @@ -1514,20 +1355,20 @@ func (m *RegisterERC20Proposal) Size() (n int) { _ = l l = len(m.Title) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Description) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Erc20Address) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } if len(m.Aliases) > 0 { for _, s := range m.Aliases { l = len(s) - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } } return n @@ -1541,15 +1382,15 @@ func (m *ToggleTokenConversionProposal) Size() (n int) { _ = l l = len(m.Title) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Description) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Token) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } return n } @@ -1562,19 +1403,19 @@ func (m *UpdateDenomAliasProposal) Size() (n int) { _ = l l = len(m.Title) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Description) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Denom) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Alias) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } return n } @@ -1587,21 +1428,10 @@ func (m *MsgRegisterCoin) Size() (n int) { _ = l l = len(m.Authority) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = m.Metadata.Size() - n += 1 + l + sovLegacy(uint64(l)) - return n -} - -func (m *MsgRegisterCoinResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = m.Pair.Size() - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) return n } @@ -1613,33 +1443,22 @@ func (m *MsgRegisterERC20) Size() (n int) { _ = l l = len(m.Authority) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } l = len(m.Erc20Address) if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } if len(m.Aliases) > 0 { for _, s := range m.Aliases { l = len(s) - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) } } return n } -func (m *MsgRegisterERC20Response) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = m.Pair.Size() - n += 1 + l + sovLegacy(uint64(l)) - return n -} - -func (m *LegacyParams) Size() (n int) { +func (m *LegacyERC20Params) Size() (n int) { if m == nil { return 0 } @@ -1652,15 +1471,15 @@ func (m *LegacyParams) Size() (n int) { n += 2 } l = github_com_cosmos_gogoproto_types.SizeOfStdDuration(m.IbcTimeout) - n += 1 + l + sovLegacy(uint64(l)) + n += 1 + l + sovErc20Legacy(uint64(l)) return n } -func sovLegacy(x uint64) (n int) { +func sovErc20Legacy(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } -func sozLegacy(x uint64) (n int) { - return sovLegacy(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +func sozErc20Legacy(x uint64) (n int) { + return sovErc20Legacy(uint64((x << 1) ^ uint64((int64(x) >> 63)))) } func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { l := len(dAtA) @@ -1670,7 +1489,7 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1698,7 +1517,7 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1712,11 +1531,11 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -1730,7 +1549,7 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1744,11 +1563,11 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -1764,7 +1583,7 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1778,11 +1597,11 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -1796,7 +1615,7 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1810,11 +1629,11 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -1823,12 +1642,12 @@ func (m *MsgConvertERC20) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -1850,7 +1669,7 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1878,7 +1697,7 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1892,11 +1711,11 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -1910,7 +1729,7 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1924,11 +1743,11 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -1942,7 +1761,7 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1955,11 +1774,11 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { } } if msglen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + msglen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -1975,7 +1794,7 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -1989,11 +1808,11 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2002,12 +1821,12 @@ func (m *MsgConvertDenom) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -2029,7 +1848,7 @@ func (m *MsgUpdateDenomAlias) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2057,7 +1876,7 @@ func (m *MsgUpdateDenomAlias) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2071,11 +1890,11 @@ func (m *MsgUpdateDenomAlias) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2089,7 +1908,7 @@ func (m *MsgUpdateDenomAlias) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2103,11 +1922,11 @@ func (m *MsgUpdateDenomAlias) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2121,7 +1940,7 @@ func (m *MsgUpdateDenomAlias) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2135,11 +1954,11 @@ func (m *MsgUpdateDenomAlias) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2148,12 +1967,12 @@ func (m *MsgUpdateDenomAlias) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -2175,7 +1994,7 @@ func (m *RegisterCoinProposal) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2203,7 +2022,7 @@ func (m *RegisterCoinProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2217,11 +2036,11 @@ func (m *RegisterCoinProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2235,7 +2054,7 @@ func (m *RegisterCoinProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2249,11 +2068,11 @@ func (m *RegisterCoinProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2267,7 +2086,7 @@ func (m *RegisterCoinProposal) Unmarshal(dAtA []byte) error { var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2280,11 +2099,11 @@ func (m *RegisterCoinProposal) Unmarshal(dAtA []byte) error { } } if msglen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + msglen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2295,12 +2114,12 @@ func (m *RegisterCoinProposal) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -2322,7 +2141,7 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2350,7 +2169,7 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2364,11 +2183,11 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2382,7 +2201,7 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2396,11 +2215,11 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2414,7 +2233,7 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2428,11 +2247,11 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2446,7 +2265,7 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2460,11 +2279,11 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2473,12 +2292,12 @@ func (m *RegisterERC20Proposal) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -2500,7 +2319,7 @@ func (m *ToggleTokenConversionProposal) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2528,7 +2347,7 @@ func (m *ToggleTokenConversionProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2542,11 +2361,11 @@ func (m *ToggleTokenConversionProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2560,7 +2379,7 @@ func (m *ToggleTokenConversionProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2574,11 +2393,11 @@ func (m *ToggleTokenConversionProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2592,7 +2411,7 @@ func (m *ToggleTokenConversionProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2606,11 +2425,11 @@ func (m *ToggleTokenConversionProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2619,12 +2438,12 @@ func (m *ToggleTokenConversionProposal) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -2646,7 +2465,7 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2674,7 +2493,7 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2688,11 +2507,11 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2706,7 +2525,7 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2720,11 +2539,11 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2738,7 +2557,7 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2752,11 +2571,11 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2770,7 +2589,7 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2784,11 +2603,11 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2797,12 +2616,12 @@ func (m *UpdateDenomAliasProposal) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -2824,7 +2643,7 @@ func (m *MsgRegisterCoin) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2852,7 +2671,7 @@ func (m *MsgRegisterCoin) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2866,11 +2685,11 @@ func (m *MsgRegisterCoin) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2884,7 +2703,7 @@ func (m *MsgRegisterCoin) Unmarshal(dAtA []byte) error { var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -2897,11 +2716,11 @@ func (m *MsgRegisterCoin) Unmarshal(dAtA []byte) error { } } if msglen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + msglen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -2912,95 +2731,12 @@ func (m *MsgRegisterCoin) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgRegisterCoinResponse) 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 ErrIntOverflowLegacy - } - 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: MsgRegisterCoinResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgRegisterCoinResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Pair", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Pair.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -3022,7 +2758,7 @@ func (m *MsgRegisterERC20) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -3050,7 +2786,7 @@ func (m *MsgRegisterERC20) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -3064,11 +2800,11 @@ func (m *MsgRegisterERC20) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -3082,7 +2818,7 @@ func (m *MsgRegisterERC20) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -3096,11 +2832,11 @@ func (m *MsgRegisterERC20) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -3114,7 +2850,7 @@ func (m *MsgRegisterERC20) Unmarshal(dAtA []byte) error { var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -3128,11 +2864,11 @@ func (m *MsgRegisterERC20) Unmarshal(dAtA []byte) error { } intStringLen := int(stringLen) if intStringLen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + intStringLen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -3141,95 +2877,12 @@ func (m *MsgRegisterERC20) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgRegisterERC20Response) 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 ErrIntOverflowLegacy - } - 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: MsgRegisterERC20Response: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgRegisterERC20Response: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Pair", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Pair.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -3243,7 +2896,7 @@ func (m *MsgRegisterERC20Response) Unmarshal(dAtA []byte) error { } return nil } -func (m *LegacyParams) Unmarshal(dAtA []byte) error { +func (m *LegacyERC20Params) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -3251,7 +2904,7 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -3266,10 +2919,10 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: LegacyParams: wiretype end group for non-group") + return fmt.Errorf("proto: LegacyERC20Params: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: LegacyParams: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: LegacyERC20Params: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -3279,7 +2932,7 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -3299,7 +2952,7 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -3319,7 +2972,7 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { - return ErrIntOverflowLegacy + return ErrIntOverflowErc20Legacy } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -3332,11 +2985,11 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { } } if msglen < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } postIndex := iNdEx + msglen if postIndex < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if postIndex > l { return io.ErrUnexpectedEOF @@ -3347,12 +3000,12 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { iNdEx = postIndex default: iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) + skippy, err := skipErc20Legacy(dAtA[iNdEx:]) if err != nil { return err } if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy + return ErrInvalidLengthErc20Legacy } if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF @@ -3366,7 +3019,7 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { } return nil } -func skipLegacy(dAtA []byte) (n int, err error) { +func skipErc20Legacy(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 depth := 0 @@ -3374,7 +3027,7 @@ func skipLegacy(dAtA []byte) (n int, err error) { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return 0, ErrIntOverflowLegacy + return 0, ErrIntOverflowErc20Legacy } if iNdEx >= l { return 0, io.ErrUnexpectedEOF @@ -3391,7 +3044,7 @@ func skipLegacy(dAtA []byte) (n int, err error) { case 0: for shift := uint(0); ; shift += 7 { if shift >= 64 { - return 0, ErrIntOverflowLegacy + return 0, ErrIntOverflowErc20Legacy } if iNdEx >= l { return 0, io.ErrUnexpectedEOF @@ -3407,7 +3060,7 @@ func skipLegacy(dAtA []byte) (n int, err error) { var length int for shift := uint(0); ; shift += 7 { if shift >= 64 { - return 0, ErrIntOverflowLegacy + return 0, ErrIntOverflowErc20Legacy } if iNdEx >= l { return 0, io.ErrUnexpectedEOF @@ -3420,14 +3073,14 @@ func skipLegacy(dAtA []byte) (n int, err error) { } } if length < 0 { - return 0, ErrInvalidLengthLegacy + return 0, ErrInvalidLengthErc20Legacy } iNdEx += length case 3: depth++ case 4: if depth == 0 { - return 0, ErrUnexpectedEndOfGroupLegacy + return 0, ErrUnexpectedEndOfGroupErc20Legacy } depth-- case 5: @@ -3436,7 +3089,7 @@ func skipLegacy(dAtA []byte) (n int, err error) { return 0, fmt.Errorf("proto: illegal wireType %d", wireType) } if iNdEx < 0 { - return 0, ErrInvalidLengthLegacy + return 0, ErrInvalidLengthErc20Legacy } if depth == 0 { return iNdEx, nil @@ -3446,7 +3099,7 @@ func skipLegacy(dAtA []byte) (n int, err error) { } var ( - ErrInvalidLengthLegacy = fmt.Errorf("proto: negative length found during unmarshaling") - ErrIntOverflowLegacy = fmt.Errorf("proto: integer overflow") - ErrUnexpectedEndOfGroupLegacy = fmt.Errorf("proto: unexpected end of group") + ErrInvalidLengthErc20Legacy = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowErc20Legacy = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupErc20Legacy = fmt.Errorf("proto: unexpected end of group") ) diff --git a/x/erc20/types/legacy_proposal.go b/types/legacy/erc20_legacy_proposal.go similarity index 92% rename from x/erc20/types/legacy_proposal.go rename to types/legacy/erc20_legacy_proposal.go index e681f199..7a950196 100644 --- a/x/erc20/types/legacy_proposal.go +++ b/types/legacy/erc20_legacy_proposal.go @@ -1,4 +1,4 @@ -package types +package legacy import ( govv1betal "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" @@ -32,7 +32,7 @@ func init() { } // ProposalRoute returns router key for this proposal -func (*RegisterCoinProposal) ProposalRoute() string { return ModuleName } +func (*RegisterCoinProposal) ProposalRoute() string { return "erc20" } // ProposalType returns proposal type for this proposal func (*RegisterCoinProposal) ProposalType() string { @@ -45,7 +45,7 @@ func (m *RegisterCoinProposal) ValidateBasic() error { } // ProposalRoute returns router key for this proposal -func (*RegisterERC20Proposal) ProposalRoute() string { return ModuleName } +func (*RegisterERC20Proposal) ProposalRoute() string { return "erc20" } // ProposalType returns proposal type for this proposal func (*RegisterERC20Proposal) ProposalType() string { @@ -58,7 +58,7 @@ func (m *RegisterERC20Proposal) ValidateBasic() error { } // ProposalRoute returns router key for this proposal -func (*ToggleTokenConversionProposal) ProposalRoute() string { return ModuleName } +func (*ToggleTokenConversionProposal) ProposalRoute() string { return "erc20" } // ProposalType returns proposal type for this proposal func (*ToggleTokenConversionProposal) ProposalType() string { @@ -71,7 +71,7 @@ func (m *ToggleTokenConversionProposal) ValidateBasic() error { } // ProposalRoute returns router key for this proposal -func (*UpdateDenomAliasProposal) ProposalRoute() string { return ModuleName } +func (*UpdateDenomAliasProposal) ProposalRoute() string { return "erc20" } // ProposalType returns proposal type for this proposal func (*UpdateDenomAliasProposal) ProposalType() string { diff --git a/types/legacy/gov_legacy.pb.go b/types/legacy/gov_legacy.pb.go index 9df4ac0e..192bfe7f 100644 --- a/types/legacy/gov_legacy.pb.go +++ b/types/legacy/gov_legacy.pb.go @@ -147,8 +147,8 @@ func (m *MsgUpdateEGFParams) GetParams() EGFParams { // Deprecated: Do not use. type MsgUpdateParams struct { - Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"` - Params LegacyParams `protobuf:"bytes,2,opt,name=params,proto3" json:"params"` + Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"` + Params LegacyGovParams `protobuf:"bytes,2,opt,name=params,proto3" json:"params"` } func (m *MsgUpdateParams) Reset() { *m = MsgUpdateParams{} } @@ -191,15 +191,15 @@ func (m *MsgUpdateParams) GetAuthority() string { return "" } -func (m *MsgUpdateParams) GetParams() LegacyParams { +func (m *MsgUpdateParams) GetParams() LegacyGovParams { if m != nil { return m.Params } - return LegacyParams{} + return LegacyGovParams{} } // Deprecated: Do not use. -type LegacyParams struct { +type LegacyGovParams struct { MsgType string `protobuf:"bytes,1,opt,name=msg_type,json=msgType,proto3" json:"msg_type,omitempty"` MinDeposit []types.Coin `protobuf:"bytes,2,rep,name=min_deposit,json=minDeposit,proto3" json:"min_deposit,omitempty"` MinInitialDeposit types.Coin `protobuf:"bytes,3,opt,name=min_initial_deposit,json=minInitialDeposit,proto3" json:"min_initial_deposit,omitempty"` @@ -219,18 +219,18 @@ type LegacyParams struct { BurnVoteVeto bool `protobuf:"varint,12,opt,name=burn_vote_veto,json=burnVoteVeto,proto3" json:"burn_vote_veto,omitempty"` } -func (m *LegacyParams) Reset() { *m = LegacyParams{} } -func (m *LegacyParams) String() string { return proto.CompactTextString(m) } -func (*LegacyParams) ProtoMessage() {} -func (*LegacyParams) Descriptor() ([]byte, []int) { +func (m *LegacyGovParams) Reset() { *m = LegacyGovParams{} } +func (m *LegacyGovParams) String() string { return proto.CompactTextString(m) } +func (*LegacyGovParams) ProtoMessage() {} +func (*LegacyGovParams) Descriptor() ([]byte, []int) { return fileDescriptor_645155d0813cbede, []int{3} } -func (m *LegacyParams) XXX_Unmarshal(b []byte) error { +func (m *LegacyGovParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *LegacyParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *LegacyGovParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { if deterministic { - return xxx_messageInfo_LegacyParams.Marshal(b, m, deterministic) + return xxx_messageInfo_LegacyGovParams.Marshal(b, m, deterministic) } else { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) @@ -240,96 +240,96 @@ func (m *LegacyParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) return b[:n], nil } } -func (m *LegacyParams) XXX_Merge(src proto.Message) { - xxx_messageInfo_LegacyParams.Merge(m, src) +func (m *LegacyGovParams) XXX_Merge(src proto.Message) { + xxx_messageInfo_LegacyGovParams.Merge(m, src) } -func (m *LegacyParams) XXX_Size() int { +func (m *LegacyGovParams) XXX_Size() int { return m.Size() } -func (m *LegacyParams) XXX_DiscardUnknown() { - xxx_messageInfo_LegacyParams.DiscardUnknown(m) +func (m *LegacyGovParams) XXX_DiscardUnknown() { + xxx_messageInfo_LegacyGovParams.DiscardUnknown(m) } -var xxx_messageInfo_LegacyParams proto.InternalMessageInfo +var xxx_messageInfo_LegacyGovParams proto.InternalMessageInfo -func (m *LegacyParams) GetMsgType() string { +func (m *LegacyGovParams) GetMsgType() string { if m != nil { return m.MsgType } return "" } -func (m *LegacyParams) GetMinDeposit() []types.Coin { +func (m *LegacyGovParams) GetMinDeposit() []types.Coin { if m != nil { return m.MinDeposit } return nil } -func (m *LegacyParams) GetMinInitialDeposit() types.Coin { +func (m *LegacyGovParams) GetMinInitialDeposit() types.Coin { if m != nil { return m.MinInitialDeposit } return types.Coin{} } -func (m *LegacyParams) GetVotingPeriod() *time.Duration { +func (m *LegacyGovParams) GetVotingPeriod() *time.Duration { if m != nil { return m.VotingPeriod } return nil } -func (m *LegacyParams) GetQuorum() string { +func (m *LegacyGovParams) GetQuorum() string { if m != nil { return m.Quorum } return "" } -func (m *LegacyParams) GetMaxDepositPeriod() *time.Duration { +func (m *LegacyGovParams) GetMaxDepositPeriod() *time.Duration { if m != nil { return m.MaxDepositPeriod } return nil } -func (m *LegacyParams) GetThreshold() string { +func (m *LegacyGovParams) GetThreshold() string { if m != nil { return m.Threshold } return "" } -func (m *LegacyParams) GetVetoThreshold() string { +func (m *LegacyGovParams) GetVetoThreshold() string { if m != nil { return m.VetoThreshold } return "" } -func (m *LegacyParams) GetMinInitialDepositRatio() string { +func (m *LegacyGovParams) GetMinInitialDepositRatio() string { if m != nil { return m.MinInitialDepositRatio } return "" } -func (m *LegacyParams) GetBurnVoteQuorum() bool { +func (m *LegacyGovParams) GetBurnVoteQuorum() bool { if m != nil { return m.BurnVoteQuorum } return false } -func (m *LegacyParams) GetBurnProposalDepositPrevote() bool { +func (m *LegacyGovParams) GetBurnProposalDepositPrevote() bool { if m != nil { return m.BurnProposalDepositPrevote } return false } -func (m *LegacyParams) GetBurnVoteVeto() bool { +func (m *LegacyGovParams) GetBurnVoteVeto() bool { if m != nil { return m.BurnVoteVeto } @@ -533,7 +533,7 @@ func init() { proto.RegisterType((*MsgUpdateFXParams)(nil), "fx.gov.v1.MsgUpdateFXParams") proto.RegisterType((*MsgUpdateEGFParams)(nil), "fx.gov.v1.MsgUpdateEGFParams") proto.RegisterType((*MsgUpdateParams)(nil), "fx.gov.v1.MsgUpdateParams") - proto.RegisterType((*LegacyParams)(nil), "fx.gov.v1.LegacyParams") + proto.RegisterType((*LegacyGovParams)(nil), "fx.gov.v1.LegacyGovParams") proto.RegisterType((*Params)(nil), "fx.gov.v1.Params") proto.RegisterType((*EGFParams)(nil), "fx.gov.v1.EGFParams") } @@ -541,63 +541,63 @@ func init() { func init() { proto.RegisterFile("fx/gov/v1/gov_legacy.proto", fileDescriptor_645155d0813cbede) } var fileDescriptor_645155d0813cbede = []byte{ - // 889 bytes of a gzipped FileDescriptorProto + // 893 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0x31, 0x6f, 0xdb, 0x46, - 0x14, 0xf6, 0x39, 0xae, 0x62, 0x9d, 0x1c, 0xd7, 0xa6, 0xed, 0x98, 0x36, 0x62, 0xd2, 0x10, 0x12, - 0x58, 0x70, 0x63, 0x12, 0x76, 0x91, 0x0e, 0xde, 0x2c, 0xbb, 0x69, 0x03, 0xb4, 0x80, 0xc3, 0xa6, - 0x41, 0xdb, 0x85, 0xa0, 0xc4, 0xd3, 0xe9, 0x00, 0x1d, 0x8f, 0x25, 0x8f, 0x84, 0xb4, 0x76, 0xec, - 0x54, 0x74, 0xea, 0x4f, 0xe8, 0x52, 0x20, 0x43, 0x80, 0xfe, 0x85, 0x8c, 0x69, 0xa6, 0x02, 0x05, - 0xd4, 0xc2, 0x1e, 0x02, 0xe8, 0x57, 0x14, 0x77, 0x3c, 0x91, 0xb4, 0x24, 0x27, 0x40, 0x33, 0x74, - 0x68, 0x17, 0x49, 0x7c, 0xef, 0x7d, 0xef, 0xfb, 0xee, 0xdd, 0xfb, 0x24, 0xc1, 0xed, 0x4e, 0xdf, - 0xc6, 0x2c, 0xb5, 0xd3, 0x43, 0xf1, 0xe6, 0xf6, 0x10, 0xf6, 0xda, 0x03, 0x2b, 0x8c, 0x18, 0x67, - 0x5a, 0xb5, 0xd3, 0xb7, 0x30, 0x4b, 0xad, 0xf4, 0x70, 0xdb, 0x68, 0xb3, 0x98, 0xb2, 0xd8, 0x6e, - 0x79, 0x31, 0xb2, 0xd3, 0xc3, 0x16, 0xe2, 0xde, 0xa1, 0xdd, 0x66, 0x24, 0xc8, 0x4a, 0xb7, 0x37, - 0x55, 0x9e, 0xc6, 0x58, 0xb4, 0xa2, 0x31, 0x56, 0x89, 0xad, 0x2c, 0xe1, 0xca, 0x27, 0x3b, 0x7b, - 0x50, 0xa9, 0x75, 0xcc, 0x30, 0xcb, 0xe2, 0xe2, 0x93, 0x8a, 0x1a, 0x98, 0x31, 0xdc, 0x43, 0xb6, - 0x7c, 0x6a, 0x25, 0x1d, 0xdb, 0x4f, 0x22, 0x8f, 0x13, 0x36, 0x66, 0x5a, 0xf5, 0x28, 0x09, 0x98, - 0x2d, 0x5f, 0xb3, 0x50, 0xfd, 0x67, 0x00, 0x57, 0x3f, 0x8f, 0xf1, 0x97, 0xa1, 0xef, 0x71, 0xf4, - 0xf0, 0xab, 0x73, 0x2f, 0xf2, 0x68, 0xac, 0x7d, 0x04, 0xab, 0x5e, 0xc2, 0xbb, 0x2c, 0x22, 0x7c, - 0xa0, 0x83, 0x5d, 0xd0, 0xa8, 0x36, 0xf5, 0x57, 0xcf, 0x0f, 0xd6, 0x95, 0x86, 0x13, 0xdf, 0x8f, - 0x50, 0x1c, 0x7f, 0xc1, 0x23, 0x12, 0x60, 0xa7, 0x28, 0xd5, 0x6c, 0x58, 0x09, 0x65, 0x07, 0x7d, - 0x7e, 0x17, 0x34, 0x6a, 0x47, 0xab, 0x56, 0x3e, 0x06, 0x2b, 0x6b, 0xdd, 0x5c, 0x78, 0x31, 0x34, - 0xe7, 0x1c, 0x55, 0x76, 0xbc, 0xff, 0xdd, 0xeb, 0x67, 0xfb, 0x45, 0x83, 0xef, 0x5f, 0x3f, 0xdb, - 0xdf, 0x10, 0x23, 0x9d, 0x92, 0xa4, 0x83, 0xfa, 0x2f, 0x00, 0x6a, 0x79, 0xfc, 0xe3, 0x4f, 0x1e, - 0xbe, 0xa3, 0xd6, 0xa3, 0x09, 0xad, 0xeb, 0x25, 0xad, 0x79, 0xf7, 0x09, 0xb9, 0x1f, 0x4c, 0xcb, - 0xbd, 0x7d, 0x45, 0x6e, 0x0e, 0xd4, 0x41, 0xfd, 0x47, 0x00, 0xdf, 0xcf, 0x13, 0xef, 0x28, 0xf6, - 0xc1, 0x84, 0xd8, 0xcd, 0x92, 0xd8, 0xcf, 0xe4, 0xde, 0xcd, 0xd4, 0xbb, 0x72, 0x55, 0xaf, 0x0e, - 0xea, 0xbf, 0x56, 0xe0, 0x52, 0x19, 0xa0, 0x6d, 0xc1, 0x45, 0x1a, 0x63, 0x97, 0x0f, 0x42, 0x94, - 0x09, 0x72, 0x6e, 0xd2, 0x18, 0x3f, 0x19, 0x84, 0x48, 0xfb, 0x1a, 0xd6, 0x28, 0x09, 0x5c, 0x1f, - 0x85, 0x2c, 0x26, 0x5c, 0x9f, 0xdf, 0xbd, 0xd1, 0xa8, 0x1d, 0x6d, 0x59, 0x4a, 0xab, 0x58, 0x67, - 0x4b, 0xad, 0xb3, 0x75, 0xca, 0x48, 0xd0, 0xdc, 0x11, 0xdc, 0xa3, 0xa1, 0xb9, 0x51, 0x42, 0xdd, - 0x67, 0x94, 0x70, 0x44, 0x43, 0x3e, 0x70, 0x20, 0x25, 0xc1, 0x59, 0x16, 0xd5, 0x42, 0xb8, 0x26, - 0x8a, 0x48, 0x40, 0x38, 0xf1, 0x7a, 0x39, 0xc5, 0x0d, 0x79, 0xb8, 0x37, 0x50, 0xdc, 0x53, 0x14, - 0x3b, 0x33, 0xd0, 0x25, 0xaa, 0x55, 0x4a, 0x82, 0x47, 0x59, 0x76, 0xcc, 0x78, 0x06, 0x6f, 0xa5, - 0x8c, 0x93, 0x00, 0xbb, 0x21, 0x8a, 0x08, 0xf3, 0xf5, 0x05, 0xc5, 0x95, 0x79, 0xc6, 0x1a, 0x7b, - 0xc6, 0x3a, 0x53, 0x9e, 0x69, 0x2e, 0xfc, 0xf4, 0xa7, 0x09, 0x9c, 0xa5, 0x0c, 0x75, 0x2e, 0x41, - 0xda, 0x7d, 0x58, 0xf9, 0x36, 0x61, 0x51, 0x42, 0xf5, 0xf7, 0xe4, 0xe5, 0xad, 0x8f, 0x86, 0xe6, - 0x4a, 0x16, 0x29, 0xd1, 0xab, 0x1a, 0x8d, 0x42, 0x8d, 0x7a, 0xfd, 0xb1, 0xbe, 0x31, 0x71, 0xe5, - 0x6d, 0xc4, 0x77, 0x47, 0x43, 0xf3, 0xce, 0x34, 0xb0, 0x20, 0x90, 0xc2, 0x56, 0xa8, 0xd7, 0x57, - 0x87, 0x53, 0xe2, 0x1e, 0xc0, 0x2a, 0xef, 0x46, 0x28, 0xee, 0xb2, 0x9e, 0xaf, 0xdf, 0x94, 0xfa, - 0x36, 0x47, 0x43, 0x73, 0x2d, 0x0f, 0x96, 0x24, 0x16, 0x95, 0xda, 0x29, 0x5c, 0x4e, 0x11, 0x67, - 0x6e, 0x81, 0x5d, 0x94, 0xd8, 0x3b, 0xa3, 0xa1, 0xa9, 0x5f, 0xcd, 0x94, 0x1a, 0xdc, 0x12, 0x99, - 0x27, 0x79, 0x93, 0x47, 0x70, 0x6b, 0xc6, 0x95, 0xb8, 0xf2, 0x44, 0x7a, 0x55, 0xf6, 0x5b, 0x7e, - 0xf5, 0xfc, 0x00, 0xaa, 0x9b, 0x3d, 0x43, 0x6d, 0xe7, 0xf6, 0xd4, 0x25, 0x39, 0xa2, 0x5a, 0x6b, - 0xc0, 0x95, 0x56, 0x12, 0x05, 0x6e, 0xca, 0x38, 0x72, 0xd5, 0xb4, 0xe1, 0x2e, 0x68, 0x2c, 0x3a, - 0xcb, 0x22, 0xfe, 0x94, 0x71, 0xf4, 0x38, 0x9b, 0xef, 0x09, 0xdc, 0x91, 0x95, 0x61, 0xc4, 0x42, - 0x16, 0x97, 0x68, 0xc3, 0x08, 0x09, 0xb4, 0x5e, 0x93, 0xb0, 0x6d, 0x51, 0x74, 0xae, 0x6a, 0xc6, - 0x23, 0xcb, 0x2a, 0xb4, 0xbb, 0x70, 0xb9, 0x20, 0x13, 0x47, 0xd2, 0x97, 0x24, 0x66, 0x69, 0x4c, - 0xf5, 0x14, 0x71, 0x76, 0x3c, 0xaf, 0x83, 0xfa, 0x1f, 0x15, 0x58, 0xf9, 0xdf, 0x33, 0xff, 0xc0, - 0x33, 0xc7, 0x13, 0x9e, 0xa9, 0xcf, 0xf2, 0xcc, 0xc4, 0x6e, 0xfc, 0x4b, 0x0e, 0x3a, 0x9d, 0x76, - 0xd0, 0xbd, 0x6b, 0x1c, 0x34, 0x21, 0xb8, 0xe4, 0xa7, 0xc7, 0xd7, 0xf8, 0x69, 0xff, 0x4d, 0x7e, - 0x9a, 0x68, 0xf7, 0x9f, 0x73, 0xd7, 0x6f, 0x00, 0x56, 0x8b, 0xdf, 0xf4, 0x14, 0x6e, 0x20, 0xdc, - 0xc9, 0x09, 0x8b, 0x49, 0x82, 0xb7, 0x2d, 0xfb, 0x9e, 0x5a, 0x76, 0x73, 0x26, 0xbe, 0xb4, 0xee, - 0x6b, 0x08, 0x77, 0x94, 0xda, 0x62, 0xce, 0x9f, 0xc2, 0x5a, 0xbb, 0xe7, 0x11, 0xaa, 0x26, 0x3b, - 0x2f, 0x27, 0xbb, 0x27, 0xec, 0x59, 0x0a, 0x5f, 0x7b, 0x69, 0x50, 0x16, 0xc9, 0x31, 0x8b, 0x33, - 0x35, 0x4f, 0x5e, 0x5c, 0x18, 0xe0, 0xe5, 0x85, 0x01, 0xfe, 0xba, 0x30, 0xc0, 0x0f, 0x97, 0xc6, - 0xdc, 0xcb, 0x4b, 0x63, 0xee, 0xf7, 0x4b, 0x63, 0xee, 0x9b, 0x3d, 0x4c, 0x78, 0x37, 0x69, 0x59, - 0x6d, 0x46, 0xed, 0x30, 0x09, 0x7c, 0xe2, 0x11, 0xbb, 0xd3, 0x3f, 0x68, 0xb3, 0x08, 0xd9, 0xe2, - 0x5b, 0x25, 0xb6, 0xb3, 0x3f, 0x93, 0xad, 0x8a, 0xdc, 0xed, 0x0f, 0xff, 0x0e, 0x00, 0x00, 0xff, - 0xff, 0x8f, 0x57, 0xf3, 0x27, 0x6b, 0x0a, 0x00, 0x00, + 0x14, 0xf6, 0x39, 0xae, 0x62, 0x9d, 0x1c, 0xc7, 0xa6, 0xed, 0x84, 0x16, 0x62, 0xd1, 0x10, 0x12, + 0x58, 0x70, 0x63, 0x12, 0x76, 0xd1, 0xa2, 0xf0, 0x66, 0xd9, 0x4d, 0x1a, 0xa0, 0x05, 0x1c, 0x36, + 0x0d, 0xda, 0x2e, 0x04, 0x25, 0x9e, 0xce, 0x07, 0xe8, 0x78, 0x2c, 0x79, 0x24, 0xa4, 0xb5, 0x63, + 0xa7, 0x2e, 0x05, 0xfa, 0x13, 0xba, 0x14, 0xc8, 0x90, 0xa9, 0xbf, 0x20, 0x63, 0x9a, 0xa9, 0x40, + 0x01, 0xb5, 0xb0, 0x87, 0x00, 0xfa, 0x15, 0xc5, 0x1d, 0x4f, 0x24, 0x4d, 0xc9, 0x09, 0xd0, 0x0c, + 0x1d, 0xda, 0x45, 0x12, 0xdf, 0x7b, 0xdf, 0xfb, 0xbe, 0x7b, 0xf7, 0x3e, 0x49, 0xb0, 0xde, 0x1b, + 0x58, 0x98, 0x25, 0x56, 0xb2, 0x2f, 0xde, 0x9c, 0x3e, 0xc2, 0x6e, 0x77, 0x68, 0x06, 0x21, 0xe3, + 0x4c, 0xab, 0xf6, 0x06, 0x26, 0x66, 0x89, 0x99, 0xec, 0xd7, 0x1b, 0x5d, 0x16, 0x51, 0x16, 0x59, + 0x1d, 0x37, 0x42, 0x56, 0xb2, 0xdf, 0x41, 0xdc, 0xdd, 0xb7, 0xba, 0x8c, 0xf8, 0x69, 0x69, 0xfd, + 0xb6, 0xca, 0xd3, 0x08, 0x8b, 0x56, 0x34, 0xc2, 0x2a, 0xb1, 0x99, 0x26, 0x1c, 0xf9, 0x64, 0xa5, + 0x0f, 0x2a, 0xb5, 0x8e, 0x19, 0x66, 0x69, 0x5c, 0x7c, 0x52, 0xd1, 0x06, 0x66, 0x0c, 0xf7, 0x91, + 0x25, 0x9f, 0x3a, 0x71, 0xcf, 0xf2, 0xe2, 0xd0, 0xe5, 0x84, 0x4d, 0x98, 0x56, 0x5d, 0x4a, 0x7c, + 0x66, 0xc9, 0xd7, 0x34, 0xd4, 0xfc, 0x19, 0xc0, 0xd5, 0xcf, 0x23, 0xfc, 0x65, 0xe0, 0xb9, 0x1c, + 0x3d, 0xf8, 0xea, 0xd4, 0x0d, 0x5d, 0x1a, 0x69, 0x1f, 0xc1, 0xaa, 0x1b, 0xf3, 0x33, 0x16, 0x12, + 0x3e, 0xd4, 0xc1, 0x36, 0x68, 0x55, 0xdb, 0xfa, 0xab, 0xe7, 0x7b, 0xeb, 0x4a, 0xc3, 0x91, 0xe7, + 0x85, 0x28, 0x8a, 0xbe, 0xe0, 0x21, 0xf1, 0xb1, 0x9d, 0x97, 0x6a, 0x16, 0xac, 0x04, 0xb2, 0x83, + 0x3e, 0xbf, 0x0d, 0x5a, 0xb5, 0x83, 0x55, 0x33, 0x1b, 0x83, 0x99, 0xb6, 0x6e, 0x2f, 0xbc, 0x18, + 0x19, 0x73, 0xb6, 0x2a, 0x3b, 0xdc, 0xfd, 0xee, 0xf5, 0xb3, 0xdd, 0xbc, 0xc1, 0xf7, 0xaf, 0x9f, + 0xed, 0x6e, 0x88, 0x91, 0x4e, 0x49, 0xd2, 0x41, 0xf3, 0x17, 0x00, 0xb5, 0x2c, 0xfe, 0xc9, 0xc3, + 0x07, 0xef, 0xa8, 0xf5, 0xa0, 0xa4, 0x75, 0xbd, 0xa0, 0x35, 0xeb, 0x5e, 0x92, 0xfb, 0xfe, 0xb4, + 0xdc, 0x5b, 0x97, 0xe4, 0x66, 0x40, 0x1d, 0x34, 0x7f, 0x04, 0xf0, 0x66, 0x96, 0x78, 0x47, 0xb1, + 0x1f, 0x97, 0xc4, 0xd6, 0x0b, 0x62, 0x3f, 0x93, 0x7b, 0xf7, 0x90, 0x25, 0x33, 0x25, 0xaf, 0x5c, + 0x96, 0xac, 0x83, 0xe6, 0xaf, 0x15, 0x78, 0xb3, 0x84, 0xd1, 0x36, 0xe1, 0x22, 0x8d, 0xb0, 0xc3, + 0x87, 0x01, 0x4a, 0x65, 0xd9, 0xd7, 0x69, 0x84, 0x9f, 0x0c, 0x03, 0xa4, 0x7d, 0x0d, 0x6b, 0x94, + 0xf8, 0x8e, 0x87, 0x02, 0x16, 0x11, 0xae, 0xcf, 0x6f, 0x5f, 0x6b, 0xd5, 0x0e, 0x36, 0x4d, 0xa5, + 0x58, 0x2c, 0xb5, 0xa9, 0x96, 0xda, 0x3c, 0x66, 0xc4, 0x6f, 0x6f, 0x09, 0xfa, 0xf1, 0xc8, 0xd8, + 0x28, 0xa0, 0xee, 0x33, 0x4a, 0x38, 0xa2, 0x01, 0x1f, 0xda, 0x90, 0x12, 0xff, 0x24, 0x8d, 0x6a, + 0x01, 0x5c, 0x13, 0x45, 0xc4, 0x27, 0x9c, 0xb8, 0xfd, 0x8c, 0xe2, 0x9a, 0x3c, 0xe2, 0x1b, 0x28, + 0xee, 0x29, 0x8a, 0xad, 0x19, 0xe8, 0x02, 0xd5, 0x2a, 0x25, 0xfe, 0xa3, 0x34, 0x3b, 0x61, 0x3c, + 0x81, 0x37, 0x12, 0xc6, 0x89, 0x8f, 0x9d, 0x00, 0x85, 0x84, 0x79, 0xfa, 0x82, 0xe2, 0x4a, 0x9d, + 0x63, 0x4e, 0x9c, 0x63, 0x9e, 0x28, 0xe7, 0xb4, 0x17, 0x7e, 0xfa, 0xd3, 0x00, 0xf6, 0x52, 0x8a, + 0x3a, 0x95, 0x20, 0xed, 0x3e, 0xac, 0x7c, 0x1b, 0xb3, 0x30, 0xa6, 0xfa, 0x7b, 0xf2, 0x0a, 0xd7, + 0xc7, 0x23, 0x63, 0x25, 0x8d, 0x14, 0xe8, 0x55, 0x8d, 0x46, 0xa1, 0x46, 0xdd, 0xc1, 0x44, 0xdf, + 0x84, 0xb8, 0xf2, 0x36, 0xe2, 0xbb, 0xe3, 0x91, 0x71, 0x67, 0x1a, 0x98, 0x13, 0x48, 0x61, 0x2b, + 0xd4, 0x1d, 0xa8, 0xc3, 0x29, 0x71, 0x1f, 0xc2, 0x2a, 0x3f, 0x0b, 0x51, 0x74, 0xc6, 0xfa, 0x9e, + 0x7e, 0x5d, 0xea, 0xbb, 0x3d, 0x1e, 0x19, 0x6b, 0x59, 0xb0, 0x20, 0x31, 0xaf, 0xd4, 0x8e, 0xe1, + 0x72, 0x82, 0x38, 0x73, 0x72, 0xec, 0xa2, 0xc4, 0xde, 0x19, 0x8f, 0x0c, 0xfd, 0x72, 0xa6, 0xd0, + 0xe0, 0x86, 0xc8, 0x3c, 0xc9, 0x9a, 0x3c, 0x82, 0x9b, 0x33, 0xae, 0xc4, 0x91, 0x27, 0xd2, 0xab, + 0xb2, 0xdf, 0xf2, 0xab, 0xe7, 0x7b, 0x50, 0xdd, 0xec, 0x09, 0xea, 0xda, 0xb7, 0xa6, 0x2e, 0xc9, + 0x16, 0xd5, 0x5a, 0x0b, 0xae, 0x74, 0xe2, 0xd0, 0x77, 0x12, 0xc6, 0x91, 0xa3, 0xa6, 0x0d, 0xb7, + 0x41, 0x6b, 0xd1, 0x5e, 0x16, 0xf1, 0xa7, 0x8c, 0xa3, 0xc7, 0xe9, 0x7c, 0x8f, 0xe0, 0x96, 0xac, + 0x0c, 0x42, 0x16, 0xb0, 0xa8, 0x40, 0x1b, 0x84, 0x48, 0xa0, 0xf5, 0x9a, 0x84, 0xd5, 0x45, 0xd1, + 0xa9, 0xaa, 0x99, 0x8c, 0x2c, 0xad, 0xd0, 0xee, 0xc2, 0xe5, 0x9c, 0x4c, 0x1c, 0x49, 0x5f, 0x92, + 0x98, 0xa5, 0x09, 0xd5, 0x53, 0xc4, 0xd9, 0xe1, 0xbc, 0x0e, 0x9a, 0x7f, 0x54, 0x60, 0xe5, 0x7f, + 0xcf, 0xfc, 0x03, 0xcf, 0x1c, 0x96, 0x3c, 0xd3, 0x9c, 0xe5, 0x99, 0xd2, 0x6e, 0xfc, 0x4b, 0x0e, + 0x3a, 0x9e, 0x76, 0xd0, 0xbd, 0x2b, 0x1c, 0x54, 0x12, 0x5c, 0xf0, 0xd3, 0xe3, 0x2b, 0xfc, 0xb4, + 0xfb, 0x26, 0x3f, 0x95, 0xda, 0xfd, 0xe7, 0xdc, 0xf5, 0x1b, 0x80, 0xd5, 0xfc, 0x97, 0x3d, 0x81, + 0x1b, 0x08, 0xf7, 0x32, 0xc2, 0x7c, 0x92, 0xe0, 0x6d, 0xcb, 0xbe, 0xa3, 0x96, 0xdd, 0x98, 0x89, + 0x2f, 0xac, 0xfb, 0x1a, 0xc2, 0x3d, 0xa5, 0x36, 0x9f, 0xf3, 0xa7, 0xb0, 0xd6, 0xed, 0xbb, 0x84, + 0xaa, 0xc9, 0xce, 0xcb, 0xc9, 0xee, 0x08, 0x7b, 0x16, 0xc2, 0x57, 0x5e, 0x1a, 0x94, 0x45, 0x72, + 0xcc, 0xe2, 0x4c, 0xed, 0xa3, 0x17, 0xe7, 0x0d, 0xf0, 0xf2, 0xbc, 0x01, 0xfe, 0x3a, 0x6f, 0x80, + 0x1f, 0x2e, 0x1a, 0x73, 0x2f, 0x2f, 0x1a, 0x73, 0xbf, 0x5f, 0x34, 0xe6, 0xbe, 0xd9, 0xc1, 0x84, + 0x9f, 0xc5, 0x1d, 0xb3, 0xcb, 0xa8, 0x15, 0xc4, 0xbe, 0x47, 0x5c, 0x62, 0xf5, 0x06, 0x7b, 0x5d, + 0x16, 0x22, 0x4b, 0x7c, 0xab, 0x44, 0x56, 0xfa, 0x97, 0xb2, 0x53, 0x91, 0xbb, 0xfd, 0xc1, 0xdf, + 0x01, 0x00, 0x00, 0xff, 0xff, 0x26, 0x58, 0x48, 0x75, 0x71, 0x0a, 0x00, 0x00, } func (m *MsgUpdateFXParams) Marshal() (dAtA []byte, err error) { @@ -720,7 +720,7 @@ func (m *MsgUpdateParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *LegacyParams) Marshal() (dAtA []byte, err error) { +func (m *LegacyGovParams) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -730,12 +730,12 @@ func (m *LegacyParams) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *LegacyParams) MarshalTo(dAtA []byte) (int, error) { +func (m *LegacyGovParams) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *LegacyParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *LegacyGovParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -1080,7 +1080,7 @@ func (m *MsgUpdateParams) Size() (n int) { return n } -func (m *LegacyParams) Size() (n int) { +func (m *LegacyGovParams) Size() (n int) { if m == nil { return 0 } @@ -1554,7 +1554,7 @@ func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error { } return nil } -func (m *LegacyParams) Unmarshal(dAtA []byte) error { +func (m *LegacyGovParams) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -1577,10 +1577,10 @@ func (m *LegacyParams) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: LegacyParams: wiretype end group for non-group") + return fmt.Errorf("proto: LegacyGovParams: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: LegacyParams: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: LegacyGovParams: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: diff --git a/types/legacy/gravity/legacy.pb.go b/types/legacy/gravity/legacy.pb.go new file mode 100644 index 00000000..edfe3fb1 --- /dev/null +++ b/types/legacy/gravity/legacy.pb.go @@ -0,0 +1,801 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: fx/gravity/v1/legacy.proto + +package gravity + +import ( + cosmossdk_io_math "cosmossdk.io/math" + fmt "fmt" + _ "github.com/cosmos/cosmos-sdk/types" + _ "github.com/cosmos/gogoproto/gogoproto" + proto "github.com/cosmos/gogoproto/proto" + io "io" + math "math" + math_bits "math/bits" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package + +// Deprecated: after upgrade v3 +type MsgRequestBatch struct { + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` + MinimumFee cosmossdk_io_math.Int `protobuf:"bytes,3,opt,name=minimum_fee,json=minimumFee,proto3,customtype=cosmossdk.io/math.Int" json:"minimum_fee"` + FeeReceive string `protobuf:"bytes,4,opt,name=fee_receive,json=feeReceive,proto3" json:"fee_receive,omitempty"` + BaseFee cosmossdk_io_math.Int `protobuf:"bytes,5,opt,name=base_fee,json=baseFee,proto3,customtype=cosmossdk.io/math.Int" json:"base_fee"` +} + +func (m *MsgRequestBatch) Reset() { *m = MsgRequestBatch{} } +func (m *MsgRequestBatch) String() string { return proto.CompactTextString(m) } +func (*MsgRequestBatch) ProtoMessage() {} +func (*MsgRequestBatch) Descriptor() ([]byte, []int) { + return fileDescriptor_ef133984f5014717, []int{0} +} +func (m *MsgRequestBatch) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgRequestBatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgRequestBatch.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 *MsgRequestBatch) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgRequestBatch.Merge(m, src) +} +func (m *MsgRequestBatch) XXX_Size() int { + return m.Size() +} +func (m *MsgRequestBatch) XXX_DiscardUnknown() { + xxx_messageInfo_MsgRequestBatch.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgRequestBatch proto.InternalMessageInfo + +func (m *MsgRequestBatch) GetSender() string { + if m != nil { + return m.Sender + } + return "" +} + +func (m *MsgRequestBatch) GetDenom() string { + if m != nil { + return m.Denom + } + return "" +} + +func (m *MsgRequestBatch) GetFeeReceive() string { + if m != nil { + return m.FeeReceive + } + return "" +} + +// Deprecated: after upgrade v3 +type MsgSetOrchestratorAddress struct { + Validator string `protobuf:"bytes,1,opt,name=validator,proto3" json:"validator,omitempty"` + Orchestrator string `protobuf:"bytes,2,opt,name=orchestrator,proto3" json:"orchestrator,omitempty"` + EthAddress string `protobuf:"bytes,3,opt,name=eth_address,json=ethAddress,proto3" json:"eth_address,omitempty"` +} + +func (m *MsgSetOrchestratorAddress) Reset() { *m = MsgSetOrchestratorAddress{} } +func (m *MsgSetOrchestratorAddress) String() string { return proto.CompactTextString(m) } +func (*MsgSetOrchestratorAddress) ProtoMessage() {} +func (*MsgSetOrchestratorAddress) Descriptor() ([]byte, []int) { + return fileDescriptor_ef133984f5014717, []int{1} +} +func (m *MsgSetOrchestratorAddress) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgSetOrchestratorAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgSetOrchestratorAddress.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 *MsgSetOrchestratorAddress) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgSetOrchestratorAddress.Merge(m, src) +} +func (m *MsgSetOrchestratorAddress) XXX_Size() int { + return m.Size() +} +func (m *MsgSetOrchestratorAddress) XXX_DiscardUnknown() { + xxx_messageInfo_MsgSetOrchestratorAddress.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgSetOrchestratorAddress proto.InternalMessageInfo + +func (m *MsgSetOrchestratorAddress) GetValidator() string { + if m != nil { + return m.Validator + } + return "" +} + +func (m *MsgSetOrchestratorAddress) GetOrchestrator() string { + if m != nil { + return m.Orchestrator + } + return "" +} + +func (m *MsgSetOrchestratorAddress) GetEthAddress() string { + if m != nil { + return m.EthAddress + } + return "" +} + +func init() { + proto.RegisterType((*MsgRequestBatch)(nil), "fx.gravity.v1.MsgRequestBatch") + proto.RegisterType((*MsgSetOrchestratorAddress)(nil), "fx.gravity.v1.MsgSetOrchestratorAddress") +} + +func init() { proto.RegisterFile("fx/gravity/v1/legacy.proto", fileDescriptor_ef133984f5014717) } + +var fileDescriptor_ef133984f5014717 = []byte{ + // 373 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x91, 0x3f, 0x4f, 0xf3, 0x30, + 0x10, 0xc6, 0x93, 0xf7, 0xa5, 0x85, 0xba, 0x20, 0x24, 0xab, 0xa0, 0x50, 0x41, 0x8a, 0x3a, 0xb1, + 0x10, 0x2b, 0x62, 0x61, 0x42, 0xa2, 0x43, 0xa5, 0x0e, 0x15, 0x52, 0xd8, 0x58, 0x2a, 0xc7, 0xb9, + 0x24, 0x16, 0x4d, 0x5c, 0x6c, 0x27, 0x6a, 0x17, 0x3e, 0x03, 0x1f, 0xab, 0x63, 0x47, 0xd4, 0xa1, + 0x42, 0xed, 0x17, 0x41, 0xf9, 0x83, 0x80, 0x8d, 0xcd, 0xf7, 0xbb, 0xbb, 0xc7, 0xf7, 0xe8, 0x41, + 0xdd, 0x70, 0x4e, 0x22, 0x49, 0x73, 0xae, 0x17, 0x24, 0x77, 0xc9, 0x14, 0x22, 0xca, 0x16, 0xce, + 0x4c, 0x0a, 0x2d, 0xf0, 0x51, 0x38, 0x77, 0xea, 0x9e, 0x93, 0xbb, 0x5d, 0x9b, 0x09, 0x95, 0x08, + 0x45, 0x7c, 0xaa, 0x80, 0xe4, 0xae, 0x0f, 0x9a, 0xba, 0x84, 0x09, 0x9e, 0x56, 0xe3, 0xdd, 0x4e, + 0x24, 0x22, 0x51, 0x3e, 0x49, 0xf1, 0xaa, 0x68, 0x7f, 0x6d, 0xa2, 0xe3, 0xb1, 0x8a, 0x3c, 0x78, + 0xc9, 0x40, 0xe9, 0x01, 0xd5, 0x2c, 0xc6, 0xa7, 0xa8, 0xa9, 0x20, 0x0d, 0x40, 0x5a, 0xe6, 0xa5, + 0x79, 0xd5, 0xf2, 0xea, 0x0a, 0x77, 0x50, 0x23, 0x80, 0x54, 0x24, 0xd6, 0xbf, 0x12, 0x57, 0x05, + 0xbe, 0x43, 0xed, 0x84, 0xa7, 0x3c, 0xc9, 0x92, 0x49, 0x08, 0x60, 0xfd, 0x2f, 0x7a, 0x83, 0x8b, + 0xe5, 0xa6, 0x67, 0xac, 0x37, 0xbd, 0x93, 0xea, 0x28, 0x15, 0x3c, 0x3b, 0x5c, 0x90, 0x84, 0xea, + 0xd8, 0x19, 0xa5, 0xda, 0x43, 0xf5, 0xc6, 0x10, 0x00, 0xf7, 0x50, 0x3b, 0x04, 0x98, 0x48, 0x60, + 0xc0, 0x73, 0xb0, 0xf6, 0x4a, 0x6d, 0x14, 0x02, 0x78, 0x15, 0xc1, 0xb7, 0xe8, 0xa0, 0xf0, 0x54, + 0xaa, 0x37, 0xfe, 0xa2, 0xbe, 0x5f, 0x8c, 0x0f, 0x01, 0xfa, 0xaf, 0xe8, 0x6c, 0xac, 0xa2, 0x47, + 0xd0, 0x0f, 0x92, 0xc5, 0xa0, 0xb4, 0xa4, 0x5a, 0xc8, 0xfb, 0x20, 0x90, 0xa0, 0x14, 0x3e, 0x47, + 0xad, 0x9c, 0x4e, 0x79, 0x50, 0xb0, 0xda, 0xe8, 0x37, 0xc0, 0x7d, 0x74, 0x28, 0x7e, 0x2c, 0xd5, + 0x96, 0x7f, 0xb1, 0xe2, 0x72, 0xd0, 0xf1, 0x84, 0x56, 0x82, 0x95, 0x73, 0x0f, 0x81, 0x8e, 0xeb, + 0x2f, 0x06, 0xa3, 0xe5, 0xd6, 0x36, 0x57, 0x5b, 0xdb, 0xfc, 0xd8, 0xda, 0xe6, 0xdb, 0xce, 0x36, + 0x56, 0x3b, 0xdb, 0x78, 0xdf, 0xd9, 0xc6, 0x13, 0x89, 0xb8, 0x8e, 0x33, 0xdf, 0x61, 0x22, 0x21, + 0xb3, 0x2c, 0x0d, 0x38, 0xe5, 0x24, 0x9c, 0x5f, 0x33, 0x21, 0x81, 0xe8, 0xc5, 0x0c, 0x54, 0x1d, + 0xf5, 0x57, 0xf8, 0x7e, 0xb3, 0x8c, 0xeb, 0xe6, 0x33, 0x00, 0x00, 0xff, 0xff, 0xb5, 0x51, 0x57, + 0x0c, 0x11, 0x02, 0x00, 0x00, +} + +func (m *MsgRequestBatch) 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 *MsgRequestBatch) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgRequestBatch) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + { + size := m.BaseFee.Size() + i -= size + if _, err := m.BaseFee.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + if len(m.FeeReceive) > 0 { + i -= len(m.FeeReceive) + copy(dAtA[i:], m.FeeReceive) + i = encodeVarintLegacy(dAtA, i, uint64(len(m.FeeReceive))) + i-- + dAtA[i] = 0x22 + } + { + size := m.MinimumFee.Size() + i -= size + if _, err := m.MinimumFee.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintLegacy(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintLegacy(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0x12 + } + if len(m.Sender) > 0 { + i -= len(m.Sender) + copy(dAtA[i:], m.Sender) + i = encodeVarintLegacy(dAtA, i, uint64(len(m.Sender))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MsgSetOrchestratorAddress) 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 *MsgSetOrchestratorAddress) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgSetOrchestratorAddress) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.EthAddress) > 0 { + i -= len(m.EthAddress) + copy(dAtA[i:], m.EthAddress) + i = encodeVarintLegacy(dAtA, i, uint64(len(m.EthAddress))) + i-- + dAtA[i] = 0x1a + } + if len(m.Orchestrator) > 0 { + i -= len(m.Orchestrator) + copy(dAtA[i:], m.Orchestrator) + i = encodeVarintLegacy(dAtA, i, uint64(len(m.Orchestrator))) + i-- + dAtA[i] = 0x12 + } + if len(m.Validator) > 0 { + i -= len(m.Validator) + copy(dAtA[i:], m.Validator) + i = encodeVarintLegacy(dAtA, i, uint64(len(m.Validator))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintLegacy(dAtA []byte, offset int, v uint64) int { + offset -= sovLegacy(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *MsgRequestBatch) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Sender) + if l > 0 { + n += 1 + l + sovLegacy(uint64(l)) + } + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovLegacy(uint64(l)) + } + l = m.MinimumFee.Size() + n += 1 + l + sovLegacy(uint64(l)) + l = len(m.FeeReceive) + if l > 0 { + n += 1 + l + sovLegacy(uint64(l)) + } + l = m.BaseFee.Size() + n += 1 + l + sovLegacy(uint64(l)) + return n +} + +func (m *MsgSetOrchestratorAddress) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Validator) + if l > 0 { + n += 1 + l + sovLegacy(uint64(l)) + } + l = len(m.Orchestrator) + if l > 0 { + n += 1 + l + sovLegacy(uint64(l)) + } + l = len(m.EthAddress) + if l > 0 { + n += 1 + l + sovLegacy(uint64(l)) + } + return n +} + +func sovLegacy(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozLegacy(x uint64) (n int) { + return sovLegacy(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (m *MsgRequestBatch) 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 ErrIntOverflowLegacy + } + 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: MsgRequestBatch: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgRequestBatch: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLegacy + } + 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 ErrInvalidLengthLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLegacy + } + 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 ErrInvalidLengthLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MinimumFee", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLegacy + } + 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 ErrInvalidLengthLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.MinimumFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FeeReceive", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLegacy + } + 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 ErrInvalidLengthLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FeeReceive = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BaseFee", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLegacy + } + 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 ErrInvalidLengthLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.BaseFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgSetOrchestratorAddress) 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 ErrIntOverflowLegacy + } + 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: MsgSetOrchestratorAddress: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgSetOrchestratorAddress: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Validator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLegacy + } + 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 ErrInvalidLengthLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Validator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLegacy + } + 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 ErrInvalidLengthLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Orchestrator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EthAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowLegacy + } + 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 ErrInvalidLengthLegacy + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthLegacy + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EthAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipLegacy(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthLegacy + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipLegacy(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + depth := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowLegacy + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowLegacy + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + case 1: + iNdEx += 8 + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowLegacy + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthLegacy + } + iNdEx += length + case 3: + depth++ + case 4: + if depth == 0 { + return 0, ErrUnexpectedEndOfGroupLegacy + } + depth-- + case 5: + iNdEx += 4 + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + if iNdEx < 0 { + return 0, ErrInvalidLengthLegacy + } + if depth == 0 { + return iNdEx, nil + } + } + return 0, io.ErrUnexpectedEOF +} + +var ( + ErrInvalidLengthLegacy = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowLegacy = fmt.Errorf("proto: integer overflow") + ErrUnexpectedEndOfGroupLegacy = fmt.Errorf("proto: unexpected end of group") +) diff --git a/types/legacy/gravity_legacy.pb.go b/types/legacy/gravity_legacy.pb.go index e1ee762d..0d7a1b00 100644 --- a/types/legacy/gravity_legacy.pb.go +++ b/types/legacy/gravity_legacy.pb.go @@ -163,69 +163,6 @@ func (m *MsgSendToEth) GetBridgeFee() types.Coin { return types.Coin{} } -// Deprecated: after upgrade v3 -type MsgRequestBatch struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` - Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` - MinimumFee cosmossdk_io_math.Int `protobuf:"bytes,3,opt,name=minimum_fee,json=minimumFee,proto3,customtype=cosmossdk.io/math.Int" json:"minimum_fee"` - FeeReceive string `protobuf:"bytes,4,opt,name=fee_receive,json=feeReceive,proto3" json:"fee_receive,omitempty"` - BaseFee cosmossdk_io_math.Int `protobuf:"bytes,5,opt,name=base_fee,json=baseFee,proto3,customtype=cosmossdk.io/math.Int" json:"base_fee"` -} - -func (m *MsgRequestBatch) Reset() { *m = MsgRequestBatch{} } -func (m *MsgRequestBatch) String() string { return proto.CompactTextString(m) } -func (*MsgRequestBatch) ProtoMessage() {} -func (*MsgRequestBatch) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{2} -} -func (m *MsgRequestBatch) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgRequestBatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgRequestBatch.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 *MsgRequestBatch) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgRequestBatch.Merge(m, src) -} -func (m *MsgRequestBatch) XXX_Size() int { - return m.Size() -} -func (m *MsgRequestBatch) XXX_DiscardUnknown() { - xxx_messageInfo_MsgRequestBatch.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgRequestBatch proto.InternalMessageInfo - -func (m *MsgRequestBatch) GetSender() string { - if m != nil { - return m.Sender - } - return "" -} - -func (m *MsgRequestBatch) GetDenom() string { - if m != nil { - return m.Denom - } - return "" -} - -func (m *MsgRequestBatch) GetFeeReceive() string { - if m != nil { - return m.FeeReceive - } - return "" -} - // Deprecated: after upgrade v3 type MsgConfirmBatch struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"` @@ -239,7 +176,7 @@ func (m *MsgConfirmBatch) Reset() { *m = MsgConfirmBatch{} } func (m *MsgConfirmBatch) String() string { return proto.CompactTextString(m) } func (*MsgConfirmBatch) ProtoMessage() {} func (*MsgConfirmBatch) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{3} + return fileDescriptor_bcc6d4f0faf73764, []int{2} } func (m *MsgConfirmBatch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -319,7 +256,7 @@ func (m *MsgDepositClaim) Reset() { *m = MsgDepositClaim{} } func (m *MsgDepositClaim) String() string { return proto.CompactTextString(m) } func (*MsgDepositClaim) ProtoMessage() {} func (*MsgDepositClaim) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{4} + return fileDescriptor_bcc6d4f0faf73764, []int{3} } func (m *MsgDepositClaim) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -410,7 +347,7 @@ func (m *MsgWithdrawClaim) Reset() { *m = MsgWithdrawClaim{} } func (m *MsgWithdrawClaim) String() string { return proto.CompactTextString(m) } func (*MsgWithdrawClaim) ProtoMessage() {} func (*MsgWithdrawClaim) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{5} + return fileDescriptor_bcc6d4f0faf73764, []int{4} } func (m *MsgWithdrawClaim) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -484,7 +421,7 @@ func (m *MsgCancelSendToEth) Reset() { *m = MsgCancelSendToEth{} } func (m *MsgCancelSendToEth) String() string { return proto.CompactTextString(m) } func (*MsgCancelSendToEth) ProtoMessage() {} func (*MsgCancelSendToEth) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{6} + return fileDescriptor_bcc6d4f0faf73764, []int{5} } func (m *MsgCancelSendToEth) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -540,7 +477,7 @@ func (m *MsgValsetUpdatedClaim) Reset() { *m = MsgValsetUpdatedClaim{} } func (m *MsgValsetUpdatedClaim) String() string { return proto.CompactTextString(m) } func (*MsgValsetUpdatedClaim) ProtoMessage() {} func (*MsgValsetUpdatedClaim) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{7} + return fileDescriptor_bcc6d4f0faf73764, []int{6} } func (m *MsgValsetUpdatedClaim) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -614,7 +551,7 @@ func (m *BridgeValidator) Reset() { *m = BridgeValidator{} } func (m *BridgeValidator) String() string { return proto.CompactTextString(m) } func (*BridgeValidator) ProtoMessage() {} func (*BridgeValidator) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{8} + return fileDescriptor_bcc6d4f0faf73764, []int{7} } func (m *BridgeValidator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -657,67 +594,6 @@ func (m *BridgeValidator) GetEthAddress() string { return "" } -// Deprecated: after upgrade v3 -type MsgSetOrchestratorAddress struct { - Validator string `protobuf:"bytes,1,opt,name=validator,proto3" json:"validator,omitempty"` - Orchestrator string `protobuf:"bytes,2,opt,name=orchestrator,proto3" json:"orchestrator,omitempty"` - EthAddress string `protobuf:"bytes,3,opt,name=eth_address,json=ethAddress,proto3" json:"eth_address,omitempty"` -} - -func (m *MsgSetOrchestratorAddress) Reset() { *m = MsgSetOrchestratorAddress{} } -func (m *MsgSetOrchestratorAddress) String() string { return proto.CompactTextString(m) } -func (*MsgSetOrchestratorAddress) ProtoMessage() {} -func (*MsgSetOrchestratorAddress) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{9} -} -func (m *MsgSetOrchestratorAddress) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgSetOrchestratorAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgSetOrchestratorAddress.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 *MsgSetOrchestratorAddress) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgSetOrchestratorAddress.Merge(m, src) -} -func (m *MsgSetOrchestratorAddress) XXX_Size() int { - return m.Size() -} -func (m *MsgSetOrchestratorAddress) XXX_DiscardUnknown() { - xxx_messageInfo_MsgSetOrchestratorAddress.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgSetOrchestratorAddress proto.InternalMessageInfo - -func (m *MsgSetOrchestratorAddress) GetValidator() string { - if m != nil { - return m.Validator - } - return "" -} - -func (m *MsgSetOrchestratorAddress) GetOrchestrator() string { - if m != nil { - return m.Orchestrator - } - return "" -} - -func (m *MsgSetOrchestratorAddress) GetEthAddress() string { - if m != nil { - return m.EthAddress - } - return "" -} - // Deprecated: after upgrade v3 type MsgFxOriginatedTokenClaim struct { EventNonce uint64 `protobuf:"varint,1,opt,name=event_nonce,json=eventNonce,proto3" json:"event_nonce,omitempty"` @@ -733,7 +609,7 @@ func (m *MsgFxOriginatedTokenClaim) Reset() { *m = MsgFxOriginatedTokenC func (m *MsgFxOriginatedTokenClaim) String() string { return proto.CompactTextString(m) } func (*MsgFxOriginatedTokenClaim) ProtoMessage() {} func (*MsgFxOriginatedTokenClaim) Descriptor() ([]byte, []int) { - return fileDescriptor_bcc6d4f0faf73764, []int{10} + return fileDescriptor_bcc6d4f0faf73764, []int{8} } func (m *MsgFxOriginatedTokenClaim) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -814,14 +690,12 @@ func (m *MsgFxOriginatedTokenClaim) GetOrchestrator() string { func init() { proto.RegisterType((*MsgValsetConfirm)(nil), "fx.gravity.v1.MsgValsetConfirm") proto.RegisterType((*MsgSendToEth)(nil), "fx.gravity.v1.MsgSendToEth") - proto.RegisterType((*MsgRequestBatch)(nil), "fx.gravity.v1.MsgRequestBatch") proto.RegisterType((*MsgConfirmBatch)(nil), "fx.gravity.v1.MsgConfirmBatch") proto.RegisterType((*MsgDepositClaim)(nil), "fx.gravity.v1.MsgDepositClaim") proto.RegisterType((*MsgWithdrawClaim)(nil), "fx.gravity.v1.MsgWithdrawClaim") proto.RegisterType((*MsgCancelSendToEth)(nil), "fx.gravity.v1.MsgCancelSendToEth") proto.RegisterType((*MsgValsetUpdatedClaim)(nil), "fx.gravity.v1.MsgValsetUpdatedClaim") proto.RegisterType((*BridgeValidator)(nil), "fx.gravity.v1.BridgeValidator") - proto.RegisterType((*MsgSetOrchestratorAddress)(nil), "fx.gravity.v1.MsgSetOrchestratorAddress") proto.RegisterType((*MsgFxOriginatedTokenClaim)(nil), "fx.gravity.v1.MsgFxOriginatedTokenClaim") } @@ -830,63 +704,58 @@ func init() { } var fileDescriptor_bcc6d4f0faf73764 = []byte{ - // 896 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xcd, 0x6e, 0xdb, 0x46, - 0x10, 0x36, 0x6d, 0x4a, 0xb2, 0x56, 0x76, 0x53, 0x10, 0x4e, 0x21, 0x1b, 0x8d, 0xec, 0x10, 0x28, - 0xea, 0x4b, 0x49, 0x38, 0x45, 0xd1, 0x9c, 0x02, 0x44, 0x4e, 0x8d, 0xf8, 0xe0, 0x04, 0xa0, 0xd3, - 0x14, 0xe8, 0x85, 0x58, 0x2e, 0x47, 0xe4, 0xc2, 0xe2, 0xae, 0xba, 0xbb, 0x52, 0xe4, 0x4b, 0x5f, - 0xa0, 0x97, 0xbe, 0x49, 0x6f, 0x3d, 0xf4, 0xd8, 0x53, 0x8e, 0x39, 0x16, 0x41, 0x11, 0x14, 0xf6, - 0x1b, 0xf4, 0x09, 0x8a, 0xfd, 0xa1, 0x2d, 0x4b, 0x0a, 0xe0, 0x83, 0xd1, 0xdb, 0xee, 0xc7, 0x9d, - 0xd9, 0x6f, 0xbe, 0xf9, 0x38, 0x24, 0x0a, 0x07, 0xd3, 0xb8, 0x10, 0x78, 0x42, 0xd5, 0x79, 0x3c, - 0x39, 0xa8, 0x97, 0xe9, 0x10, 0x0a, 0x4c, 0xce, 0xa3, 0x91, 0xe0, 0x8a, 0x07, 0x9b, 0x83, 0x69, - 0xe4, 0x1e, 0x44, 0x93, 0x83, 0x9d, 0x1e, 0xe1, 0xb2, 0xe2, 0x32, 0xce, 0xb0, 0x84, 0x78, 0x72, - 0x90, 0x81, 0xc2, 0x07, 0x31, 0xe1, 0x94, 0xd9, 0xe3, 0x3b, 0x5b, 0x05, 0x2f, 0xb8, 0x59, 0xc6, - 0x7a, 0x65, 0xd1, 0xf0, 0x17, 0x0f, 0x7d, 0x7a, 0x22, 0x8b, 0xd7, 0x78, 0x28, 0x41, 0x1d, 0x72, - 0x36, 0xa0, 0xa2, 0x0a, 0xb6, 0x50, 0x83, 0x71, 0x46, 0xa0, 0xeb, 0xed, 0x79, 0xfb, 0x7e, 0x62, - 0x37, 0x41, 0x88, 0x36, 0xb8, 0x20, 0x25, 0x48, 0x25, 0xb0, 0xe2, 0xa2, 0xbb, 0xba, 0xe7, 0xed, - 0xb7, 0x93, 0x1b, 0x58, 0xb0, 0x8b, 0x3a, 0xa0, 0xca, 0x14, 0xe7, 0xb9, 0x00, 0x29, 0xbb, 0x6b, - 0xe6, 0x08, 0x02, 0x55, 0x3e, 0xb5, 0x48, 0xf0, 0x39, 0x6a, 0x4b, 0x5a, 0x30, 0xac, 0xc6, 0x02, - 0xba, 0xbe, 0x79, 0x7c, 0x0d, 0x84, 0x7f, 0x78, 0x68, 0xe3, 0x44, 0x16, 0xa7, 0xc0, 0xf2, 0x57, - 0xfc, 0x3b, 0x55, 0x06, 0x9f, 0xa1, 0xa6, 0x04, 0x96, 0x83, 0x30, 0x54, 0xda, 0x89, 0xdb, 0x05, - 0xdb, 0x68, 0x5d, 0xdf, 0x93, 0x83, 0x54, 0x8e, 0x47, 0x0b, 0x54, 0xf9, 0x0c, 0xa4, 0x0a, 0xbe, - 0x45, 0x4d, 0x5c, 0xf1, 0x31, 0x53, 0xe6, 0xf6, 0xce, 0xa3, 0xed, 0xc8, 0x0a, 0x13, 0x69, 0x61, - 0x22, 0x27, 0x4c, 0x74, 0xc8, 0x29, 0xeb, 0xfb, 0x6f, 0x3f, 0xec, 0xae, 0x24, 0xee, 0x78, 0xf0, - 0x04, 0xa1, 0x4c, 0xd0, 0xbc, 0x80, 0x74, 0x00, 0x96, 0xdb, 0x2d, 0x82, 0xdb, 0x36, 0xe4, 0x08, - 0x20, 0x7c, 0xef, 0xa1, 0x7b, 0x27, 0xb2, 0x48, 0xe0, 0xa7, 0x31, 0x48, 0xd5, 0xc7, 0x8a, 0x7c, - 0x9c, 0xff, 0x16, 0x6a, 0xe4, 0xc0, 0x78, 0xe5, 0xc8, 0xdb, 0x4d, 0xf0, 0x04, 0x75, 0x2a, 0xca, - 0x68, 0x35, 0xae, 0x0c, 0x05, 0xa3, 0x5e, 0xff, 0x81, 0xbe, 0xe7, 0xfd, 0x87, 0xdd, 0xfb, 0x96, - 0x89, 0xcc, 0xcf, 0x22, 0xca, 0xe3, 0x0a, 0xab, 0x32, 0x3a, 0x66, 0x2a, 0x41, 0x2e, 0xe2, 0x08, - 0x40, 0xab, 0x3f, 0x00, 0x48, 0x05, 0x10, 0xa0, 0x93, 0x5a, 0x5e, 0x34, 0x00, 0x48, 0x2c, 0x12, - 0x3c, 0x46, 0xeb, 0xba, 0x10, 0x93, 0xbd, 0x71, 0x9b, 0xec, 0x2d, 0x7d, 0x5c, 0x17, 0xf7, 0x9b, - 0x2d, 0xce, 0x39, 0xc4, 0x16, 0xb7, 0xdc, 0x26, 0x5f, 0xa0, 0x4f, 0x14, 0x3f, 0x03, 0x96, 0x12, - 0xce, 0x94, 0xc0, 0xa4, 0x6e, 0xd0, 0xa6, 0x41, 0x0f, 0x1d, 0x18, 0x3c, 0x40, 0xda, 0x16, 0xa9, - 0xee, 0x3d, 0x08, 0x67, 0x94, 0x36, 0xa8, 0xf2, 0xd4, 0x00, 0x0b, 0x66, 0xf3, 0x97, 0x98, 0xed, - 0x86, 0x97, 0x1a, 0xf3, 0x5e, 0xfa, 0x7d, 0xd5, 0x30, 0x7e, 0x06, 0x23, 0x2e, 0xa9, 0x3a, 0x1c, - 0x62, 0x5a, 0x19, 0x7b, 0x4e, 0x80, 0xa9, 0x74, 0x96, 0x37, 0x32, 0xd0, 0x0b, 0x43, 0xfe, 0x21, - 0xda, 0xc8, 0x86, 0x9c, 0x9c, 0xa5, 0x25, 0xd0, 0xa2, 0xb4, 0xd4, 0xfd, 0xa4, 0x63, 0xb0, 0xe7, - 0x06, 0x5a, 0x52, 0xdf, 0xda, 0xb2, 0xfa, 0xbe, 0xb9, 0xb2, 0xa1, 0x7f, 0x1b, 0xa1, 0x6b, 0x13, - 0xd6, 0xb2, 0x58, 0xd3, 0x34, 0xae, 0x65, 0xb1, 0xbe, 0xd1, 0x1d, 0x9e, 0xd6, 0x0d, 0x16, 0xdd, - 0xa6, 0xeb, 0xf0, 0xd4, 0x35, 0x58, 0xe8, 0x78, 0x85, 0x45, 0x01, 0x2a, 0xa5, 0x19, 0xe9, 0xb6, - 0x6c, 0xbc, 0x45, 0x8e, 0x33, 0xb2, 0x20, 0xeb, 0xfa, 0xa2, 0xac, 0xe1, 0x9f, 0x76, 0x24, 0xfc, - 0x40, 0x55, 0x99, 0x0b, 0xfc, 0xe6, 0xee, 0x94, 0xdb, 0x45, 0x9d, 0x4c, 0x1b, 0xc7, 0xe5, 0x58, - 0xb3, 0x39, 0x0c, 0xf4, 0xe2, 0x23, 0xd6, 0xf1, 0x97, 0x49, 0x3b, 0x5f, 0x44, 0x63, 0x49, 0x11, - 0xa7, 0x28, 0xd0, 0x76, 0xc5, 0x8c, 0xc0, 0xf0, 0x7a, 0x9c, 0xe8, 0x0b, 0x04, 0x66, 0x12, 0x13, - 0x45, 0x39, 0x4b, 0x69, 0xee, 0x0a, 0xd9, 0x9c, 0x41, 0x8f, 0xf3, 0x99, 0xb7, 0x76, 0x75, 0xf6, - 0xad, 0x0d, 0xff, 0xf6, 0xd0, 0xfd, 0xab, 0x61, 0xf9, 0xfd, 0x28, 0xc7, 0x0a, 0xf2, 0xbb, 0x93, - 0xe7, 0x21, 0xda, 0x98, 0x98, 0xcc, 0x37, 0xf4, 0xe9, 0x58, 0xcc, 0x66, 0x79, 0x8c, 0x5a, 0x15, - 0x54, 0x19, 0x08, 0xd9, 0xf5, 0xf7, 0xd6, 0xf6, 0x3b, 0x8f, 0x7a, 0xd1, 0x8d, 0x8f, 0x40, 0xd4, - 0x37, 0xd3, 0xe8, 0x35, 0x1e, 0xd2, 0x5c, 0xcb, 0x90, 0xd4, 0xc7, 0x17, 0x34, 0x6b, 0x2e, 0xd1, - 0xec, 0x39, 0xba, 0x37, 0x17, 0xaf, 0x5f, 0xf1, 0x11, 0x7f, 0xe3, 0xc6, 0x97, 0x9f, 0xd8, 0xcd, - 0xfc, 0x94, 0x5f, 0x9d, 0x9f, 0xf2, 0xe1, 0xcf, 0x68, 0xdb, 0x8c, 0x71, 0xf5, 0x72, 0x26, 0xff, - 0xcc, 0x27, 0x60, 0x52, 0x5f, 0xe0, 0xc6, 0xe2, 0x35, 0x70, 0x27, 0x5f, 0x99, 0xf0, 0x5f, 0xcf, - 0x10, 0x38, 0x9a, 0xbe, 0x14, 0xb4, 0xa0, 0x4c, 0xf7, 0xe9, 0x95, 0xb1, 0xd0, 0xff, 0x3d, 0x05, - 0x02, 0xe4, 0x33, 0x5c, 0xd5, 0xa3, 0xd8, 0xac, 0x8d, 0xbb, 0xce, 0xab, 0x8c, 0x0f, 0x9d, 0x71, - 0xdd, 0x2e, 0xd8, 0x41, 0xeb, 0x39, 0x10, 0x5a, 0xe1, 0xa1, 0x34, 0xed, 0xf1, 0x93, 0xab, 0xfd, - 0x82, 0x2a, 0xad, 0x45, 0x55, 0xfa, 0x4f, 0xdf, 0x5e, 0xf4, 0xbc, 0x77, 0x17, 0x3d, 0xef, 0x9f, - 0x8b, 0x9e, 0xf7, 0xeb, 0x65, 0x6f, 0xe5, 0xdd, 0x65, 0x6f, 0xe5, 0xaf, 0xcb, 0xde, 0xca, 0x8f, - 0x5f, 0x16, 0x54, 0x95, 0xe3, 0x2c, 0x22, 0xbc, 0x8a, 0x47, 0x63, 0x96, 0x53, 0x4c, 0xe3, 0xc1, - 0xf4, 0x2b, 0xc2, 0x05, 0xc4, 0xea, 0x7c, 0x04, 0x32, 0xb6, 0x3f, 0x16, 0x59, 0xd3, 0xfc, 0x14, - 0x7c, 0xfd, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8c, 0x2a, 0xe2, 0xeb, 0x7f, 0x08, 0x00, 0x00, + // 803 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x95, 0x4d, 0x6f, 0xdb, 0x36, + 0x18, 0xc7, 0xa3, 0x58, 0xb6, 0x63, 0xda, 0x59, 0x07, 0xa1, 0x1d, 0x9c, 0x60, 0x95, 0x53, 0x01, + 0xc3, 0x72, 0x99, 0x04, 0x77, 0x18, 0xb6, 0xd3, 0x80, 0xda, 0x5d, 0xd1, 0x1c, 0xdc, 0x01, 0x4a, + 0xd7, 0x01, 0xbb, 0x08, 0x14, 0xf5, 0x58, 0x22, 0x22, 0x91, 0x06, 0x49, 0xbb, 0xf6, 0x67, 0xd8, + 0x65, 0xdf, 0x64, 0xb7, 0x1d, 0x76, 0xdc, 0xa9, 0xc7, 0x1e, 0x87, 0x61, 0x28, 0x86, 0xe4, 0x1b, + 0xec, 0x13, 0x0c, 0x22, 0x65, 0xc7, 0x6f, 0x05, 0x76, 0x08, 0x7a, 0x23, 0xff, 0xe2, 0x43, 0x3e, + 0xcf, 0xef, 0x79, 0x11, 0xf2, 0xc6, 0xf3, 0x20, 0x15, 0x78, 0x46, 0xd5, 0x22, 0x98, 0xf5, 0x97, + 0xcb, 0x28, 0x87, 0x14, 0x93, 0x85, 0x3f, 0x11, 0x5c, 0x71, 0xe7, 0x78, 0x3c, 0xf7, 0xab, 0x0f, + 0xfe, 0xac, 0x7f, 0xea, 0x12, 0x2e, 0x0b, 0x2e, 0x83, 0x18, 0x4b, 0x08, 0x66, 0xfd, 0x18, 0x14, + 0xee, 0x07, 0x84, 0x53, 0x66, 0x8e, 0x9f, 0xde, 0x4f, 0x79, 0xca, 0xf5, 0x32, 0x28, 0x57, 0x46, + 0xf5, 0x7e, 0xb6, 0xd0, 0xc7, 0x23, 0x99, 0xbe, 0xc2, 0xb9, 0x04, 0x35, 0xe4, 0x6c, 0x4c, 0x45, + 0xe1, 0xdc, 0x47, 0x75, 0xc6, 0x19, 0x81, 0xae, 0x75, 0x66, 0x9d, 0xdb, 0xa1, 0xd9, 0x38, 0x1e, + 0xea, 0x70, 0x41, 0x32, 0x90, 0x4a, 0x60, 0xc5, 0x45, 0xf7, 0xf0, 0xcc, 0x3a, 0x6f, 0x85, 0x1b, + 0x9a, 0xd3, 0x43, 0x6d, 0x50, 0x59, 0x84, 0x93, 0x44, 0x80, 0x94, 0xdd, 0x9a, 0x3e, 0x82, 0x40, + 0x65, 0x4f, 0x8c, 0xe2, 0x7c, 0x8a, 0x5a, 0x92, 0xa6, 0x0c, 0xab, 0xa9, 0x80, 0xae, 0xad, 0x3f, + 0xdf, 0x0a, 0xde, 0xef, 0x16, 0xea, 0x8c, 0x64, 0x7a, 0x09, 0x2c, 0x79, 0xc9, 0xbf, 0x53, 0x99, + 0xf3, 0x09, 0x6a, 0x48, 0x60, 0x09, 0x08, 0xed, 0x4a, 0x2b, 0xac, 0x76, 0xce, 0x09, 0x3a, 0x2a, + 0xdf, 0x49, 0x40, 0xaa, 0xca, 0x8f, 0x26, 0xa8, 0xec, 0x29, 0x48, 0xe5, 0x7c, 0x8d, 0x1a, 0xb8, + 0xe0, 0x53, 0xa6, 0xf4, 0xeb, 0xed, 0xc7, 0x27, 0xbe, 0x01, 0xe3, 0x97, 0x60, 0xfc, 0x0a, 0x8c, + 0x3f, 0xe4, 0x94, 0x0d, 0xec, 0x37, 0xef, 0x7a, 0x07, 0x61, 0x75, 0xdc, 0xf9, 0x16, 0xa1, 0x58, + 0xd0, 0x24, 0x85, 0x68, 0x0c, 0xc6, 0xb7, 0xff, 0x61, 0xdc, 0x32, 0x26, 0xcf, 0x00, 0xbc, 0x5f, + 0x2d, 0x74, 0x6f, 0x24, 0xd3, 0x0a, 0xe2, 0x00, 0x2b, 0x92, 0xbd, 0x87, 0xe4, 0x67, 0xe8, 0x23, + 0xc5, 0xaf, 0x80, 0x45, 0x84, 0x33, 0x25, 0x30, 0x59, 0xc6, 0x70, 0xac, 0xd5, 0x61, 0x25, 0x3a, + 0x0f, 0x51, 0x49, 0x2e, 0x2a, 0xf1, 0x80, 0xa8, 0x58, 0xb6, 0x40, 0x65, 0x97, 0x5a, 0xd8, 0xc9, + 0x87, 0xbd, 0x27, 0x1f, 0x1b, 0xb8, 0xeb, 0xdb, 0xb8, 0x7f, 0x3b, 0xd4, 0x1e, 0x3f, 0x85, 0x09, + 0x97, 0x54, 0x0d, 0x73, 0x4c, 0x0b, 0x9d, 0xc1, 0x19, 0x30, 0x15, 0xad, 0xfb, 0x8d, 0xb4, 0xf4, + 0x42, 0x3b, 0xff, 0x08, 0x75, 0xe2, 0x9c, 0x93, 0xab, 0x28, 0x03, 0x9a, 0x66, 0xc6, 0x75, 0x3b, + 0x6c, 0x6b, 0xed, 0xb9, 0x96, 0xf6, 0xc4, 0x57, 0xdb, 0x17, 0xdf, 0x57, 0xab, 0x4c, 0x69, 0xd7, + 0x07, 0x0f, 0x4b, 0xa2, 0x7f, 0xbd, 0xeb, 0x3d, 0x30, 0xcc, 0x65, 0x72, 0xe5, 0x53, 0x1e, 0x14, + 0x58, 0x65, 0xfe, 0x05, 0x53, 0xab, 0x3c, 0x2d, 0xb1, 0x98, 0xba, 0xa8, 0xdf, 0x62, 0x31, 0xa5, + 0xd1, 0x43, 0xed, 0xf1, 0x3c, 0x12, 0x40, 0x80, 0xce, 0x40, 0x74, 0x1b, 0xa6, 0x04, 0xc7, 0xf3, + 0xb0, 0x52, 0x4a, 0x7b, 0x85, 0x45, 0x0a, 0x2a, 0xa2, 0x31, 0xe9, 0x36, 0x8d, 0xbd, 0x51, 0x2e, + 0x62, 0xb2, 0x83, 0xf5, 0x68, 0x17, 0xab, 0xf7, 0x87, 0xe9, 0x9a, 0x1f, 0xa9, 0xca, 0x12, 0x81, + 0x5f, 0xdf, 0x1d, 0xb9, 0x1e, 0x6a, 0xc7, 0x65, 0xe1, 0x54, 0x77, 0xd4, 0xcc, 0x1d, 0x5a, 0x7a, + 0xf1, 0x9e, 0xd2, 0xb1, 0xf7, 0xa1, 0xdd, 0x0e, 0xa2, 0xbe, 0x27, 0x88, 0x4b, 0xe4, 0x94, 0xe5, + 0x8a, 0x19, 0x81, 0xfc, 0xb6, 0xe3, 0xca, 0x07, 0x04, 0x66, 0x12, 0x13, 0x45, 0x39, 0x8b, 0x68, + 0x52, 0x05, 0x72, 0xbc, 0xa6, 0x5e, 0x24, 0x6b, 0x8d, 0x79, 0xb8, 0xde, 0x98, 0xde, 0xdf, 0x16, + 0x7a, 0xb0, 0x9a, 0x27, 0x3f, 0x4c, 0x12, 0xac, 0x20, 0xb9, 0x3b, 0x3c, 0x8f, 0x50, 0x67, 0xa6, + 0x6f, 0xde, 0xe0, 0xd3, 0x36, 0x9a, 0xb9, 0xe5, 0x1b, 0xd4, 0x2c, 0xa0, 0x88, 0x41, 0xc8, 0xae, + 0x7d, 0x56, 0x3b, 0x6f, 0x3f, 0x76, 0xfd, 0x8d, 0x39, 0xe9, 0x0f, 0x74, 0xc3, 0xbe, 0xc2, 0x39, + 0x4d, 0x4a, 0x0c, 0xe1, 0xf2, 0xf8, 0x0e, 0xb3, 0xc6, 0x1e, 0x66, 0xcf, 0xd1, 0xbd, 0x2d, 0xfb, + 0xb2, 0xc5, 0x27, 0xfc, 0x75, 0x35, 0xa1, 0xec, 0xd0, 0x6c, 0xb6, 0x07, 0xe1, 0xe1, 0xf6, 0x20, + 0xf4, 0xfe, 0xb5, 0xd0, 0xc9, 0x48, 0xa6, 0xcf, 0xe6, 0xdf, 0x0b, 0x9a, 0x52, 0x56, 0x72, 0x7a, + 0xa9, 0x53, 0xf8, 0xa1, 0xbb, 0xd0, 0x41, 0x36, 0xc3, 0xc5, 0x72, 0x18, 0xeb, 0xb5, 0xce, 0xee, + 0xa2, 0x88, 0x79, 0x5e, 0x15, 0x4e, 0xb5, 0x73, 0x4e, 0xd1, 0x51, 0x02, 0x84, 0x16, 0x38, 0x97, + 0x1a, 0x8f, 0x1d, 0xae, 0xf6, 0x3b, 0xf8, 0x9a, 0xbb, 0xf8, 0x06, 0x4f, 0xde, 0x5c, 0xbb, 0xd6, + 0xdb, 0x6b, 0xd7, 0xfa, 0xe7, 0xda, 0xb5, 0x7e, 0xb9, 0x71, 0x0f, 0xde, 0xde, 0xb8, 0x07, 0x7f, + 0xde, 0xb8, 0x07, 0x3f, 0x7d, 0x9e, 0x52, 0x95, 0x4d, 0x63, 0x9f, 0xf0, 0x22, 0x98, 0x4c, 0x59, + 0x42, 0x31, 0x0d, 0xc6, 0xf3, 0x2f, 0x08, 0x17, 0x10, 0xa8, 0xc5, 0x04, 0x64, 0x60, 0xfe, 0x7d, + 0x71, 0x43, 0xff, 0xb7, 0xbe, 0xfc, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x25, 0x43, 0xb3, 0x6d, 0x22, + 0x07, 0x00, 0x00, } func (m *MsgValsetConfirm) Marshal() (dAtA []byte, err error) { @@ -995,70 +864,6 @@ func (m *MsgSendToEth) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgRequestBatch) 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 *MsgRequestBatch) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgRequestBatch) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size := m.BaseFee.Size() - i -= size - if _, err := m.BaseFee.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintGravityLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - if len(m.FeeReceive) > 0 { - i -= len(m.FeeReceive) - copy(dAtA[i:], m.FeeReceive) - i = encodeVarintGravityLegacy(dAtA, i, uint64(len(m.FeeReceive))) - i-- - dAtA[i] = 0x22 - } - { - size := m.MinimumFee.Size() - i -= size - if _, err := m.MinimumFee.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintGravityLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintGravityLegacy(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0x12 - } - if len(m.Sender) > 0 { - i -= len(m.Sender) - copy(dAtA[i:], m.Sender) - i = encodeVarintGravityLegacy(dAtA, i, uint64(len(m.Sender))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func (m *MsgConfirmBatch) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1374,50 +1179,6 @@ func (m *BridgeValidator) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgSetOrchestratorAddress) 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 *MsgSetOrchestratorAddress) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgSetOrchestratorAddress) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.EthAddress) > 0 { - i -= len(m.EthAddress) - copy(dAtA[i:], m.EthAddress) - i = encodeVarintGravityLegacy(dAtA, i, uint64(len(m.EthAddress))) - i-- - dAtA[i] = 0x1a - } - if len(m.Orchestrator) > 0 { - i -= len(m.Orchestrator) - copy(dAtA[i:], m.Orchestrator) - i = encodeVarintGravityLegacy(dAtA, i, uint64(len(m.Orchestrator))) - i-- - dAtA[i] = 0x12 - } - if len(m.Validator) > 0 { - i -= len(m.Validator) - copy(dAtA[i:], m.Validator) - i = encodeVarintGravityLegacy(dAtA, i, uint64(len(m.Validator))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - func (m *MsgFxOriginatedTokenClaim) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -1540,31 +1301,6 @@ func (m *MsgSendToEth) Size() (n int) { return n } -func (m *MsgRequestBatch) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Sender) - if l > 0 { - n += 1 + l + sovGravityLegacy(uint64(l)) - } - l = len(m.Denom) - if l > 0 { - n += 1 + l + sovGravityLegacy(uint64(l)) - } - l = m.MinimumFee.Size() - n += 1 + l + sovGravityLegacy(uint64(l)) - l = len(m.FeeReceive) - if l > 0 { - n += 1 + l + sovGravityLegacy(uint64(l)) - } - l = m.BaseFee.Size() - n += 1 + l + sovGravityLegacy(uint64(l)) - return n -} - func (m *MsgConfirmBatch) Size() (n int) { if m == nil { return 0 @@ -1716,27 +1452,6 @@ func (m *BridgeValidator) Size() (n int) { return n } -func (m *MsgSetOrchestratorAddress) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Validator) - if l > 0 { - n += 1 + l + sovGravityLegacy(uint64(l)) - } - l = len(m.Orchestrator) - if l > 0 { - n += 1 + l + sovGravityLegacy(uint64(l)) - } - l = len(m.EthAddress) - if l > 0 { - n += 1 + l + sovGravityLegacy(uint64(l)) - } - return n -} - func (m *MsgFxOriginatedTokenClaim) Size() (n int) { if m == nil { return 0 @@ -2122,7 +1837,7 @@ func (m *MsgSendToEth) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { +func (m *MsgConfirmBatch) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -2145,17 +1860,17 @@ func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgRequestBatch: wiretype end group for non-group") + return fmt.Errorf("proto: MsgConfirmBatch: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgRequestBatch: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgConfirmBatch: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) } - var stringLen uint64 + m.Nonce = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowGravityLegacy @@ -2165,27 +1880,14 @@ func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.Nonce |= uint64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthGravityLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGravityLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TokenContract", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -2213,11 +1915,11 @@ func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Denom = string(dAtA[iNdEx:postIndex]) + m.TokenContract = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MinimumFee", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field EthSigner", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -2245,13 +1947,11 @@ func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.MinimumFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.EthSigner = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FeeReceive", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -2279,11 +1979,11 @@ func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.FeeReceive = string(dAtA[iNdEx:postIndex]) + m.Orchestrator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BaseFee", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Signature", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -2311,9 +2011,7 @@ func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.BaseFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Signature = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -2336,7 +2034,7 @@ func (m *MsgRequestBatch) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgConfirmBatch) Unmarshal(dAtA []byte) error { +func (m *MsgDepositClaim) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -2359,204 +2057,7 @@ func (m *MsgConfirmBatch) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgConfirmBatch: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgConfirmBatch: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) - } - m.Nonce = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGravityLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Nonce |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TokenContract", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGravityLegacy - } - 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 ErrInvalidLengthGravityLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGravityLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.TokenContract = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EthSigner", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGravityLegacy - } - 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 ErrInvalidLengthGravityLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGravityLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.EthSigner = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGravityLegacy - } - 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 ErrInvalidLengthGravityLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGravityLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Orchestrator = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Signature", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGravityLegacy - } - 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 ErrInvalidLengthGravityLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGravityLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Signature = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipGravityLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthGravityLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgDepositClaim) 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 ErrIntOverflowGravityLegacy - } - 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: MsgDepositClaim: wiretype end group for non-group") + return fmt.Errorf("proto: MsgDepositClaim: wiretype end group for non-group") } if fieldNum <= 0 { return fmt.Errorf("proto: MsgDepositClaim: illegal tag %d (wire type %d)", fieldNum, wire) @@ -3361,152 +2862,6 @@ func (m *BridgeValidator) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgSetOrchestratorAddress) 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 ErrIntOverflowGravityLegacy - } - 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: MsgSetOrchestratorAddress: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgSetOrchestratorAddress: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Validator", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGravityLegacy - } - 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 ErrInvalidLengthGravityLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGravityLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Validator = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Orchestrator", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGravityLegacy - } - 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 ErrInvalidLengthGravityLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGravityLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Orchestrator = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EthAddress", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGravityLegacy - } - 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 ErrInvalidLengthGravityLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGravityLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.EthAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipGravityLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthGravityLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *MsgFxOriginatedTokenClaim) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/types/legacy/ibc_legacy.pb.go b/types/legacy/ibc_legacy.pb.go index 7bea4775..72e2c486 100644 --- a/types/legacy/ibc_legacy.pb.go +++ b/types/legacy/ibc_legacy.pb.go @@ -27,6 +27,8 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package // MsgTransfer defines a msg to transfer fungible tokens (i.e Coins) between // ICS20 enabled chains. See ICS Spec here: // https://github.com/cosmos/ics/tree/master/spec/ics-020-fungible-token-transfer#data-structures +// +// Deprecated: Do not use. type MsgTransfer struct { // the port on which the packet will be sent SourcePort string `protobuf:"bytes,1,opt,name=source_port,json=sourcePort,proto3" json:"source_port,omitempty" yaml:"source_port"` @@ -95,6 +97,8 @@ var xxx_messageInfo_MsgTransfer proto.InternalMessageInfo // breaking changes In these cases, the RevisionNumber is incremented so that // height continues to be monitonically increasing even as the RevisionHeight // gets reset +// +// Deprecated: Do not use. type Height struct { // the revision that the client is currently on RevisionNumber uint64 `protobuf:"varint,1,opt,name=revision_number,json=revisionNumber,proto3" json:"revision_number,omitempty"` @@ -159,40 +163,40 @@ func init() { } var fileDescriptor_94c7270e688125fc = []byte{ - // 514 bytes of a gzipped FileDescriptorProto + // 516 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x53, 0x31, 0x6f, 0xd3, 0x40, - 0x14, 0xb6, 0x5b, 0x37, 0xb4, 0x17, 0x35, 0xc0, 0x09, 0x2a, 0x37, 0x02, 0x3b, 0xf2, 0x92, 0x2c, - 0xdc, 0x11, 0x10, 0x42, 0xea, 0x04, 0xe9, 0x02, 0x03, 0x08, 0x59, 0x9d, 0x58, 0x22, 0xdb, 0x79, - 0x71, 0x4e, 0xc4, 0x3e, 0xeb, 0xee, 0x1c, 0x25, 0xff, 0x80, 0x91, 0x09, 0x31, 0xe6, 0xe7, 0x74, - 0xec, 0xc8, 0x14, 0xa1, 0x64, 0x61, 0xce, 0x2f, 0x40, 0xbe, 0x73, 0x4a, 0x33, 0xc1, 0xe4, 0x7b, - 0xdf, 0xf7, 0xbd, 0xef, 0xdd, 0xf7, 0x74, 0x46, 0xcf, 0xc7, 0x73, 0xca, 0xe2, 0x84, 0x46, 0x45, - 0x31, 0x65, 0x49, 0xa4, 0x18, 0xcf, 0x25, 0x55, 0x22, 0xca, 0xe5, 0x18, 0x04, 0x9d, 0xf5, 0x2b, - 0x72, 0x38, 0x85, 0x34, 0x4a, 0x16, 0xa4, 0x10, 0x5c, 0x71, 0xec, 0x8f, 0xe7, 0x84, 0xc5, 0x09, - 0xb9, 0xdb, 0x41, 0x76, 0x1d, 0x64, 0xd6, 0x6f, 0x7b, 0x09, 0x97, 0x19, 0x97, 0x34, 0x8e, 0x24, - 0xd0, 0x59, 0x3f, 0x06, 0x15, 0xf5, 0x69, 0xc2, 0x59, 0x6e, 0x0c, 0xda, 0x8f, 0x52, 0x9e, 0x72, - 0x7d, 0xa4, 0xd5, 0xc9, 0xa0, 0xc1, 0x77, 0x07, 0x35, 0x3f, 0xc8, 0xf4, 0xaa, 0x36, 0xc2, 0xaf, - 0x51, 0x53, 0xf2, 0x52, 0x24, 0x30, 0x2c, 0xb8, 0x50, 0xae, 0xdd, 0xb1, 0x7b, 0x27, 0x83, 0xb3, - 0xed, 0xca, 0xc7, 0x8b, 0x28, 0x9b, 0x5e, 0x04, 0x77, 0xc8, 0x20, 0x44, 0xa6, 0xfa, 0xc4, 0x85, - 0xc2, 0x6f, 0x50, 0xab, 0xe6, 0x92, 0x49, 0x94, 0xe7, 0x30, 0x75, 0x0f, 0x74, 0xef, 0xf9, 0x76, - 0xe5, 0x3f, 0xde, 0xeb, 0xad, 0xf9, 0x20, 0x3c, 0x35, 0xc0, 0xa5, 0xa9, 0xf1, 0x2b, 0x74, 0xa4, - 0xf8, 0x17, 0xc8, 0xdd, 0xc3, 0x8e, 0xdd, 0x6b, 0xbe, 0x38, 0x27, 0x26, 0x10, 0xa9, 0x02, 0x91, - 0x3a, 0x10, 0xb9, 0xe4, 0x2c, 0x1f, 0x38, 0xd7, 0x2b, 0xdf, 0x0a, 0x8d, 0x1a, 0x9f, 0xa1, 0x86, - 0x84, 0x7c, 0x04, 0xc2, 0x75, 0xaa, 0x81, 0x61, 0x5d, 0xe1, 0x36, 0x3a, 0x16, 0x90, 0x00, 0x9b, - 0x81, 0x70, 0x8f, 0x34, 0x73, 0x5b, 0xe3, 0x0c, 0xb5, 0x14, 0xcb, 0x80, 0x97, 0x6a, 0x38, 0x01, - 0x96, 0x4e, 0x94, 0xdb, 0xd0, 0x33, 0xbb, 0xe4, 0x1f, 0x5b, 0x26, 0xef, 0xb4, 0x7c, 0xf0, 0xb4, - 0xba, 0xc1, 0xdf, 0x64, 0xfb, 0x66, 0x41, 0x78, 0x5a, 0x03, 0x46, 0x8d, 0xdf, 0xa3, 0x87, 0x3b, - 0x45, 0xf5, 0x95, 0x2a, 0xca, 0x0a, 0xf7, 0x5e, 0xc7, 0xee, 0x39, 0x83, 0x27, 0xdb, 0x95, 0xef, - 0xee, 0x9b, 0xdc, 0x4a, 0x82, 0xf0, 0x41, 0x8d, 0x5d, 0xed, 0xa0, 0x2a, 0xad, 0xe0, 0xa5, 0x02, - 0xe1, 0x1e, 0x9b, 0xb4, 0xa6, 0xc2, 0x7d, 0x74, 0x38, 0x06, 0x70, 0x4f, 0xfe, 0x6f, 0x75, 0x95, - 0x16, 0x63, 0xe4, 0x64, 0x90, 0x71, 0x17, 0x69, 0x23, 0x7d, 0xbe, 0x38, 0xfe, 0xba, 0xf4, 0xad, - 0xdf, 0x4b, 0xdf, 0x0a, 0x46, 0xa8, 0x51, 0xdf, 0xbe, 0x8b, 0xee, 0x0b, 0x98, 0x31, 0xc9, 0x78, - 0x3e, 0xcc, 0xcb, 0x2c, 0x06, 0xa1, 0x9f, 0x85, 0x13, 0xb6, 0x76, 0xf0, 0x47, 0x8d, 0xee, 0x09, - 0xeb, 0xb5, 0x1e, 0xec, 0x0b, 0x8d, 0xa3, 0x9e, 0x62, 0xff, 0x58, 0xfa, 0xf6, 0xe0, 0xed, 0xf5, - 0xda, 0xb3, 0x6f, 0xd6, 0x9e, 0xfd, 0x6b, 0xed, 0xd9, 0xdf, 0x36, 0x9e, 0x75, 0xb3, 0xf1, 0xac, - 0x9f, 0x1b, 0xcf, 0xfa, 0xdc, 0x4d, 0x99, 0x9a, 0x94, 0x31, 0x49, 0x78, 0x46, 0x8b, 0x32, 0x1f, - 0xb1, 0x88, 0xd1, 0xf1, 0xfc, 0x59, 0xc2, 0x05, 0x50, 0xb5, 0x28, 0x40, 0x52, 0xf3, 0x7b, 0xc4, - 0x0d, 0xfd, 0x90, 0x5f, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff, 0x2a, 0xd4, 0xa2, 0x72, 0x53, 0x03, - 0x00, 0x00, + 0x14, 0xb6, 0x5b, 0x37, 0xb4, 0x57, 0x35, 0xc0, 0x09, 0xaa, 0x6b, 0x04, 0x76, 0xe4, 0x25, 0x59, + 0xb8, 0x23, 0x20, 0x84, 0xd4, 0x09, 0xd2, 0x05, 0x06, 0x10, 0xb2, 0x3a, 0xb1, 0x44, 0xb6, 0xfb, + 0xec, 0x9c, 0x88, 0x7d, 0xd6, 0xf9, 0x1c, 0x25, 0xff, 0x80, 0x91, 0xb1, 0x63, 0x7e, 0x4e, 0xc7, + 0x8e, 0x4c, 0x11, 0x4a, 0x16, 0xe6, 0xfc, 0x02, 0xe4, 0x3b, 0xa7, 0x34, 0x13, 0x4c, 0xbe, 0xf7, + 0x7d, 0xdf, 0xfb, 0xde, 0x7d, 0x4f, 0x67, 0xf4, 0x32, 0x99, 0x31, 0x1e, 0xc5, 0x2c, 0x2c, 0x8a, + 0x09, 0x8f, 0x43, 0xc5, 0x45, 0x5e, 0x32, 0x25, 0xc3, 0xbc, 0x4c, 0x40, 0xb2, 0xe9, 0xa0, 0x26, + 0x47, 0x13, 0x48, 0xc3, 0x78, 0x4e, 0x0b, 0x29, 0x94, 0xc0, 0x5e, 0x32, 0xa3, 0x3c, 0x8a, 0xe9, + 0xfd, 0x0e, 0xba, 0xed, 0xa0, 0xd3, 0x41, 0xc7, 0x8d, 0x45, 0x99, 0x89, 0x92, 0x45, 0x61, 0x09, + 0x6c, 0x3a, 0x88, 0x40, 0x85, 0x03, 0x16, 0x0b, 0x9e, 0x1b, 0x83, 0xce, 0x93, 0x54, 0xa4, 0x42, + 0x1f, 0x59, 0x7d, 0x32, 0xa8, 0x7f, 0xed, 0xa0, 0xe3, 0x4f, 0x65, 0x7a, 0xd9, 0x18, 0xe1, 0xb7, + 0xe8, 0xb8, 0x14, 0x95, 0x8c, 0x61, 0x54, 0x08, 0xa9, 0x88, 0xdd, 0xb5, 0xfb, 0x47, 0xc3, 0xd3, + 0xcd, 0xd2, 0xc3, 0xf3, 0x30, 0x9b, 0x9c, 0xfb, 0xf7, 0x48, 0x3f, 0x40, 0xa6, 0xfa, 0x22, 0xa4, + 0xc2, 0xef, 0x50, 0xbb, 0xe1, 0xe2, 0x71, 0x98, 0xe7, 0x30, 0x21, 0x7b, 0xba, 0xf7, 0x6c, 0xb3, + 0xf4, 0x9e, 0xee, 0xf4, 0x36, 0xbc, 0x1f, 0x9c, 0x18, 0xe0, 0xc2, 0xd4, 0xf8, 0x0d, 0x3a, 0x50, + 0xe2, 0x1b, 0xe4, 0x64, 0xbf, 0x6b, 0xf7, 0x8f, 0x5f, 0x9d, 0x51, 0x13, 0x88, 0xd6, 0x81, 0x68, + 0x13, 0x88, 0x5e, 0x08, 0x9e, 0x0f, 0x9d, 0x9b, 0xa5, 0x67, 0x05, 0x46, 0x8d, 0x4f, 0x51, 0xab, + 0x84, 0xfc, 0x0a, 0x24, 0x71, 0xea, 0x81, 0x41, 0x53, 0xe1, 0x0e, 0x3a, 0x94, 0x10, 0x03, 0x9f, + 0x82, 0x24, 0x07, 0x9a, 0xb9, 0xab, 0x71, 0x86, 0xda, 0x8a, 0x67, 0x20, 0x2a, 0x35, 0x1a, 0x03, + 0x4f, 0xc7, 0x8a, 0xb4, 0xf4, 0xcc, 0x1e, 0xfd, 0xc7, 0x96, 0xe9, 0x07, 0x2d, 0x1f, 0x3e, 0xaf, + 0x6f, 0xf0, 0x37, 0xd9, 0xae, 0x99, 0x1f, 0x9c, 0x34, 0x80, 0x51, 0xe3, 0x8f, 0xe8, 0xf1, 0x56, + 0x51, 0x7f, 0x4b, 0x15, 0x66, 0x05, 0x79, 0xd0, 0xb5, 0xfb, 0xce, 0xf0, 0xd9, 0x66, 0xe9, 0x91, + 0x5d, 0x93, 0x3b, 0x89, 0x1f, 0x3c, 0x6a, 0xb0, 0xcb, 0x2d, 0x54, 0xa7, 0x95, 0xa2, 0x52, 0x20, + 0xc9, 0xa1, 0x49, 0x6b, 0x2a, 0x3c, 0x40, 0xfb, 0x09, 0x00, 0x39, 0xfa, 0xbf, 0xd5, 0xd5, 0x5a, + 0x8c, 0x91, 0x93, 0x41, 0x26, 0x08, 0xd2, 0x46, 0xfa, 0x7c, 0x8e, 0xbe, 0x2f, 0x3c, 0xeb, 0xf7, + 0xc2, 0xb3, 0x88, 0xed, 0x27, 0xa8, 0xd5, 0xdc, 0xbf, 0x87, 0x1e, 0x4a, 0x98, 0xf2, 0x92, 0x8b, + 0x7c, 0x94, 0x57, 0x59, 0x04, 0x52, 0x3f, 0x0c, 0x27, 0x68, 0x6f, 0xe1, 0xcf, 0x1a, 0xdd, 0x11, + 0x36, 0x8b, 0xdd, 0xdb, 0x15, 0x1a, 0x47, 0x3d, 0xc7, 0xbe, 0x5e, 0x78, 0x36, 0xb1, 0x87, 0xef, + 0x6f, 0x56, 0xae, 0x7d, 0xbb, 0x72, 0xed, 0x5f, 0x2b, 0xd7, 0xfe, 0xb1, 0x76, 0xad, 0xdb, 0xb5, + 0x6b, 0xfd, 0x5c, 0xbb, 0xd6, 0xd7, 0x5e, 0xca, 0xd5, 0xb8, 0x8a, 0x68, 0x2c, 0x32, 0x56, 0x54, + 0xf9, 0x15, 0x0f, 0x39, 0x4b, 0x66, 0x2f, 0x62, 0x21, 0x81, 0xa9, 0x79, 0x01, 0x25, 0x33, 0xbf, + 0x48, 0xd4, 0xd2, 0x8f, 0xf9, 0xf5, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe8, 0x07, 0xd0, 0x92, + 0x57, 0x03, 0x00, 0x00, } func (m *MsgTransfer) Marshal() (dAtA []byte, err error) { diff --git a/types/legacy/staking_legacy.pb.go b/types/legacy/staking_legacy.pb.go index b1188642..bf5e660b 100644 --- a/types/legacy/staking_legacy.pb.go +++ b/types/legacy/staking_legacy.pb.go @@ -24,6 +24,7 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package +// Deprecated: Do not use. type MsgGrantPrivilege struct { ValidatorAddress string `protobuf:"bytes,1,opt,name=validator_address,json=validatorAddress,proto3" json:"validator_address,omitempty"` FromAddress string `protobuf:"bytes,2,opt,name=from_address,json=fromAddress,proto3" json:"from_address,omitempty"` @@ -92,6 +93,7 @@ func (m *MsgGrantPrivilege) GetSignature() string { return "" } +// Deprecated: Do not use. type MsgEditConsensusPubKey struct { ValidatorAddress string `protobuf:"bytes,1,opt,name=validator_address,json=validatorAddress,proto3" json:"validator_address,omitempty"` From string `protobuf:"bytes,2,opt,name=from,proto3" json:"from,omitempty"` @@ -162,30 +164,30 @@ func init() { } var fileDescriptor_74ac4460055f235c = []byte{ - // 353 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x52, 0xc1, 0x4a, 0xeb, 0x40, - 0x14, 0xed, 0xbc, 0x57, 0x8a, 0x9d, 0x2a, 0xd8, 0x50, 0x24, 0x2d, 0x12, 0x6a, 0x37, 0x16, 0xa4, - 0x33, 0x54, 0xbf, 0xa0, 0x15, 0x75, 0x51, 0x0a, 0xa5, 0x4b, 0x37, 0x61, 0x92, 0x4c, 0xc6, 0xa1, - 0xe9, 0x4c, 0x98, 0x99, 0x84, 0xe6, 0x2f, 0xfc, 0x05, 0xff, 0xc1, 0x8f, 0x10, 0x17, 0xd2, 0xa5, - 0x4b, 0x69, 0x7f, 0x44, 0x9a, 0xa4, 0x75, 0x2d, 0xee, 0xee, 0x3d, 0xe7, 0xdc, 0x7b, 0xcf, 0x81, - 0x0b, 0x7b, 0xe1, 0x0a, 0x6b, 0x43, 0x16, 0x5c, 0x30, 0x9c, 0x0e, 0xf7, 0xa5, 0x1b, 0x51, 0x46, - 0xfc, 0x0c, 0xc5, 0x4a, 0x1a, 0x69, 0x9d, 0x84, 0x2b, 0x54, 0x12, 0x28, 0x1d, 0x76, 0xda, 0xbe, - 0xd4, 0x4b, 0xa9, 0xdd, 0x9c, 0xc4, 0x45, 0x53, 0x28, 0x3b, 0x6d, 0x26, 0x25, 0x8b, 0x28, 0xce, - 0x3b, 0x2f, 0x09, 0x31, 0x11, 0xe5, 0x92, 0xde, 0x07, 0x80, 0xcd, 0xa9, 0x66, 0x0f, 0x8a, 0x08, - 0x33, 0x53, 0x3c, 0xe5, 0x11, 0x65, 0xd4, 0xba, 0x82, 0xcd, 0x94, 0x44, 0x3c, 0x20, 0x46, 0x2a, - 0x97, 0x04, 0x81, 0xa2, 0x5a, 0xdb, 0xa0, 0x0b, 0xfa, 0xf5, 0xf9, 0xe9, 0x81, 0x18, 0x15, 0xb8, - 0x75, 0x01, 0x8f, 0x43, 0x25, 0x97, 0x07, 0xdd, 0xbf, 0x5c, 0xd7, 0xd8, 0x61, 0x7b, 0xc9, 0x04, - 0xd6, 0x8d, 0x74, 0xe3, 0xc4, 0x5b, 0xd0, 0xcc, 0xfe, 0xdf, 0x05, 0xfd, 0xc6, 0x75, 0x0b, 0x15, - 0xa6, 0xd0, 0xde, 0x14, 0x1a, 0x89, 0x6c, 0x6c, 0xbf, 0xbf, 0x0e, 0x5a, 0xa5, 0x77, 0x5f, 0x65, - 0xb1, 0x91, 0x68, 0x96, 0x78, 0x13, 0x9a, 0xcd, 0x8f, 0x8c, 0x9c, 0xe5, 0xf3, 0xd6, 0x39, 0xac, - 0x6b, 0xce, 0x04, 0x31, 0x89, 0xa2, 0x76, 0x35, 0x3f, 0xf6, 0x03, 0xf4, 0x5e, 0x00, 0x3c, 0x9b, - 0x6a, 0x76, 0x17, 0x70, 0x73, 0x2b, 0x85, 0xa6, 0x42, 0x27, 0xba, 0x58, 0xf1, 0xbb, 0x54, 0x16, - 0xac, 0xee, 0x12, 0x94, 0x69, 0xf2, 0xda, 0xba, 0x87, 0xb5, 0x3f, 0x65, 0x28, 0xa7, 0xc7, 0xa3, - 0xb7, 0x8d, 0x03, 0xd6, 0x1b, 0x07, 0x7c, 0x6d, 0x1c, 0xf0, 0xbc, 0x75, 0x2a, 0xeb, 0xad, 0x53, - 0xf9, 0xdc, 0x3a, 0x95, 0xc7, 0x4b, 0xc6, 0xcd, 0x53, 0xe2, 0x21, 0x5f, 0x2e, 0x71, 0x9c, 0x88, - 0x80, 0x13, 0x8e, 0xc3, 0xd5, 0xc0, 0x97, 0x8a, 0x62, 0x93, 0xc5, 0x54, 0xe3, 0xe2, 0x05, 0xbc, - 0x5a, 0x7e, 0xf2, 0xe6, 0x3b, 0x00, 0x00, 0xff, 0xff, 0xdb, 0xa3, 0xd0, 0xa0, 0x29, 0x02, 0x00, - 0x00, + // 361 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x52, 0xc1, 0x6a, 0xea, 0x40, + 0x14, 0x75, 0x7c, 0x22, 0xcf, 0xf1, 0x3d, 0x78, 0x06, 0x79, 0x44, 0x29, 0xc1, 0xba, 0xa9, 0x50, + 0x9c, 0xc1, 0x76, 0xd7, 0x9d, 0x96, 0xb6, 0x0b, 0x11, 0xc4, 0x65, 0x37, 0x61, 0x92, 0x4c, 0xa6, + 0x83, 0x71, 0x26, 0xcc, 0x4c, 0x82, 0xf9, 0x8b, 0xfe, 0x44, 0xff, 0xa0, 0x1f, 0x51, 0xba, 0x92, + 0xae, 0xba, 0x2c, 0xfa, 0x23, 0xc5, 0x24, 0xda, 0x75, 0xe9, 0xee, 0xde, 0x73, 0xce, 0xbd, 0xf7, + 0x1c, 0xb8, 0xb0, 0x1f, 0xae, 0xb1, 0x36, 0x64, 0xc9, 0x05, 0xc3, 0xe9, 0xe8, 0x50, 0xba, 0x11, + 0x65, 0xc4, 0xcf, 0x50, 0xac, 0xa4, 0x91, 0xd6, 0xdf, 0x70, 0x8d, 0x4a, 0x02, 0xa5, 0xa3, 0x6e, + 0xc7, 0x97, 0x7a, 0x25, 0xb5, 0x9b, 0x93, 0xb8, 0x68, 0x0a, 0x65, 0xb7, 0xc3, 0xa4, 0x64, 0x11, + 0xc5, 0x79, 0xe7, 0x25, 0x21, 0x26, 0xa2, 0x5c, 0xd2, 0x7f, 0x03, 0xb0, 0x35, 0xd3, 0xec, 0x4e, + 0x11, 0x61, 0xe6, 0x8a, 0xa7, 0x3c, 0xa2, 0x8c, 0x5a, 0xe7, 0xb0, 0x95, 0x92, 0x88, 0x07, 0xc4, + 0x48, 0xe5, 0x92, 0x20, 0x50, 0x54, 0x6b, 0x1b, 0xf4, 0xc0, 0xa0, 0xb1, 0xf8, 0x77, 0x24, 0xc6, + 0x05, 0x6e, 0x9d, 0xc2, 0x3f, 0xa1, 0x92, 0xab, 0xa3, 0xae, 0x9a, 0xeb, 0x9a, 0x7b, 0xec, 0x20, + 0x99, 0xc2, 0x86, 0x91, 0x6e, 0x9c, 0x78, 0x4b, 0x9a, 0xd9, 0xbf, 0x7a, 0x60, 0xd0, 0xbc, 0x68, + 0xa3, 0xc2, 0x14, 0x3a, 0x98, 0x42, 0x63, 0x91, 0x4d, 0xec, 0xd7, 0xe7, 0x61, 0xbb, 0xf4, 0xee, + 0xab, 0x2c, 0x36, 0x12, 0xcd, 0x13, 0x6f, 0x4a, 0xb3, 0xc5, 0x6f, 0x23, 0xe7, 0xf9, 0xbc, 0x75, + 0x02, 0x1b, 0x9a, 0x33, 0x41, 0x4c, 0xa2, 0xa8, 0x5d, 0xcb, 0x8f, 0x7d, 0x01, 0x57, 0x55, 0x1b, + 0xf4, 0x9f, 0x00, 0xfc, 0x3f, 0xd3, 0xec, 0x26, 0xe0, 0xe6, 0x5a, 0x0a, 0x4d, 0x85, 0x4e, 0x74, + 0xb1, 0xe6, 0x7b, 0xc9, 0x2c, 0x58, 0xdb, 0xa7, 0x28, 0x13, 0xe5, 0xb5, 0x75, 0x0b, 0xeb, 0x3f, + 0xca, 0x51, 0x4e, 0xef, 0x7d, 0x4e, 0xc6, 0x2f, 0x5b, 0x07, 0x6c, 0xb6, 0x0e, 0xf8, 0xd8, 0x3a, + 0xe0, 0x71, 0xe7, 0x54, 0x36, 0x3b, 0xa7, 0xf2, 0xbe, 0x73, 0x2a, 0xf7, 0x67, 0x8c, 0x9b, 0x87, + 0xc4, 0x43, 0xbe, 0x5c, 0xe1, 0x38, 0x11, 0x01, 0x27, 0x1c, 0x87, 0xeb, 0xa1, 0x2f, 0x15, 0xc5, + 0x26, 0x8b, 0xa9, 0xc6, 0xc5, 0x2b, 0x78, 0xf5, 0xfc, 0xec, 0xe5, 0x67, 0x00, 0x00, 0x00, 0xff, + 0xff, 0x18, 0x57, 0xf8, 0x26, 0x31, 0x02, 0x00, 0x00, } func (m *MsgGrantPrivilege) Marshal() (dAtA []byte, err error) { diff --git a/x/crosschain/types/codec.go b/x/crosschain/types/codec.go index e5b558f6..8d8d287a 100644 --- a/x/crosschain/types/codec.go +++ b/x/crosschain/types/codec.go @@ -7,15 +7,11 @@ import ( "github.com/cosmos/cosmos-sdk/codec/types" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/msgservice" - govv1betal "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" ) // RegisterInterfaces registers the interfaces for the proto stuff func RegisterInterfaces(registry types.InterfaceRegistry) { registry.RegisterImplementations((*sdk.Msg)(nil), - &MsgSetOrchestratorAddress{}, - &MsgAddOracleDeposit{}, - &MsgBondedOracle{}, &MsgAddDelegate{}, &MsgReDelegate{}, @@ -23,10 +19,6 @@ func RegisterInterfaces(registry types.InterfaceRegistry) { &MsgWithdrawReward{}, &MsgSendToExternal{}, - &MsgCancelSendToExternal{}, - &MsgIncreaseBridgeFee{}, - - &MsgRequestBatch{}, &MsgUpdateParams{}, &MsgUpdateChainOracles{}, @@ -36,12 +28,6 @@ func RegisterInterfaces(registry types.InterfaceRegistry) { &MsgConfirm{}, ) - registry.RegisterImplementations( - (*govv1betal.Content)(nil), - &InitCrossChainParamsProposal{}, - &UpdateChainOraclesProposal{}, - ) - registry.RegisterInterface( "fx.gravity.crosschain.v1.ExternalClaim", (*ExternalClaim)(nil), @@ -83,20 +69,13 @@ func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { cdc.RegisterConcrete(&MsgSendToFxClaim{}, fmt.Sprintf("%s/%s", ModuleName, "MsgSendToFxClaim"), nil) cdc.RegisterConcrete(&MsgSendToExternal{}, fmt.Sprintf("%s/%s", ModuleName, "MsgSendToExternal"), nil) - cdc.RegisterConcrete(&MsgCancelSendToExternal{}, fmt.Sprintf("%s/%s", ModuleName, "MsgCancelSendToExternal"), nil) - cdc.RegisterConcrete(&MsgIncreaseBridgeFee{}, fmt.Sprintf("%s/%s", ModuleName, "MsgIncreaseBridgeFee"), nil) cdc.RegisterConcrete(&MsgSendToExternalClaim{}, fmt.Sprintf("%s/%s", ModuleName, "MsgSendToExternalClaim"), nil) - - cdc.RegisterConcrete(&MsgRequestBatch{}, fmt.Sprintf("%s/%s", ModuleName, "MsgRequestBatch"), nil) cdc.RegisterConcrete(&MsgConfirmBatch{}, fmt.Sprintf("%s/%s", ModuleName, "MsgConfirmBatch"), nil) cdc.RegisterConcrete(&MsgBridgeCallClaim{}, fmt.Sprintf("%s/%s", ModuleName, "MsgBridgeCallClaim"), nil) cdc.RegisterConcrete(&MsgBridgeCallConfirm{}, fmt.Sprintf("%s/%s", ModuleName, "MsgBridgeCallConfirm"), nil) cdc.RegisterConcrete(&MsgBridgeCallResultClaim{}, fmt.Sprintf("%s/%s", ModuleName, "MsgBridgeCallResultClaim"), nil) - // register Proposal - cdc.RegisterConcrete(&UpdateChainOraclesProposal{}, fmt.Sprintf("%s/%s", ModuleName, "UpdateChainOraclesProposal"), nil) - cdc.RegisterConcrete(&InitCrossChainParamsProposal{}, fmt.Sprintf("%s/%s", ModuleName, "InitCrossChainParamsProposal"), nil) cdc.RegisterConcrete(&MsgUpdateParams{}, fmt.Sprintf("%s/%s", ModuleName, "MsgUpdateParams"), nil) cdc.RegisterConcrete(&MsgUpdateChainOracles{}, fmt.Sprintf("%s/%s", ModuleName, "MsgUpdateChainOracles"), nil) } diff --git a/x/crosschain/types/key.go b/x/crosschain/types/key.go index 67f508e3..75bdd0cb 100644 --- a/x/crosschain/types/key.go +++ b/x/crosschain/types/key.go @@ -10,9 +10,6 @@ const ( // ModuleName is the name of the module ModuleName = "crosschain" - // RouterKey is the module name router key - RouterKey = ModuleName - BridgeCallSender = "bridge_call" BridgeFeeCollectorName = "bridge_fee_collector" diff --git a/x/crosschain/types/legacy.pb.go b/x/crosschain/types/legacy.pb.go deleted file mode 100644 index 6d909e43..00000000 --- a/x/crosschain/types/legacy.pb.go +++ /dev/null @@ -1,4713 +0,0 @@ -// Code generated by protoc-gen-gogo. DO NOT EDIT. -// source: fx/gravity/crosschain/v1/legacy.proto - -package types - -import ( - cosmossdk_io_math "cosmossdk.io/math" - fmt "fmt" - _ "github.com/cosmos/cosmos-proto" - types "github.com/cosmos/cosmos-sdk/types" - _ "github.com/cosmos/cosmos-sdk/types/msgservice" - _ "github.com/cosmos/cosmos-sdk/types/tx/amino" - _ "github.com/cosmos/gogoproto/gogoproto" - proto "github.com/cosmos/gogoproto/proto" - io "io" - math "math" - math_bits "math/bits" -) - -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package - -// Deprecated: after block 5713000 -type InitCrossChainParamsProposal struct { - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - Params *Params `protobuf:"bytes,3,opt,name=params,proto3" json:"params,omitempty"` - ChainName string `protobuf:"bytes,4,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (m *InitCrossChainParamsProposal) Reset() { *m = InitCrossChainParamsProposal{} } -func (*InitCrossChainParamsProposal) ProtoMessage() {} -func (*InitCrossChainParamsProposal) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{0} -} -func (m *InitCrossChainParamsProposal) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *InitCrossChainParamsProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_InitCrossChainParamsProposal.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 *InitCrossChainParamsProposal) XXX_Merge(src proto.Message) { - xxx_messageInfo_InitCrossChainParamsProposal.Merge(m, src) -} -func (m *InitCrossChainParamsProposal) XXX_Size() int { - return m.Size() -} -func (m *InitCrossChainParamsProposal) XXX_DiscardUnknown() { - xxx_messageInfo_InitCrossChainParamsProposal.DiscardUnknown(m) -} - -var xxx_messageInfo_InitCrossChainParamsProposal proto.InternalMessageInfo - -// Deprecated: Do not use. -type UpdateChainOraclesProposal struct { - // the title of the update proposal - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - // the description of the proposal - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - Oracles []string `protobuf:"bytes,3,rep,name=oracles,proto3" json:"oracles,omitempty"` - ChainName string `protobuf:"bytes,4,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (m *UpdateChainOraclesProposal) Reset() { *m = UpdateChainOraclesProposal{} } -func (*UpdateChainOraclesProposal) ProtoMessage() {} -func (*UpdateChainOraclesProposal) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{1} -} -func (m *UpdateChainOraclesProposal) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *UpdateChainOraclesProposal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_UpdateChainOraclesProposal.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 *UpdateChainOraclesProposal) XXX_Merge(src proto.Message) { - xxx_messageInfo_UpdateChainOraclesProposal.Merge(m, src) -} -func (m *UpdateChainOraclesProposal) XXX_Size() int { - return m.Size() -} -func (m *UpdateChainOraclesProposal) XXX_DiscardUnknown() { - xxx_messageInfo_UpdateChainOraclesProposal.DiscardUnknown(m) -} - -var xxx_messageInfo_UpdateChainOraclesProposal proto.InternalMessageInfo - -// Deprecated: after block 5713000 -type MsgSetOrchestratorAddress struct { - OracleAddress string `protobuf:"bytes,1,opt,name=oracle_address,json=oracleAddress,proto3" json:"oracle_address,omitempty"` - BridgerAddress string `protobuf:"bytes,2,opt,name=bridger_address,json=bridgerAddress,proto3" json:"bridger_address,omitempty"` - ExternalAddress string `protobuf:"bytes,3,opt,name=external_address,json=externalAddress,proto3" json:"external_address,omitempty"` - Deposit types.Coin `protobuf:"bytes,4,opt,name=deposit,proto3" json:"deposit"` - ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (m *MsgSetOrchestratorAddress) Reset() { *m = MsgSetOrchestratorAddress{} } -func (m *MsgSetOrchestratorAddress) String() string { return proto.CompactTextString(m) } -func (*MsgSetOrchestratorAddress) ProtoMessage() {} -func (*MsgSetOrchestratorAddress) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{2} -} -func (m *MsgSetOrchestratorAddress) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgSetOrchestratorAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgSetOrchestratorAddress.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 *MsgSetOrchestratorAddress) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgSetOrchestratorAddress.Merge(m, src) -} -func (m *MsgSetOrchestratorAddress) XXX_Size() int { - return m.Size() -} -func (m *MsgSetOrchestratorAddress) XXX_DiscardUnknown() { - xxx_messageInfo_MsgSetOrchestratorAddress.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgSetOrchestratorAddress proto.InternalMessageInfo - -func (m *MsgSetOrchestratorAddress) GetOracleAddress() string { - if m != nil { - return m.OracleAddress - } - return "" -} - -func (m *MsgSetOrchestratorAddress) GetBridgerAddress() string { - if m != nil { - return m.BridgerAddress - } - return "" -} - -func (m *MsgSetOrchestratorAddress) GetExternalAddress() string { - if m != nil { - return m.ExternalAddress - } - return "" -} - -func (m *MsgSetOrchestratorAddress) GetDeposit() types.Coin { - if m != nil { - return m.Deposit - } - return types.Coin{} -} - -func (m *MsgSetOrchestratorAddress) GetChainName() string { - if m != nil { - return m.ChainName - } - return "" -} - -// Deprecated: after block 5713000 -type MsgAddOracleDeposit struct { - OracleAddress string `protobuf:"bytes,1,opt,name=oracle_address,json=oracleAddress,proto3" json:"oracle_address,omitempty"` - Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount"` - ChainName string `protobuf:"bytes,3,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (m *MsgAddOracleDeposit) Reset() { *m = MsgAddOracleDeposit{} } -func (m *MsgAddOracleDeposit) String() string { return proto.CompactTextString(m) } -func (*MsgAddOracleDeposit) ProtoMessage() {} -func (*MsgAddOracleDeposit) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{3} -} -func (m *MsgAddOracleDeposit) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgAddOracleDeposit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgAddOracleDeposit.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 *MsgAddOracleDeposit) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgAddOracleDeposit.Merge(m, src) -} -func (m *MsgAddOracleDeposit) XXX_Size() int { - return m.Size() -} -func (m *MsgAddOracleDeposit) XXX_DiscardUnknown() { - xxx_messageInfo_MsgAddOracleDeposit.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgAddOracleDeposit proto.InternalMessageInfo - -func (m *MsgAddOracleDeposit) GetOracleAddress() string { - if m != nil { - return m.OracleAddress - } - return "" -} - -func (m *MsgAddOracleDeposit) GetAmount() types.Coin { - if m != nil { - return m.Amount - } - return types.Coin{} -} - -func (m *MsgAddOracleDeposit) GetChainName() string { - if m != nil { - return m.ChainName - } - return "" -} - -// Deprecated: Please use precompile BridgeCall -type MsgSendToExternal struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` - Dest string `protobuf:"bytes,2,opt,name=dest,proto3" json:"dest,omitempty"` - Amount types.Coin `protobuf:"bytes,3,opt,name=amount,proto3" json:"amount"` - BridgeFee types.Coin `protobuf:"bytes,4,opt,name=bridge_fee,json=bridgeFee,proto3" json:"bridge_fee"` - ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (m *MsgSendToExternal) Reset() { *m = MsgSendToExternal{} } -func (m *MsgSendToExternal) String() string { return proto.CompactTextString(m) } -func (*MsgSendToExternal) ProtoMessage() {} -func (*MsgSendToExternal) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{4} -} -func (m *MsgSendToExternal) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgSendToExternal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgSendToExternal.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 *MsgSendToExternal) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgSendToExternal.Merge(m, src) -} -func (m *MsgSendToExternal) XXX_Size() int { - return m.Size() -} -func (m *MsgSendToExternal) XXX_DiscardUnknown() { - xxx_messageInfo_MsgSendToExternal.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgSendToExternal proto.InternalMessageInfo - -func (m *MsgSendToExternal) GetSender() string { - if m != nil { - return m.Sender - } - return "" -} - -func (m *MsgSendToExternal) GetDest() string { - if m != nil { - return m.Dest - } - return "" -} - -func (m *MsgSendToExternal) GetAmount() types.Coin { - if m != nil { - return m.Amount - } - return types.Coin{} -} - -func (m *MsgSendToExternal) GetBridgeFee() types.Coin { - if m != nil { - return m.BridgeFee - } - return types.Coin{} -} - -func (m *MsgSendToExternal) GetChainName() string { - if m != nil { - return m.ChainName - } - return "" -} - -// Deprecated: do not use -type MsgSendToExternalResponse struct { - BatchNonce uint64 `protobuf:"varint,1,opt,name=batch_nonce,json=batchNonce,proto3" json:"batch_nonce,omitempty"` -} - -func (m *MsgSendToExternalResponse) Reset() { *m = MsgSendToExternalResponse{} } -func (m *MsgSendToExternalResponse) String() string { return proto.CompactTextString(m) } -func (*MsgSendToExternalResponse) ProtoMessage() {} -func (*MsgSendToExternalResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{5} -} -func (m *MsgSendToExternalResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgSendToExternalResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgSendToExternalResponse.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 *MsgSendToExternalResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgSendToExternalResponse.Merge(m, src) -} -func (m *MsgSendToExternalResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgSendToExternalResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgSendToExternalResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgSendToExternalResponse proto.InternalMessageInfo - -func (m *MsgSendToExternalResponse) GetBatchNonce() uint64 { - if m != nil { - return m.BatchNonce - } - return 0 -} - -// Deprecated: do not use -type MsgCancelSendToExternal struct { - TransactionId uint64 `protobuf:"varint,1,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` - Sender string `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"` - ChainName string `protobuf:"bytes,3,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` -} - -func (m *MsgCancelSendToExternal) Reset() { *m = MsgCancelSendToExternal{} } -func (m *MsgCancelSendToExternal) String() string { return proto.CompactTextString(m) } -func (*MsgCancelSendToExternal) ProtoMessage() {} -func (*MsgCancelSendToExternal) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{6} -} -func (m *MsgCancelSendToExternal) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgCancelSendToExternal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgCancelSendToExternal.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 *MsgCancelSendToExternal) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgCancelSendToExternal.Merge(m, src) -} -func (m *MsgCancelSendToExternal) XXX_Size() int { - return m.Size() -} -func (m *MsgCancelSendToExternal) XXX_DiscardUnknown() { - xxx_messageInfo_MsgCancelSendToExternal.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgCancelSendToExternal proto.InternalMessageInfo - -func (m *MsgCancelSendToExternal) GetTransactionId() uint64 { - if m != nil { - return m.TransactionId - } - return 0 -} - -func (m *MsgCancelSendToExternal) GetSender() string { - if m != nil { - return m.Sender - } - return "" -} - -func (m *MsgCancelSendToExternal) GetChainName() string { - if m != nil { - return m.ChainName - } - return "" -} - -// Deprecated: do not use -type MsgRequestBatch struct { - Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` - Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` - MinimumFee cosmossdk_io_math.Int `protobuf:"bytes,3,opt,name=minimum_fee,json=minimumFee,proto3,customtype=cosmossdk.io/math.Int" json:"minimum_fee"` - FeeReceive string `protobuf:"bytes,4,opt,name=fee_receive,json=feeReceive,proto3" json:"fee_receive,omitempty"` - ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` - BaseFee cosmossdk_io_math.Int `protobuf:"bytes,6,opt,name=base_fee,json=baseFee,proto3,customtype=cosmossdk.io/math.Int" json:"base_fee"` -} - -func (m *MsgRequestBatch) Reset() { *m = MsgRequestBatch{} } -func (m *MsgRequestBatch) String() string { return proto.CompactTextString(m) } -func (*MsgRequestBatch) ProtoMessage() {} -func (*MsgRequestBatch) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{7} -} -func (m *MsgRequestBatch) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgRequestBatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgRequestBatch.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 *MsgRequestBatch) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgRequestBatch.Merge(m, src) -} -func (m *MsgRequestBatch) XXX_Size() int { - return m.Size() -} -func (m *MsgRequestBatch) XXX_DiscardUnknown() { - xxx_messageInfo_MsgRequestBatch.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgRequestBatch proto.InternalMessageInfo - -func (m *MsgRequestBatch) GetSender() string { - if m != nil { - return m.Sender - } - return "" -} - -func (m *MsgRequestBatch) GetDenom() string { - if m != nil { - return m.Denom - } - return "" -} - -func (m *MsgRequestBatch) GetFeeReceive() string { - if m != nil { - return m.FeeReceive - } - return "" -} - -func (m *MsgRequestBatch) GetChainName() string { - if m != nil { - return m.ChainName - } - return "" -} - -// Deprecated: do not use -type MsgRequestBatchResponse struct { - BatchNonce uint64 `protobuf:"varint,1,opt,name=batch_nonce,json=batchNonce,proto3" json:"batch_nonce,omitempty"` -} - -func (m *MsgRequestBatchResponse) Reset() { *m = MsgRequestBatchResponse{} } -func (m *MsgRequestBatchResponse) String() string { return proto.CompactTextString(m) } -func (*MsgRequestBatchResponse) ProtoMessage() {} -func (*MsgRequestBatchResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{8} -} -func (m *MsgRequestBatchResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgRequestBatchResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgRequestBatchResponse.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 *MsgRequestBatchResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgRequestBatchResponse.Merge(m, src) -} -func (m *MsgRequestBatchResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgRequestBatchResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgRequestBatchResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgRequestBatchResponse proto.InternalMessageInfo - -func (m *MsgRequestBatchResponse) GetBatchNonce() uint64 { - if m != nil { - return m.BatchNonce - } - return 0 -} - -// Deprecated: Do not use. -type MsgIncreaseBridgeFee struct { - ChainName string `protobuf:"bytes,1,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` - TransactionId uint64 `protobuf:"varint,2,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` - Sender string `protobuf:"bytes,3,opt,name=sender,proto3" json:"sender,omitempty"` - AddBridgeFee types.Coin `protobuf:"bytes,4,opt,name=add_bridge_fee,json=addBridgeFee,proto3" json:"add_bridge_fee"` -} - -func (m *MsgIncreaseBridgeFee) Reset() { *m = MsgIncreaseBridgeFee{} } -func (m *MsgIncreaseBridgeFee) String() string { return proto.CompactTextString(m) } -func (*MsgIncreaseBridgeFee) ProtoMessage() {} -func (*MsgIncreaseBridgeFee) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{9} -} -func (m *MsgIncreaseBridgeFee) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgIncreaseBridgeFee) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgIncreaseBridgeFee.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 *MsgIncreaseBridgeFee) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgIncreaseBridgeFee.Merge(m, src) -} -func (m *MsgIncreaseBridgeFee) XXX_Size() int { - return m.Size() -} -func (m *MsgIncreaseBridgeFee) XXX_DiscardUnknown() { - xxx_messageInfo_MsgIncreaseBridgeFee.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgIncreaseBridgeFee proto.InternalMessageInfo - -func (m *MsgIncreaseBridgeFee) GetChainName() string { - if m != nil { - return m.ChainName - } - return "" -} - -func (m *MsgIncreaseBridgeFee) GetTransactionId() uint64 { - if m != nil { - return m.TransactionId - } - return 0 -} - -func (m *MsgIncreaseBridgeFee) GetSender() string { - if m != nil { - return m.Sender - } - return "" -} - -func (m *MsgIncreaseBridgeFee) GetAddBridgeFee() types.Coin { - if m != nil { - return m.AddBridgeFee - } - return types.Coin{} -} - -// Deprecated: Do not use. -type MsgOracleSetConfirmResponse struct { -} - -func (m *MsgOracleSetConfirmResponse) Reset() { *m = MsgOracleSetConfirmResponse{} } -func (m *MsgOracleSetConfirmResponse) String() string { return proto.CompactTextString(m) } -func (*MsgOracleSetConfirmResponse) ProtoMessage() {} -func (*MsgOracleSetConfirmResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{10} -} -func (m *MsgOracleSetConfirmResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgOracleSetConfirmResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgOracleSetConfirmResponse.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 *MsgOracleSetConfirmResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgOracleSetConfirmResponse.Merge(m, src) -} -func (m *MsgOracleSetConfirmResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgOracleSetConfirmResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgOracleSetConfirmResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgOracleSetConfirmResponse proto.InternalMessageInfo - -// Deprecated: Do not use. -type MsgConfirmBatchResponse struct { -} - -func (m *MsgConfirmBatchResponse) Reset() { *m = MsgConfirmBatchResponse{} } -func (m *MsgConfirmBatchResponse) String() string { return proto.CompactTextString(m) } -func (*MsgConfirmBatchResponse) ProtoMessage() {} -func (*MsgConfirmBatchResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{11} -} -func (m *MsgConfirmBatchResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgConfirmBatchResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgConfirmBatchResponse.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 *MsgConfirmBatchResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgConfirmBatchResponse.Merge(m, src) -} -func (m *MsgConfirmBatchResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgConfirmBatchResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgConfirmBatchResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgConfirmBatchResponse proto.InternalMessageInfo - -// Deprecated: Do not use. -type MsgBridgeCallConfirmResponse struct { -} - -func (m *MsgBridgeCallConfirmResponse) Reset() { *m = MsgBridgeCallConfirmResponse{} } -func (m *MsgBridgeCallConfirmResponse) String() string { return proto.CompactTextString(m) } -func (*MsgBridgeCallConfirmResponse) ProtoMessage() {} -func (*MsgBridgeCallConfirmResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{12} -} -func (m *MsgBridgeCallConfirmResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MsgBridgeCallConfirmResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MsgBridgeCallConfirmResponse.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 *MsgBridgeCallConfirmResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_MsgBridgeCallConfirmResponse.Merge(m, src) -} -func (m *MsgBridgeCallConfirmResponse) XXX_Size() int { - return m.Size() -} -func (m *MsgBridgeCallConfirmResponse) XXX_DiscardUnknown() { - xxx_messageInfo_MsgBridgeCallConfirmResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_MsgBridgeCallConfirmResponse proto.InternalMessageInfo - -// Deprecated: Do not use. -type BridgeToken struct { - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` - Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` - // Deprecated: after upgrade v3 - ChannelIbc string `protobuf:"bytes,3,opt,name=channel_ibc,json=channelIbc,proto3" json:"channel_ibc,omitempty"` -} - -func (m *BridgeToken) Reset() { *m = BridgeToken{} } -func (m *BridgeToken) String() string { return proto.CompactTextString(m) } -func (*BridgeToken) ProtoMessage() {} -func (*BridgeToken) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{13} -} -func (m *BridgeToken) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *BridgeToken) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_BridgeToken.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 *BridgeToken) XXX_Merge(src proto.Message) { - xxx_messageInfo_BridgeToken.Merge(m, src) -} -func (m *BridgeToken) XXX_Size() int { - return m.Size() -} -func (m *BridgeToken) XXX_DiscardUnknown() { - xxx_messageInfo_BridgeToken.DiscardUnknown(m) -} - -var xxx_messageInfo_BridgeToken proto.InternalMessageInfo - -func (m *BridgeToken) GetToken() string { - if m != nil { - return m.Token - } - return "" -} - -func (m *BridgeToken) GetDenom() string { - if m != nil { - return m.Denom - } - return "" -} - -func (m *BridgeToken) GetChannelIbc() string { - if m != nil { - return m.ChannelIbc - } - return "" -} - -// Deprecated: Do not use. -type BatchFees struct { - TokenContract string `protobuf:"bytes,1,opt,name=token_contract,json=tokenContract,proto3" json:"token_contract,omitempty"` - TotalFees cosmossdk_io_math.Int `protobuf:"bytes,2,opt,name=total_fees,json=totalFees,proto3,customtype=cosmossdk.io/math.Int" json:"total_fees"` - TotalTxs uint64 `protobuf:"varint,3,opt,name=total_txs,json=totalTxs,proto3" json:"total_txs,omitempty"` - TotalAmount cosmossdk_io_math.Int `protobuf:"bytes,4,opt,name=total_amount,json=totalAmount,proto3,customtype=cosmossdk.io/math.Int" json:"total_amount"` -} - -func (m *BatchFees) Reset() { *m = BatchFees{} } -func (m *BatchFees) String() string { return proto.CompactTextString(m) } -func (*BatchFees) ProtoMessage() {} -func (*BatchFees) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{14} -} -func (m *BatchFees) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *BatchFees) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_BatchFees.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 *BatchFees) XXX_Merge(src proto.Message) { - xxx_messageInfo_BatchFees.Merge(m, src) -} -func (m *BatchFees) XXX_Size() int { - return m.Size() -} -func (m *BatchFees) XXX_DiscardUnknown() { - xxx_messageInfo_BatchFees.DiscardUnknown(m) -} - -var xxx_messageInfo_BatchFees proto.InternalMessageInfo - -func (m *BatchFees) GetTokenContract() string { - if m != nil { - return m.TokenContract - } - return "" -} - -func (m *BatchFees) GetTotalTxs() uint64 { - if m != nil { - return m.TotalTxs - } - return 0 -} - -// Deprecated: Do not use. -type MinBatchFee struct { - TokenContract string `protobuf:"bytes,1,opt,name=token_contract,json=tokenContract,proto3" json:"token_contract,omitempty"` - BaseFee cosmossdk_io_math.Int `protobuf:"bytes,2,opt,name=base_fee,json=baseFee,proto3,customtype=cosmossdk.io/math.Int" json:"base_fee"` -} - -func (m *MinBatchFee) Reset() { *m = MinBatchFee{} } -func (m *MinBatchFee) String() string { return proto.CompactTextString(m) } -func (*MinBatchFee) ProtoMessage() {} -func (*MinBatchFee) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{15} -} -func (m *MinBatchFee) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *MinBatchFee) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_MinBatchFee.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 *MinBatchFee) XXX_Merge(src proto.Message) { - xxx_messageInfo_MinBatchFee.Merge(m, src) -} -func (m *MinBatchFee) XXX_Size() int { - return m.Size() -} -func (m *MinBatchFee) XXX_DiscardUnknown() { - xxx_messageInfo_MinBatchFee.DiscardUnknown(m) -} - -var xxx_messageInfo_MinBatchFee proto.InternalMessageInfo - -func (m *MinBatchFee) GetTokenContract() string { - if m != nil { - return m.TokenContract - } - return "" -} - -// Deprecated: Do not use. -type QueryBatchFeeRequest struct { - ChainName string `protobuf:"bytes,1,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` - MinBatchFees []MinBatchFee `protobuf:"bytes,2,rep,name=min_batch_fees,json=minBatchFees,proto3" json:"min_batch_fees"` -} - -func (m *QueryBatchFeeRequest) Reset() { *m = QueryBatchFeeRequest{} } -func (m *QueryBatchFeeRequest) String() string { return proto.CompactTextString(m) } -func (*QueryBatchFeeRequest) ProtoMessage() {} -func (*QueryBatchFeeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{16} -} -func (m *QueryBatchFeeRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryBatchFeeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryBatchFeeRequest.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 *QueryBatchFeeRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryBatchFeeRequest.Merge(m, src) -} -func (m *QueryBatchFeeRequest) XXX_Size() int { - return m.Size() -} -func (m *QueryBatchFeeRequest) XXX_DiscardUnknown() { - xxx_messageInfo_QueryBatchFeeRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryBatchFeeRequest proto.InternalMessageInfo - -func (m *QueryBatchFeeRequest) GetChainName() string { - if m != nil { - return m.ChainName - } - return "" -} - -func (m *QueryBatchFeeRequest) GetMinBatchFees() []MinBatchFee { - if m != nil { - return m.MinBatchFees - } - return nil -} - -// Deprecated: Do not use. -type QueryBatchFeeResponse struct { - BatchFees []*BatchFees `protobuf:"bytes,1,rep,name=batch_fees,json=batchFees,proto3" json:"batch_fees,omitempty"` -} - -func (m *QueryBatchFeeResponse) Reset() { *m = QueryBatchFeeResponse{} } -func (m *QueryBatchFeeResponse) String() string { return proto.CompactTextString(m) } -func (*QueryBatchFeeResponse) ProtoMessage() {} -func (*QueryBatchFeeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_26110436a8f12cc1, []int{17} -} -func (m *QueryBatchFeeResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *QueryBatchFeeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_QueryBatchFeeResponse.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 *QueryBatchFeeResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryBatchFeeResponse.Merge(m, src) -} -func (m *QueryBatchFeeResponse) XXX_Size() int { - return m.Size() -} -func (m *QueryBatchFeeResponse) XXX_DiscardUnknown() { - xxx_messageInfo_QueryBatchFeeResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryBatchFeeResponse proto.InternalMessageInfo - -func (m *QueryBatchFeeResponse) GetBatchFees() []*BatchFees { - if m != nil { - return m.BatchFees - } - return nil -} - -func init() { - proto.RegisterType((*InitCrossChainParamsProposal)(nil), "fx.gravity.crosschain.v1.InitCrossChainParamsProposal") - proto.RegisterType((*UpdateChainOraclesProposal)(nil), "fx.gravity.crosschain.v1.UpdateChainOraclesProposal") - proto.RegisterType((*MsgSetOrchestratorAddress)(nil), "fx.gravity.crosschain.v1.MsgSetOrchestratorAddress") - proto.RegisterType((*MsgAddOracleDeposit)(nil), "fx.gravity.crosschain.v1.MsgAddOracleDeposit") - proto.RegisterType((*MsgSendToExternal)(nil), "fx.gravity.crosschain.v1.MsgSendToExternal") - proto.RegisterType((*MsgSendToExternalResponse)(nil), "fx.gravity.crosschain.v1.MsgSendToExternalResponse") - proto.RegisterType((*MsgCancelSendToExternal)(nil), "fx.gravity.crosschain.v1.MsgCancelSendToExternal") - proto.RegisterType((*MsgRequestBatch)(nil), "fx.gravity.crosschain.v1.MsgRequestBatch") - proto.RegisterType((*MsgRequestBatchResponse)(nil), "fx.gravity.crosschain.v1.MsgRequestBatchResponse") - proto.RegisterType((*MsgIncreaseBridgeFee)(nil), "fx.gravity.crosschain.v1.MsgIncreaseBridgeFee") - proto.RegisterType((*MsgOracleSetConfirmResponse)(nil), "fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse") - proto.RegisterType((*MsgConfirmBatchResponse)(nil), "fx.gravity.crosschain.v1.MsgConfirmBatchResponse") - proto.RegisterType((*MsgBridgeCallConfirmResponse)(nil), "fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse") - proto.RegisterType((*BridgeToken)(nil), "fx.gravity.crosschain.v1.BridgeToken") - proto.RegisterType((*BatchFees)(nil), "fx.gravity.crosschain.v1.BatchFees") - proto.RegisterType((*MinBatchFee)(nil), "fx.gravity.crosschain.v1.MinBatchFee") - proto.RegisterType((*QueryBatchFeeRequest)(nil), "fx.gravity.crosschain.v1.QueryBatchFeeRequest") - proto.RegisterType((*QueryBatchFeeResponse)(nil), "fx.gravity.crosschain.v1.QueryBatchFeeResponse") -} - -func init() { - proto.RegisterFile("fx/gravity/crosschain/v1/legacy.proto", fileDescriptor_26110436a8f12cc1) -} - -var fileDescriptor_26110436a8f12cc1 = []byte{ - // 1164 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0xcf, 0x6f, 0x1b, 0xc5, - 0x17, 0xf7, 0xda, 0x6e, 0x5a, 0x3f, 0xb7, 0xe9, 0xb7, 0xfb, 0x4d, 0xa9, 0x9b, 0xb6, 0x76, 0x58, - 0x1a, 0x11, 0x0a, 0xdd, 0x55, 0x82, 0xc4, 0x8f, 0xa8, 0x42, 0xaa, 0x4d, 0x83, 0x8c, 0x70, 0x7f, - 0xb8, 0xe5, 0xc2, 0x81, 0xd5, 0x78, 0xf7, 0x79, 0xbd, 0xaa, 0x77, 0xc6, 0xec, 0x8c, 0x23, 0xe7, - 0x86, 0x90, 0x90, 0x10, 0xe2, 0xc0, 0x11, 0x89, 0x4b, 0xef, 0x48, 0xa8, 0x07, 0xae, 0x1c, 0xb8, - 0xf5, 0xc0, 0xa1, 0xe2, 0x84, 0x38, 0x54, 0x28, 0x39, 0x94, 0x13, 0xfc, 0x0b, 0x68, 0x67, 0x66, - 0xd3, 0xf5, 0x36, 0x26, 0xb1, 0x7a, 0xb1, 0x3c, 0x9f, 0x79, 0xf3, 0xe6, 0xf3, 0xf9, 0xbc, 0xf7, - 0x76, 0x17, 0x56, 0xfb, 0x13, 0x27, 0x88, 0xc9, 0x76, 0x28, 0x76, 0x1c, 0x2f, 0x66, 0x9c, 0x7b, - 0x03, 0x12, 0x52, 0x67, 0x7b, 0xdd, 0x19, 0x62, 0x40, 0xbc, 0x1d, 0x7b, 0x14, 0x33, 0xc1, 0xcc, - 0x5a, 0x7f, 0x62, 0xeb, 0x30, 0xfb, 0x59, 0x98, 0xbd, 0xbd, 0xbe, 0x7c, 0x79, 0x66, 0x02, 0xb1, - 0x33, 0x42, 0xae, 0xce, 0x2f, 0x2f, 0x05, 0x2c, 0x60, 0xf2, 0xaf, 0x93, 0xfc, 0xd3, 0x68, 0xdd, - 0x63, 0x3c, 0x62, 0xdc, 0xe9, 0x11, 0x8e, 0xce, 0xf6, 0x7a, 0x0f, 0x05, 0x59, 0x77, 0x3c, 0x16, - 0x52, 0xbd, 0x7f, 0x4e, 0xef, 0x47, 0x3c, 0x48, 0x12, 0x46, 0x3c, 0xd0, 0x1b, 0xe7, 0xd5, 0x86, - 0xab, 0x32, 0xaa, 0x85, 0xde, 0x3a, 0x43, 0xa2, 0x90, 0x32, 0x47, 0xfe, 0x2a, 0xc8, 0xfa, 0xd9, - 0x80, 0x8b, 0x6d, 0x1a, 0x8a, 0x56, 0x42, 0xaf, 0x95, 0xd0, 0xbb, 0x4d, 0x62, 0x12, 0xf1, 0xdb, - 0x31, 0x1b, 0x31, 0x4e, 0x86, 0xe6, 0x12, 0x1c, 0x13, 0xa1, 0x18, 0x62, 0xcd, 0x58, 0x31, 0xd6, - 0x2a, 0x5d, 0xb5, 0x30, 0x57, 0xa0, 0xea, 0x23, 0xf7, 0xe2, 0x70, 0x24, 0x42, 0x46, 0x6b, 0x45, - 0xb9, 0x97, 0x85, 0xcc, 0x77, 0x60, 0x61, 0x24, 0x33, 0xd5, 0x4a, 0x2b, 0xc6, 0x5a, 0x75, 0x63, - 0xc5, 0x9e, 0x65, 0x93, 0xad, 0x6e, 0xec, 0xea, 0x78, 0xf3, 0x12, 0x80, 0xdc, 0x72, 0x29, 0x89, - 0xb0, 0x56, 0x96, 0xa9, 0x2b, 0x12, 0xb9, 0x49, 0x22, 0xdc, 0x3c, 0xf9, 0xd5, 0x83, 0x46, 0xe1, - 0xbb, 0x07, 0x8d, 0xc2, 0x5f, 0x0f, 0x1a, 0x05, 0xeb, 0x7b, 0x03, 0x96, 0x3f, 0x1e, 0xf9, 0x44, - 0xa0, 0x24, 0x7f, 0x2b, 0x26, 0xde, 0x10, 0x5f, 0x9c, 0x7d, 0x0d, 0x8e, 0x33, 0x95, 0xaa, 0x56, - 0x5a, 0x29, 0xad, 0x55, 0xba, 0xe9, 0x72, 0x3e, 0x76, 0x3f, 0x16, 0xe1, 0x7c, 0x87, 0x07, 0x77, - 0x51, 0xdc, 0x8a, 0xbd, 0x01, 0x72, 0x11, 0x13, 0xc1, 0xe2, 0xeb, 0xbe, 0x1f, 0x23, 0xe7, 0xe6, - 0x2a, 0x2c, 0xaa, 0xac, 0x2e, 0x51, 0x88, 0x66, 0x79, 0x4a, 0xa1, 0x69, 0xd8, 0xab, 0x70, 0xba, - 0x17, 0x87, 0x7e, 0x80, 0xf1, 0x7e, 0x9c, 0x62, 0xbc, 0xa8, 0xe1, 0x34, 0xf0, 0x35, 0xf8, 0x1f, - 0x4e, 0x04, 0xc6, 0x94, 0x0c, 0xf7, 0x23, 0x4b, 0x32, 0xf2, 0x74, 0x8a, 0xa7, 0xa1, 0xef, 0xc2, - 0x71, 0x1f, 0x47, 0x8c, 0x87, 0x42, 0x4a, 0xa8, 0x6e, 0x9c, 0xb7, 0x75, 0xa7, 0x24, 0xfd, 0x66, - 0xeb, 0x7e, 0xb3, 0x5b, 0x2c, 0xa4, 0xcd, 0xf2, 0xa3, 0x27, 0x8d, 0x42, 0x37, 0x8d, 0xcf, 0x19, - 0x70, 0x2c, 0x6f, 0xc0, 0xb5, 0x2f, 0x9e, 0x3e, 0xbc, 0x92, 0xd3, 0xf5, 0xf5, 0xd3, 0x87, 0x57, - 0x2e, 0x67, 0x06, 0x60, 0xa6, 0x25, 0xd6, 0xaf, 0x06, 0xfc, 0xbf, 0xc3, 0x83, 0xeb, 0xbe, 0xaf, - 0x2a, 0xf9, 0xbe, 0xbe, 0xf4, 0x88, 0x56, 0xbd, 0x0d, 0x0b, 0x24, 0x62, 0x63, 0x2a, 0xa4, 0x43, - 0x47, 0x50, 0xa5, 0xc3, 0x73, 0xa2, 0x4a, 0x79, 0x51, 0x6f, 0xcd, 0x10, 0x55, 0x9f, 0x16, 0x95, - 0xa7, 0x6d, 0x7d, 0x59, 0x84, 0x33, 0x52, 0x2c, 0xf5, 0xef, 0xb1, 0x1b, 0xba, 0x06, 0xe6, 0x4b, - 0xb0, 0xc0, 0x91, 0xfa, 0x18, 0x6b, 0x11, 0x7a, 0x65, 0x9a, 0x50, 0xf6, 0x91, 0x0b, 0x5d, 0x5d, - 0xf9, 0x3f, 0xa3, 0xa8, 0x34, 0x9f, 0xa2, 0xf7, 0x00, 0x54, 0x7b, 0xb8, 0x7d, 0xc4, 0xa3, 0x16, - 0xb9, 0xa2, 0x8e, 0x6c, 0x21, 0x1e, 0x56, 0xe6, 0x37, 0x12, 0x47, 0x34, 0xf1, 0xc4, 0x89, 0x8b, - 0xf9, 0xf2, 0x66, 0x15, 0x5b, 0xd7, 0xf4, 0x18, 0x64, 0xc1, 0x2e, 0xf2, 0x11, 0xa3, 0x1c, 0xcd, - 0x06, 0x54, 0x7b, 0x44, 0x78, 0x03, 0x97, 0x32, 0xea, 0xa9, 0x49, 0x2d, 0x77, 0x41, 0x42, 0x37, - 0x13, 0xc4, 0xfa, 0xc1, 0x80, 0x73, 0x1d, 0x1e, 0xb4, 0x08, 0xf5, 0x70, 0x98, 0xf3, 0x72, 0x15, - 0x16, 0x45, 0x4c, 0x28, 0x27, 0x5e, 0x32, 0xb7, 0x6e, 0xe8, 0xeb, 0xf3, 0xa7, 0x32, 0x68, 0xdb, - 0xcf, 0x58, 0x5e, 0x9c, 0xb2, 0xfc, 0x90, 0xba, 0x6f, 0xe4, 0x54, 0x5a, 0xd3, 0x2a, 0x0f, 0x62, - 0x64, 0xfd, 0x52, 0x84, 0xd3, 0x1d, 0x1e, 0x74, 0xf1, 0xb3, 0x31, 0x72, 0xd1, 0x4c, 0x64, 0xcc, - 0xac, 0xf8, 0x12, 0x1c, 0xf3, 0x91, 0xb2, 0x48, 0xb3, 0x52, 0x0b, 0xf3, 0x23, 0xa8, 0x46, 0x21, - 0x0d, 0xa3, 0x71, 0x24, 0x6b, 0x27, 0x59, 0x35, 0x5f, 0x4f, 0x0a, 0xf4, 0xc7, 0x93, 0xc6, 0x59, - 0x55, 0x42, 0xee, 0xdf, 0xb7, 0x43, 0xe6, 0x44, 0x44, 0x0c, 0xec, 0x36, 0x15, 0xbf, 0xfd, 0x74, - 0x15, 0x74, 0x6d, 0xdb, 0x54, 0x74, 0x41, 0x9f, 0x4f, 0x0a, 0xd9, 0x80, 0x6a, 0x1f, 0xd1, 0x8d, - 0xd1, 0xc3, 0x70, 0x3b, 0x7d, 0x62, 0x41, 0x1f, 0xb1, 0xab, 0x90, 0x43, 0x2a, 0x6d, 0x6e, 0xc1, - 0x89, 0xa4, 0x5d, 0x24, 0x95, 0x85, 0xf9, 0xa9, 0x1c, 0x4f, 0x0e, 0x6f, 0x21, 0x6e, 0x5e, 0xc9, - 0x79, 0xb9, 0x3c, 0xed, 0x65, 0xd6, 0x2f, 0x6b, 0x53, 0x16, 0x3c, 0x0b, 0x1d, 0xbd, 0x5b, 0xfe, - 0x36, 0x60, 0xa9, 0xc3, 0x83, 0x36, 0xf5, 0x62, 0x24, 0x1c, 0x9b, 0x33, 0x3a, 0xda, 0xc8, 0xeb, - 0x7c, 0xbe, 0x93, 0x8a, 0xff, 0xdd, 0x49, 0xa5, 0xa9, 0x52, 0xde, 0x80, 0x45, 0xe2, 0xfb, 0xee, - 0xfc, 0x33, 0x77, 0x92, 0xf8, 0xfe, 0x3e, 0xc9, 0xcd, 0xf5, 0x9c, 0x4b, 0x8d, 0x69, 0x97, 0x9e, - 0x53, 0x55, 0x33, 0xac, 0x97, 0xe1, 0x42, 0x87, 0x07, 0xea, 0xc1, 0x73, 0x17, 0x45, 0x8b, 0xd1, - 0x7e, 0x18, 0x47, 0xa9, 0x61, 0x9b, 0xc5, 0x9a, 0x61, 0x5d, 0x52, 0x03, 0xa4, 0x76, 0xa6, 0xfc, - 0x94, 0xdb, 0x16, 0x5c, 0xec, 0xf0, 0x40, 0xe5, 0x6c, 0x91, 0xe1, 0xf0, 0xa0, 0x14, 0x9f, 0x42, - 0x55, 0x05, 0xdc, 0x63, 0xf7, 0x91, 0xca, 0x17, 0x6b, 0xf2, 0x67, 0xff, 0xc5, 0x9a, 0xa2, 0x07, - 0xf4, 0x73, 0x03, 0xaa, 0xde, 0x80, 0x50, 0x8a, 0x43, 0x37, 0xec, 0x79, 0xda, 0x37, 0xd0, 0x50, - 0xbb, 0xe7, 0xc9, 0xfc, 0xff, 0x18, 0x50, 0x91, 0xcc, 0xb6, 0x10, 0xe5, 0xab, 0x51, 0x66, 0x74, - 0x3d, 0x46, 0x45, 0x4c, 0x3c, 0x91, 0x3e, 0xef, 0x25, 0xda, 0xd2, 0xa0, 0xf9, 0x21, 0x80, 0x60, - 0x82, 0x0c, 0x13, 0xbf, 0xf5, 0x5b, 0x71, 0xbe, 0xee, 0xac, 0xc8, 0xe3, 0xf2, 0xca, 0x0b, 0xa0, - 0x16, 0xae, 0x98, 0xa8, 0xd7, 0x66, 0xb9, 0x7b, 0x42, 0x02, 0xf7, 0x26, 0xdc, 0xbc, 0x09, 0x27, - 0xd5, 0xa6, 0x7e, 0x18, 0x97, 0xe7, 0xbf, 0xaa, 0x2a, 0x13, 0x5c, 0x97, 0xe7, 0xa5, 0xe2, 0xcf, - 0x0d, 0xa8, 0x76, 0x42, 0x9a, 0x8a, 0x3e, 0xaa, 0xe6, 0xec, 0x3c, 0x16, 0x5f, 0x60, 0x1e, 0x13, - 0x0a, 0xdf, 0x18, 0xb0, 0x74, 0x67, 0x8c, 0xf1, 0x4e, 0x4a, 0x42, 0x8f, 0xdc, 0x61, 0xb3, 0x72, - 0x07, 0x16, 0xa3, 0x90, 0xba, 0x6a, 0x10, 0xb5, 0xf7, 0xa5, 0xb5, 0xea, 0xc6, 0xea, 0xec, 0x8f, - 0xbc, 0x8c, 0xd2, 0xb4, 0xf1, 0xa3, 0x67, 0x10, 0x97, 0x74, 0x5c, 0x38, 0x9b, 0x63, 0xa3, 0x87, - 0xbe, 0x09, 0x90, 0xb9, 0xcb, 0x90, 0x77, 0xbd, 0x32, 0xfb, 0xae, 0xfd, 0xac, 0xdd, 0x4a, 0x2f, - 0x7b, 0x41, 0xf3, 0x83, 0x47, 0xbb, 0x75, 0xe3, 0xf1, 0x6e, 0xdd, 0xf8, 0x73, 0xb7, 0x6e, 0x7c, - 0xbb, 0x57, 0x2f, 0x3c, 0xde, 0xab, 0x17, 0x7e, 0xdf, 0xab, 0x17, 0x3e, 0xb9, 0x1a, 0x84, 0x62, - 0x30, 0xee, 0xd9, 0x1e, 0x8b, 0x9c, 0xd1, 0x98, 0xfa, 0x21, 0x09, 0x9d, 0xfe, 0xe4, 0xaa, 0xc7, - 0x62, 0x74, 0x26, 0xd9, 0x8f, 0x77, 0xf9, 0xe5, 0xde, 0x5b, 0x90, 0x5f, 0xcf, 0x6f, 0xfe, 0x1b, - 0x00, 0x00, 0xff, 0xff, 0x96, 0xd4, 0x93, 0x63, 0x23, 0x0c, 0x00, 0x00, -} - -func (m *InitCrossChainParamsProposal) 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 *InitCrossChainParamsProposal) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *InitCrossChainParamsProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0x22 - } - if m.Params != nil { - { - size, err := m.Params.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - } - if len(m.Description) > 0 { - i -= len(m.Description) - copy(dAtA[i:], m.Description) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Description))) - i-- - dAtA[i] = 0x12 - } - if len(m.Title) > 0 { - i -= len(m.Title) - copy(dAtA[i:], m.Title) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Title))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *UpdateChainOraclesProposal) 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 *UpdateChainOraclesProposal) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *UpdateChainOraclesProposal) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0x22 - } - if len(m.Oracles) > 0 { - for iNdEx := len(m.Oracles) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Oracles[iNdEx]) - copy(dAtA[i:], m.Oracles[iNdEx]) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Oracles[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(m.Description) > 0 { - i -= len(m.Description) - copy(dAtA[i:], m.Description) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Description))) - i-- - dAtA[i] = 0x12 - } - if len(m.Title) > 0 { - i -= len(m.Title) - copy(dAtA[i:], m.Title) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Title))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgSetOrchestratorAddress) 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 *MsgSetOrchestratorAddress) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgSetOrchestratorAddress) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0x2a - } - { - size, err := m.Deposit.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - if len(m.ExternalAddress) > 0 { - i -= len(m.ExternalAddress) - copy(dAtA[i:], m.ExternalAddress) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ExternalAddress))) - i-- - dAtA[i] = 0x1a - } - if len(m.BridgerAddress) > 0 { - i -= len(m.BridgerAddress) - copy(dAtA[i:], m.BridgerAddress) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.BridgerAddress))) - i-- - dAtA[i] = 0x12 - } - if len(m.OracleAddress) > 0 { - i -= len(m.OracleAddress) - copy(dAtA[i:], m.OracleAddress) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.OracleAddress))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgAddOracleDeposit) 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 *MsgAddOracleDeposit) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgAddOracleDeposit) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0x1a - } - { - size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - if len(m.OracleAddress) > 0 { - i -= len(m.OracleAddress) - copy(dAtA[i:], m.OracleAddress) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.OracleAddress))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgSendToExternal) 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 *MsgSendToExternal) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgSendToExternal) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0x2a - } - { - size, err := m.BridgeFee.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - { - size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - if len(m.Dest) > 0 { - i -= len(m.Dest) - copy(dAtA[i:], m.Dest) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Dest))) - i-- - dAtA[i] = 0x12 - } - if len(m.Sender) > 0 { - i -= len(m.Sender) - copy(dAtA[i:], m.Sender) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Sender))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgSendToExternalResponse) 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 *MsgSendToExternalResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgSendToExternalResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.BatchNonce != 0 { - i = encodeVarintLegacy(dAtA, i, uint64(m.BatchNonce)) - i-- - dAtA[i] = 0x8 - } - return len(dAtA) - i, nil -} - -func (m *MsgCancelSendToExternal) 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 *MsgCancelSendToExternal) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgCancelSendToExternal) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0x1a - } - if len(m.Sender) > 0 { - i -= len(m.Sender) - copy(dAtA[i:], m.Sender) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Sender))) - i-- - dAtA[i] = 0x12 - } - if m.TransactionId != 0 { - i = encodeVarintLegacy(dAtA, i, uint64(m.TransactionId)) - i-- - dAtA[i] = 0x8 - } - return len(dAtA) - i, nil -} - -func (m *MsgRequestBatch) 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 *MsgRequestBatch) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgRequestBatch) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size := m.BaseFee.Size() - i -= size - if _, err := m.BaseFee.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0x2a - } - if len(m.FeeReceive) > 0 { - i -= len(m.FeeReceive) - copy(dAtA[i:], m.FeeReceive) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.FeeReceive))) - i-- - dAtA[i] = 0x22 - } - { - size := m.MinimumFee.Size() - i -= size - if _, err := m.MinimumFee.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1a - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0x12 - } - if len(m.Sender) > 0 { - i -= len(m.Sender) - copy(dAtA[i:], m.Sender) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Sender))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgRequestBatchResponse) 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 *MsgRequestBatchResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgRequestBatchResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.BatchNonce != 0 { - i = encodeVarintLegacy(dAtA, i, uint64(m.BatchNonce)) - i-- - dAtA[i] = 0x8 - } - return len(dAtA) - i, nil -} - -func (m *MsgIncreaseBridgeFee) 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 *MsgIncreaseBridgeFee) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgIncreaseBridgeFee) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.AddBridgeFee.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - if len(m.Sender) > 0 { - i -= len(m.Sender) - copy(dAtA[i:], m.Sender) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Sender))) - i-- - dAtA[i] = 0x1a - } - if m.TransactionId != 0 { - i = encodeVarintLegacy(dAtA, i, uint64(m.TransactionId)) - i-- - dAtA[i] = 0x10 - } - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MsgOracleSetConfirmResponse) 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 *MsgOracleSetConfirmResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgOracleSetConfirmResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *MsgConfirmBatchResponse) 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 *MsgConfirmBatchResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgConfirmBatchResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *MsgBridgeCallConfirmResponse) 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 *MsgBridgeCallConfirmResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgBridgeCallConfirmResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} - -func (m *BridgeToken) 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 *BridgeToken) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *BridgeToken) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.ChannelIbc) > 0 { - i -= len(m.ChannelIbc) - copy(dAtA[i:], m.ChannelIbc) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChannelIbc))) - i-- - dAtA[i] = 0x1a - } - if len(m.Denom) > 0 { - i -= len(m.Denom) - copy(dAtA[i:], m.Denom) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Denom))) - i-- - dAtA[i] = 0x12 - } - if len(m.Token) > 0 { - i -= len(m.Token) - copy(dAtA[i:], m.Token) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.Token))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *BatchFees) 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 *BatchFees) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *BatchFees) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size := m.TotalAmount.Size() - i -= size - if _, err := m.TotalAmount.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 - if m.TotalTxs != 0 { - i = encodeVarintLegacy(dAtA, i, uint64(m.TotalTxs)) - i-- - dAtA[i] = 0x18 - } - { - size := m.TotalFees.Size() - i -= size - if _, err := m.TotalFees.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - if len(m.TokenContract) > 0 { - i -= len(m.TokenContract) - copy(dAtA[i:], m.TokenContract) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.TokenContract))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *MinBatchFee) 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 *MinBatchFee) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MinBatchFee) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size := m.BaseFee.Size() - i -= size - if _, err := m.BaseFee.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - if len(m.TokenContract) > 0 { - i -= len(m.TokenContract) - copy(dAtA[i:], m.TokenContract) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.TokenContract))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *QueryBatchFeeRequest) 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 *QueryBatchFeeRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryBatchFeeRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.MinBatchFees) > 0 { - for iNdEx := len(m.MinBatchFees) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.MinBatchFees[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x12 - } - } - if len(m.ChainName) > 0 { - i -= len(m.ChainName) - copy(dAtA[i:], m.ChainName) - i = encodeVarintLegacy(dAtA, i, uint64(len(m.ChainName))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *QueryBatchFeeResponse) 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 *QueryBatchFeeResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *QueryBatchFeeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.BatchFees) > 0 { - for iNdEx := len(m.BatchFees) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.BatchFees[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLegacy(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - } - return len(dAtA) - i, nil -} - -func encodeVarintLegacy(dAtA []byte, offset int, v uint64) int { - offset -= sovLegacy(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base -} -func (m *InitCrossChainParamsProposal) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Title) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.Description) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - if m.Params != nil { - l = m.Params.Size() - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - return n -} - -func (m *UpdateChainOraclesProposal) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Title) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.Description) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - if len(m.Oracles) > 0 { - for _, s := range m.Oracles { - l = len(s) - n += 1 + l + sovLegacy(uint64(l)) - } - } - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - return n -} - -func (m *MsgSetOrchestratorAddress) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.OracleAddress) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.BridgerAddress) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.ExternalAddress) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = m.Deposit.Size() - n += 1 + l + sovLegacy(uint64(l)) - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - return n -} - -func (m *MsgAddOracleDeposit) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.OracleAddress) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = m.Amount.Size() - n += 1 + l + sovLegacy(uint64(l)) - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - return n -} - -func (m *MsgSendToExternal) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Sender) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.Dest) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = m.Amount.Size() - n += 1 + l + sovLegacy(uint64(l)) - l = m.BridgeFee.Size() - n += 1 + l + sovLegacy(uint64(l)) - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - return n -} - -func (m *MsgSendToExternalResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BatchNonce != 0 { - n += 1 + sovLegacy(uint64(m.BatchNonce)) - } - return n -} - -func (m *MsgCancelSendToExternal) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TransactionId != 0 { - n += 1 + sovLegacy(uint64(m.TransactionId)) - } - l = len(m.Sender) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - return n -} - -func (m *MsgRequestBatch) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Sender) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.Denom) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = m.MinimumFee.Size() - n += 1 + l + sovLegacy(uint64(l)) - l = len(m.FeeReceive) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = m.BaseFee.Size() - n += 1 + l + sovLegacy(uint64(l)) - return n -} - -func (m *MsgRequestBatchResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.BatchNonce != 0 { - n += 1 + sovLegacy(uint64(m.BatchNonce)) - } - return n -} - -func (m *MsgIncreaseBridgeFee) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - if m.TransactionId != 0 { - n += 1 + sovLegacy(uint64(m.TransactionId)) - } - l = len(m.Sender) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = m.AddBridgeFee.Size() - n += 1 + l + sovLegacy(uint64(l)) - return n -} - -func (m *MsgOracleSetConfirmResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *MsgConfirmBatchResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *MsgBridgeCallConfirmResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *BridgeToken) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Token) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.Denom) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = len(m.ChannelIbc) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - return n -} - -func (m *BatchFees) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.TokenContract) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = m.TotalFees.Size() - n += 1 + l + sovLegacy(uint64(l)) - if m.TotalTxs != 0 { - n += 1 + sovLegacy(uint64(m.TotalTxs)) - } - l = m.TotalAmount.Size() - n += 1 + l + sovLegacy(uint64(l)) - return n -} - -func (m *MinBatchFee) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.TokenContract) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - l = m.BaseFee.Size() - n += 1 + l + sovLegacy(uint64(l)) - return n -} - -func (m *QueryBatchFeeRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovLegacy(uint64(l)) - } - if len(m.MinBatchFees) > 0 { - for _, e := range m.MinBatchFees { - l = e.Size() - n += 1 + l + sovLegacy(uint64(l)) - } - } - return n -} - -func (m *QueryBatchFeeResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.BatchFees) > 0 { - for _, e := range m.BatchFees { - l = e.Size() - n += 1 + l + sovLegacy(uint64(l)) - } - } - return n -} - -func sovLegacy(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozLegacy(x uint64) (n int) { - return sovLegacy(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (m *InitCrossChainParamsProposal) 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 ErrIntOverflowLegacy - } - 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: InitCrossChainParamsProposal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: InitCrossChainParamsProposal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Title = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Description = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Params == nil { - m.Params = &Params{} - } - if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *UpdateChainOraclesProposal) 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 ErrIntOverflowLegacy - } - 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: UpdateChainOraclesProposal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: UpdateChainOraclesProposal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Title", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Title = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Description = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Oracles", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Oracles = append(m.Oracles, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgSetOrchestratorAddress) 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 ErrIntOverflowLegacy - } - 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: MsgSetOrchestratorAddress: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgSetOrchestratorAddress: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OracleAddress", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.OracleAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BridgerAddress", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BridgerAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExternalAddress", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ExternalAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Deposit", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Deposit.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgAddOracleDeposit) 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 ErrIntOverflowLegacy - } - 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: MsgAddOracleDeposit: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAddOracleDeposit: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OracleAddress", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.OracleAddress = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgSendToExternal) 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 ErrIntOverflowLegacy - } - 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: MsgSendToExternal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgSendToExternal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Dest", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Dest = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BridgeFee", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.BridgeFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgSendToExternalResponse) 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 ErrIntOverflowLegacy - } - 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: MsgSendToExternalResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgSendToExternalResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field BatchNonce", wireType) - } - m.BatchNonce = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.BatchNonce |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgCancelSendToExternal) 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 ErrIntOverflowLegacy - } - 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: MsgCancelSendToExternal: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgCancelSendToExternal: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TransactionId", wireType) - } - m.TransactionId = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TransactionId |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgRequestBatch) 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 ErrIntOverflowLegacy - } - 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: MsgRequestBatch: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgRequestBatch: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Denom = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MinimumFee", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.MinimumFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FeeReceive", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.FeeReceive = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BaseFee", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.BaseFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgRequestBatchResponse) 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 ErrIntOverflowLegacy - } - 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: MsgRequestBatchResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgRequestBatchResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field BatchNonce", wireType) - } - m.BatchNonce = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.BatchNonce |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgIncreaseBridgeFee) 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 ErrIntOverflowLegacy - } - 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: MsgIncreaseBridgeFee: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgIncreaseBridgeFee: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TransactionId", wireType) - } - m.TransactionId = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TransactionId |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sender", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Sender = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AddBridgeFee", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.AddBridgeFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgOracleSetConfirmResponse) 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 ErrIntOverflowLegacy - } - 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: MsgOracleSetConfirmResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgOracleSetConfirmResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgConfirmBatchResponse) 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 ErrIntOverflowLegacy - } - 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: MsgConfirmBatchResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgConfirmBatchResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgBridgeCallConfirmResponse) 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 ErrIntOverflowLegacy - } - 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: MsgBridgeCallConfirmResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgBridgeCallConfirmResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *BridgeToken) 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 ErrIntOverflowLegacy - } - 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: BridgeToken: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: BridgeToken: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Token", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Token = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Denom = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChannelIbc", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChannelIbc = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *BatchFees) 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 ErrIntOverflowLegacy - } - 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: BatchFees: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: BatchFees: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TokenContract", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.TokenContract = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TotalFees", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.TotalFees.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TotalTxs", wireType) - } - m.TotalTxs = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TotalTxs |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TotalAmount", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.TotalAmount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MinBatchFee) 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 ErrIntOverflowLegacy - } - 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: MinBatchFee: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MinBatchFee: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TokenContract", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.TokenContract = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BaseFee", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.BaseFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryBatchFeeRequest) 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 ErrIntOverflowLegacy - } - 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: QueryBatchFeeRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBatchFeeRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChainName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - 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 ErrInvalidLengthLegacy - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChainName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MinBatchFees", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.MinBatchFees = append(m.MinBatchFees, MinBatchFee{}) - if err := m.MinBatchFees[len(m.MinBatchFees)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *QueryBatchFeeResponse) 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 ErrIntOverflowLegacy - } - 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: QueryBatchFeeResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: QueryBatchFeeResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BatchFees", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLegacy - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLegacy - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLegacy - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BatchFees = append(m.BatchFees, &BatchFees{}) - if err := m.BatchFees[len(m.BatchFees)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLegacy(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLegacy - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func skipLegacy(dAtA []byte) (n int, err error) { - l := len(dAtA) - iNdEx := 0 - depth := 0 - for iNdEx < l { - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowLegacy - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - wireType := int(wire & 0x7) - switch wireType { - case 0: - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowLegacy - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - iNdEx++ - if dAtA[iNdEx-1] < 0x80 { - break - } - } - case 1: - iNdEx += 8 - case 2: - var length int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowLegacy - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - length |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if length < 0 { - return 0, ErrInvalidLengthLegacy - } - iNdEx += length - case 3: - depth++ - case 4: - if depth == 0 { - return 0, ErrUnexpectedEndOfGroupLegacy - } - depth-- - case 5: - iNdEx += 4 - default: - return 0, fmt.Errorf("proto: illegal wireType %d", wireType) - } - if iNdEx < 0 { - return 0, ErrInvalidLengthLegacy - } - if depth == 0 { - return iNdEx, nil - } - } - return 0, io.ErrUnexpectedEOF -} - -var ( - ErrInvalidLengthLegacy = fmt.Errorf("proto: negative length found during unmarshaling") - ErrIntOverflowLegacy = fmt.Errorf("proto: integer overflow") - ErrUnexpectedEndOfGroupLegacy = fmt.Errorf("proto: unexpected end of group") -) diff --git a/x/crosschain/types/msgs.go b/x/crosschain/types/msgs.go index aa86bbd7..7c709043 100644 --- a/x/crosschain/types/msgs.go +++ b/x/crosschain/types/msgs.go @@ -34,10 +34,7 @@ var ( _ CrosschainMsg = &MsgBridgeTokenClaim{} _ CrosschainMsg = &MsgSendToFxClaim{} _ CrosschainMsg = &MsgSendToExternal{} - _ CrosschainMsg = &MsgCancelSendToExternal{} - _ CrosschainMsg = &MsgIncreaseBridgeFee{} _ CrosschainMsg = &MsgSendToExternalClaim{} - _ CrosschainMsg = &MsgRequestBatch{} _ CrosschainMsg = &MsgConfirmBatch{} _ CrosschainMsg = &MsgBridgeCallClaim{} _ CrosschainMsg = &MsgBridgeCallConfirm{} @@ -46,32 +43,6 @@ var ( _ CrosschainMsg = &MsgUpdateChainOracles{} ) -var ( - _ sdk.Msg = &MsgBondedOracle{} - _ sdk.Msg = &MsgAddDelegate{} - _ sdk.Msg = &MsgReDelegate{} - _ sdk.Msg = &MsgEditBridger{} - _ sdk.Msg = &MsgWithdrawReward{} - _ sdk.Msg = &MsgUnbondedOracle{} - _ sdk.Msg = &MsgOracleSetConfirm{} - _ sdk.Msg = &MsgOracleSetUpdatedClaim{} - _ sdk.Msg = &MsgBridgeTokenClaim{} - _ sdk.Msg = &MsgSendToFxClaim{} - _ sdk.Msg = &MsgSendToExternal{} - _ sdk.Msg = &MsgCancelSendToExternal{} - _ sdk.Msg = &MsgIncreaseBridgeFee{} - _ sdk.Msg = &MsgSendToExternalClaim{} - _ sdk.Msg = &MsgRequestBatch{} - _ sdk.Msg = &MsgConfirmBatch{} - _ sdk.Msg = &MsgBridgeCallClaim{} - _ sdk.Msg = &MsgBridgeCallConfirm{} - _ sdk.Msg = &MsgBridgeCallResultClaim{} - _ sdk.Msg = &MsgUpdateParams{} - _ sdk.Msg = &MsgUpdateChainOracles{} - _ sdk.Msg = &MsgClaim{} - _ sdk.Msg = &MsgConfirm{} -) - var ( _ codectypes.UnpackInterfacesMessage = &MsgClaim{} _ codectypes.UnpackInterfacesMessage = &MsgConfirm{} diff --git a/x/crosschain/types/msgs_test.go b/x/crosschain/types/msgs_test.go index 87f87b3f..461f9f9e 100644 --- a/x/crosschain/types/msgs_test.go +++ b/x/crosschain/types/msgs_test.go @@ -1446,103 +1446,6 @@ func TestMsgConfirmBatch_ValidateBasic(t *testing.T) { } } -func TestUpdateChainOraclesProposal_ValidateBasic(t *testing.T) { - moduleName := getRandModule() - normalOracleAddress := sdk.AccAddress(tmrand.Bytes(20)).String() - randomAddrPrefix := strings.ToLower(tmrand.Str(5)) - errPrefixAddress, err := bech32.ConvertAndEncode(randomAddrPrefix, tmrand.Bytes(20)) - require.NoError(t, err) - - testCases := []struct { - testName string - msg *types.UpdateChainOraclesProposal - expectPass bool - err error - errReason string - }{ - { - testName: "err - empty chain name", - msg: &types.UpdateChainOraclesProposal{ - ChainName: "", - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: "unrecognized crosschain name: invalid request", - }, - { - testName: "err - empty oracle", - msg: &types.UpdateChainOraclesProposal{ - ChainName: moduleName, - Title: tmrand.Str(20), - Description: tmrand.Str(20), - }, - expectPass: false, - err: sdkerrors.ErrInvalidRequest, - errReason: fmt.Sprintf("empty oracles: %s", sdkerrors.ErrInvalidRequest), - }, - { - testName: "err external address", - msg: &types.UpdateChainOraclesProposal{ - ChainName: moduleName, - Title: tmrand.Str(20), - Description: tmrand.Str(20), - Oracles: []string{ - strings.ToUpper(errPrefixAddress), - }, - }, - expectPass: false, - err: sdkerrors.ErrInvalidAddress, - errReason: fmt.Sprintf("invalid oracle address: invalid Bech32 prefix; expected %s, got %s: %s", - sdk.Bech32MainPrefix, randomAddrPrefix, sdkerrors.ErrInvalidAddress.Error()), - }, - { - testName: "err - duplicate oracle", - msg: &types.UpdateChainOraclesProposal{ - ChainName: moduleName, - Title: "test title", - Description: "test description", - Oracles: []string{ - normalOracleAddress, - normalOracleAddress, - }, - }, - expectPass: false, - err: sdkerrors.ErrInvalidAddress, - errReason: fmt.Sprintf("duplicate oracle address: %s: invalid address", normalOracleAddress), - }, - { - testName: "success", - msg: &types.UpdateChainOraclesProposal{ - ChainName: moduleName, - Title: "test title", - Description: "test description", - Oracles: []string{ - normalOracleAddress, - }, - }, - expectPass: true, - err: nil, - errReason: "", - }, - } - - for _, testCase := range testCases { - t.Run(testCase.testName, func(t *testing.T) { - err = testCase.msg.ValidateBasic() - if testCase.expectPass { - require.NoError(t, err) - } else { - require.Error(t, err) - require.ErrorIs(t, err, testCase.err, "%+v", testCase.msg) - if moduleName == trontypes.ModuleName && strings.Contains(testCase.errReason, "mismatch expected") { - testCase.errReason = strings.Split(testCase.errReason, ":")[0] + tronAddressErr - } - require.EqualValuesf(t, testCase.errReason, err.Error(), "%+v", testCase.msg) - } - }) - } -} - func TestMsgBridgeCallConfirm_ValidateBasic(t *testing.T) { moduleName := getRandModule() normalBridgeAddress := sdk.AccAddress(tmrand.Bytes(20)).String() diff --git a/x/crosschain/types/query.pb.go b/x/crosschain/types/query.pb.go index b4dbd629..4bc21f21 100644 --- a/x/crosschain/types/query.pb.go +++ b/x/crosschain/types/query.pb.go @@ -2266,6 +2266,58 @@ func (m *QueryBridgeTokensResponse) GetBridgeTokens() []*BridgeToken { return nil } +type BridgeToken struct { + Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` + Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` +} + +func (m *BridgeToken) Reset() { *m = BridgeToken{} } +func (m *BridgeToken) String() string { return proto.CompactTextString(m) } +func (*BridgeToken) ProtoMessage() {} +func (*BridgeToken) Descriptor() ([]byte, []int) { + return fileDescriptor_210db95ef9589dec, []int{46} +} +func (m *BridgeToken) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *BridgeToken) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_BridgeToken.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 *BridgeToken) XXX_Merge(src proto.Message) { + xxx_messageInfo_BridgeToken.Merge(m, src) +} +func (m *BridgeToken) XXX_Size() int { + return m.Size() +} +func (m *BridgeToken) XXX_DiscardUnknown() { + xxx_messageInfo_BridgeToken.DiscardUnknown(m) +} + +var xxx_messageInfo_BridgeToken proto.InternalMessageInfo + +func (m *BridgeToken) GetToken() string { + if m != nil { + return m.Token + } + return "" +} + +func (m *BridgeToken) GetDenom() string { + if m != nil { + return m.Denom + } + return "" +} + type QueryBridgeCoinByDenomRequest struct { ChainName string `protobuf:"bytes,1,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` Denom string `protobuf:"bytes,2,opt,name=denom,proto3" json:"denom,omitempty"` @@ -2275,7 +2327,7 @@ func (m *QueryBridgeCoinByDenomRequest) Reset() { *m = QueryBridgeCoinBy func (m *QueryBridgeCoinByDenomRequest) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCoinByDenomRequest) ProtoMessage() {} func (*QueryBridgeCoinByDenomRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{46} + return fileDescriptor_210db95ef9589dec, []int{47} } func (m *QueryBridgeCoinByDenomRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2326,7 +2378,7 @@ func (m *QueryBridgeCoinByDenomResponse) Reset() { *m = QueryBridgeCoinB func (m *QueryBridgeCoinByDenomResponse) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCoinByDenomResponse) ProtoMessage() {} func (*QueryBridgeCoinByDenomResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{47} + return fileDescriptor_210db95ef9589dec, []int{48} } func (m *QueryBridgeCoinByDenomResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2369,7 +2421,7 @@ func (m *QueryBridgeChainListRequest) Reset() { *m = QueryBridgeChainLis func (m *QueryBridgeChainListRequest) String() string { return proto.CompactTextString(m) } func (*QueryBridgeChainListRequest) ProtoMessage() {} func (*QueryBridgeChainListRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{48} + return fileDescriptor_210db95ef9589dec, []int{49} } func (m *QueryBridgeChainListRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2406,7 +2458,7 @@ func (m *QueryBridgeChainListResponse) Reset() { *m = QueryBridgeChainLi func (m *QueryBridgeChainListResponse) String() string { return proto.CompactTextString(m) } func (*QueryBridgeChainListResponse) ProtoMessage() {} func (*QueryBridgeChainListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{49} + return fileDescriptor_210db95ef9589dec, []int{50} } func (m *QueryBridgeChainListResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2451,7 +2503,7 @@ func (m *QueryBridgeCallsRequest) Reset() { *m = QueryBridgeCallsRequest func (m *QueryBridgeCallsRequest) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallsRequest) ProtoMessage() {} func (*QueryBridgeCallsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{50} + return fileDescriptor_210db95ef9589dec, []int{51} } func (m *QueryBridgeCallsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2503,7 +2555,7 @@ func (m *QueryBridgeCallsResponse) Reset() { *m = QueryBridgeCallsRespon func (m *QueryBridgeCallsResponse) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallsResponse) ProtoMessage() {} func (*QueryBridgeCallsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{51} + return fileDescriptor_210db95ef9589dec, []int{52} } func (m *QueryBridgeCallsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2555,7 +2607,7 @@ func (m *QueryBridgeCallByNonceRequest) Reset() { *m = QueryBridgeCallBy func (m *QueryBridgeCallByNonceRequest) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallByNonceRequest) ProtoMessage() {} func (*QueryBridgeCallByNonceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{52} + return fileDescriptor_210db95ef9589dec, []int{53} } func (m *QueryBridgeCallByNonceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2606,7 +2658,7 @@ func (m *QueryBridgeCallByNonceResponse) Reset() { *m = QueryBridgeCallB func (m *QueryBridgeCallByNonceResponse) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallByNonceResponse) ProtoMessage() {} func (*QueryBridgeCallByNonceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{53} + return fileDescriptor_210db95ef9589dec, []int{54} } func (m *QueryBridgeCallByNonceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2651,7 +2703,7 @@ func (m *QueryBridgeCallBySenderRequest) Reset() { *m = QueryBridgeCallB func (m *QueryBridgeCallBySenderRequest) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallBySenderRequest) ProtoMessage() {} func (*QueryBridgeCallBySenderRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{54} + return fileDescriptor_210db95ef9589dec, []int{55} } func (m *QueryBridgeCallBySenderRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2702,7 +2754,7 @@ func (m *QueryBridgeCallBySenderResponse) Reset() { *m = QueryBridgeCall func (m *QueryBridgeCallBySenderResponse) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallBySenderResponse) ProtoMessage() {} func (*QueryBridgeCallBySenderResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{55} + return fileDescriptor_210db95ef9589dec, []int{56} } func (m *QueryBridgeCallBySenderResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2747,7 +2799,7 @@ func (m *QueryBridgeCallConfirmByNonceRequest) Reset() { *m = QueryBridg func (m *QueryBridgeCallConfirmByNonceRequest) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallConfirmByNonceRequest) ProtoMessage() {} func (*QueryBridgeCallConfirmByNonceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{56} + return fileDescriptor_210db95ef9589dec, []int{57} } func (m *QueryBridgeCallConfirmByNonceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2799,7 +2851,7 @@ func (m *QueryBridgeCallConfirmByNonceResponse) Reset() { *m = QueryBrid func (m *QueryBridgeCallConfirmByNonceResponse) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallConfirmByNonceResponse) ProtoMessage() {} func (*QueryBridgeCallConfirmByNonceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{57} + return fileDescriptor_210db95ef9589dec, []int{58} } func (m *QueryBridgeCallConfirmByNonceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2853,7 +2905,7 @@ func (m *QueryLastPendingBridgeCallByAddrRequest) Reset() { func (m *QueryLastPendingBridgeCallByAddrRequest) String() string { return proto.CompactTextString(m) } func (*QueryLastPendingBridgeCallByAddrRequest) ProtoMessage() {} func (*QueryLastPendingBridgeCallByAddrRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{58} + return fileDescriptor_210db95ef9589dec, []int{59} } func (m *QueryLastPendingBridgeCallByAddrRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2906,7 +2958,7 @@ func (m *QueryLastPendingBridgeCallByAddrResponse) Reset() { func (m *QueryLastPendingBridgeCallByAddrResponse) String() string { return proto.CompactTextString(m) } func (*QueryLastPendingBridgeCallByAddrResponse) ProtoMessage() {} func (*QueryLastPendingBridgeCallByAddrResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{59} + return fileDescriptor_210db95ef9589dec, []int{60} } func (m *QueryLastPendingBridgeCallByAddrResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2951,7 +3003,7 @@ func (m *QueryPendingExecuteClaimRequest) Reset() { *m = QueryPendingExe func (m *QueryPendingExecuteClaimRequest) String() string { return proto.CompactTextString(m) } func (*QueryPendingExecuteClaimRequest) ProtoMessage() {} func (*QueryPendingExecuteClaimRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{60} + return fileDescriptor_210db95ef9589dec, []int{61} } func (m *QueryPendingExecuteClaimRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3003,7 +3055,7 @@ func (m *QueryPendingExecuteClaimResponse) Reset() { *m = QueryPendingEx func (m *QueryPendingExecuteClaimResponse) String() string { return proto.CompactTextString(m) } func (*QueryPendingExecuteClaimResponse) ProtoMessage() {} func (*QueryPendingExecuteClaimResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{61} + return fileDescriptor_210db95ef9589dec, []int{62} } func (m *QueryPendingExecuteClaimResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3055,7 +3107,7 @@ func (m *QueryBridgeCallQuoteByNonceRequest) Reset() { *m = QueryBridgeC func (m *QueryBridgeCallQuoteByNonceRequest) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallQuoteByNonceRequest) ProtoMessage() {} func (*QueryBridgeCallQuoteByNonceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{62} + return fileDescriptor_210db95ef9589dec, []int{63} } func (m *QueryBridgeCallQuoteByNonceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3106,7 +3158,7 @@ func (m *QueryBridgeCallQuoteByNonceResponse) Reset() { *m = QueryBridge func (m *QueryBridgeCallQuoteByNonceResponse) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallQuoteByNonceResponse) ProtoMessage() {} func (*QueryBridgeCallQuoteByNonceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{63} + return fileDescriptor_210db95ef9589dec, []int{64} } func (m *QueryBridgeCallQuoteByNonceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3152,7 +3204,7 @@ func (m *QueryBridgeCallsByFeeReceiverRequest) Reset() { *m = QueryBridg func (m *QueryBridgeCallsByFeeReceiverRequest) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallsByFeeReceiverRequest) ProtoMessage() {} func (*QueryBridgeCallsByFeeReceiverRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{64} + return fileDescriptor_210db95ef9589dec, []int{65} } func (m *QueryBridgeCallsByFeeReceiverRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3211,7 +3263,7 @@ func (m *QueryBridgeCallsByFeeReceiverResponse) Reset() { *m = QueryBrid func (m *QueryBridgeCallsByFeeReceiverResponse) String() string { return proto.CompactTextString(m) } func (*QueryBridgeCallsByFeeReceiverResponse) ProtoMessage() {} func (*QueryBridgeCallsByFeeReceiverResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_210db95ef9589dec, []int{65} + return fileDescriptor_210db95ef9589dec, []int{66} } func (m *QueryBridgeCallsByFeeReceiverResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3301,6 +3353,7 @@ func init() { proto.RegisterType((*QueryProjectedBatchTimeoutHeightResponse)(nil), "fx.gravity.crosschain.v1.QueryProjectedBatchTimeoutHeightResponse") proto.RegisterType((*QueryBridgeTokensRequest)(nil), "fx.gravity.crosschain.v1.QueryBridgeTokensRequest") proto.RegisterType((*QueryBridgeTokensResponse)(nil), "fx.gravity.crosschain.v1.QueryBridgeTokensResponse") + proto.RegisterType((*BridgeToken)(nil), "fx.gravity.crosschain.v1.BridgeToken") proto.RegisterType((*QueryBridgeCoinByDenomRequest)(nil), "fx.gravity.crosschain.v1.QueryBridgeCoinByDenomRequest") proto.RegisterType((*QueryBridgeCoinByDenomResponse)(nil), "fx.gravity.crosschain.v1.QueryBridgeCoinByDenomResponse") proto.RegisterType((*QueryBridgeChainListRequest)(nil), "fx.gravity.crosschain.v1.QueryBridgeChainListRequest") @@ -3328,170 +3381,170 @@ func init() { } var fileDescriptor_210db95ef9589dec = []byte{ - // 2604 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5b, 0xcd, 0x6f, 0x14, 0xc9, - 0x15, 0xa7, 0xf8, 0x5c, 0x9e, 0xf1, 0xb2, 0x14, 0xde, 0xc5, 0x6e, 0xc0, 0xd8, 0x0d, 0xc6, 0x36, - 0xe0, 0x99, 0xb5, 0x21, 0x64, 0x61, 0x17, 0x58, 0xc6, 0xb0, 0x40, 0xc4, 0x2e, 0x30, 0x78, 0xa5, - 0x7c, 0x28, 0x19, 0x7a, 0x7a, 0x6a, 0xc6, 0xcd, 0x8e, 0xbb, 0x87, 0xee, 0x1e, 0x63, 0x2b, 0x89, - 0x14, 0xe5, 0x92, 0x48, 0xb9, 0x44, 0x8a, 0x14, 0xe5, 0x10, 0x25, 0x39, 0xe4, 0x98, 0x48, 0x89, - 0x84, 0x12, 0x29, 0xd2, 0x1e, 0xf6, 0xb6, 0xd9, 0x5c, 0x90, 0x56, 0x4a, 0x72, 0x8a, 0x36, 0x90, - 0x7f, 0x22, 0xb7, 0xa8, 0xab, 0x5e, 0x4f, 0x7f, 0x77, 0x57, 0xfb, 0x63, 0x95, 0x9b, 0xa7, 0xba, - 0xde, 0x7b, 0xbf, 0x5f, 0x55, 0xf5, 0xab, 0xd7, 0xef, 0x07, 0x70, 0xaa, 0xbd, 0x56, 0xed, 0xd8, - 0xda, 0xaa, 0xe1, 0xae, 0x57, 0x75, 0xdb, 0x72, 0x1c, 0x7d, 0x59, 0x33, 0xcc, 0xea, 0xea, 0x7c, - 0xf5, 0x49, 0x9f, 0xd9, 0xeb, 0x95, 0x9e, 0x6d, 0xb9, 0x16, 0x1d, 0x6d, 0xaf, 0x55, 0x70, 0x56, - 0x25, 0x98, 0x55, 0x59, 0x9d, 0x57, 0xce, 0xe8, 0x96, 0xb3, 0x62, 0x39, 0xd5, 0xa6, 0xe6, 0x30, - 0x61, 0x52, 0x5d, 0x9d, 0x6f, 0x32, 0x57, 0x9b, 0xaf, 0xf6, 0xb4, 0x8e, 0x61, 0x6a, 0xae, 0x61, - 0x99, 0xc2, 0x8b, 0x32, 0x1e, 0x9e, 0xeb, 0xcf, 0xd2, 0x2d, 0xc3, 0x7f, 0x3e, 0x26, 0x9e, 0x37, - 0xf8, 0xaf, 0xaa, 0xf8, 0x81, 0x8f, 0x26, 0x33, 0x61, 0xba, 0x6b, 0x38, 0x25, 0x9b, 0x89, 0xbb, - 0xde, 0x63, 0xbe, 0xa3, 0xa9, 0xcc, 0x59, 0x5d, 0xd6, 0xd1, 0x74, 0x24, 0xac, 0x8c, 0x74, 0xac, - 0x8e, 0x25, 0x70, 0x78, 0x7f, 0xe1, 0xe8, 0xb1, 0x8e, 0x65, 0x75, 0xba, 0xac, 0xaa, 0xf5, 0x8c, - 0xaa, 0x66, 0x9a, 0x96, 0xcb, 0xd9, 0xf9, 0xae, 0xc7, 0xf0, 0x29, 0xff, 0xd5, 0xec, 0xb7, 0xab, - 0x9a, 0x89, 0xee, 0xd4, 0xf3, 0x40, 0x1f, 0x78, 0x6b, 0x73, 0x5f, 0xb3, 0xb5, 0x15, 0xa7, 0xce, - 0x9e, 0xf4, 0x99, 0xe3, 0xd2, 0xe3, 0x00, 0x3c, 0x7a, 0xc3, 0xd4, 0x56, 0xd8, 0x28, 0x99, 0x20, - 0x33, 0xfb, 0xeb, 0xfb, 0xf9, 0xc8, 0x07, 0xda, 0x0a, 0x53, 0x3f, 0x84, 0xc3, 0x11, 0x23, 0xa7, - 0x67, 0x99, 0x0e, 0xa3, 0x57, 0x61, 0x6f, 0x8f, 0x8f, 0x70, 0x8b, 0xa1, 0x85, 0x89, 0x4a, 0xd6, - 0xe6, 0x54, 0x84, 0x65, 0x6d, 0xf7, 0xa7, 0xff, 0x3a, 0xb1, 0xa3, 0x8e, 0x56, 0xea, 0x15, 0x38, - 0xc6, 0xdd, 0x2e, 0xf6, 0x6d, 0x9b, 0x99, 0xee, 0x3d, 0x5b, 0xd3, 0xbb, 0xec, 0x21, 0x73, 0x25, - 0x51, 0xe9, 0x70, 0x3c, 0xc3, 0x1c, 0xf1, 0xd5, 0x00, 0x2c, 0x3e, 0xd8, 0x70, 0x98, 0x8b, 0x18, - 0x4f, 0x66, 0x63, 0x0c, 0x1c, 0xec, 0xb7, 0xfc, 0x3f, 0xd5, 0x87, 0x88, 0x31, 0x0e, 0x4e, 0x0e, - 0x23, 0x1d, 0x81, 0x3d, 0xa6, 0x65, 0xea, 0x6c, 0x74, 0xe7, 0x04, 0x99, 0xd9, 0x5d, 0x17, 0x3f, - 0x06, 0xc8, 0x93, 0x4e, 0xb7, 0x10, 0xf9, 0xf7, 0xe2, 0xc8, 0x17, 0x2d, 0xb3, 0x6d, 0xd8, 0x2b, - 0x92, 0xc8, 0xa7, 0xe1, 0x60, 0xd3, 0x36, 0x5a, 0x1d, 0x66, 0x37, 0xb4, 0x56, 0xcb, 0x66, 0x8e, - 0xc3, 0x39, 0xec, 0xaf, 0xbf, 0x8a, 0xc3, 0xd7, 0xc5, 0x68, 0x40, 0x71, 0x57, 0x98, 0xe2, 0x72, - 0x9c, 0xe2, 0x20, 0x3a, 0x52, 0xbc, 0x05, 0xfb, 0x74, 0x31, 0x84, 0xfc, 0xe6, 0xb2, 0xf9, 0xbd, - 0xef, 0x74, 0x12, 0x7e, 0x7c, 0x6b, 0xf5, 0x5b, 0x70, 0x2a, 0x35, 0x92, 0x53, 0x5b, 0xff, 0xc0, - 0x83, 0xb2, 0xa9, 0x9d, 0xb2, 0x61, 0xaa, 0xc0, 0x39, 0xd2, 0xb9, 0x03, 0xaf, 0x20, 0x20, 0xef, - 0x6d, 0xd8, 0x55, 0x9e, 0xcf, 0xc0, 0x5c, 0xad, 0xc1, 0x24, 0x8f, 0x79, 0x57, 0x73, 0x12, 0xef, - 0x84, 0xec, 0x1b, 0xfb, 0x18, 0xd4, 0x3c, 0x1f, 0x08, 0xfa, 0x06, 0x0c, 0x05, 0xc7, 0xcc, 0xc7, - 0x2d, 0x75, 0xce, 0x60, 0x70, 0xce, 0x1c, 0xf5, 0x29, 0xcc, 0x0d, 0x62, 0xdd, 0x67, 0x66, 0xcb, - 0x30, 0x3b, 0xf1, 0x90, 0xb5, 0x75, 0xef, 0xb4, 0x6c, 0xf1, 0xc9, 0x53, 0x57, 0xa1, 0x22, 0x1b, - 0x78, 0x4b, 0x09, 0x3b, 0x30, 0x1b, 0x8f, 0x5b, 0xd3, 0x5c, 0x7d, 0x79, 0x5b, 0xc9, 0xae, 0xc0, - 0x19, 0x99, 0xa0, 0x48, 0xf4, 0x1a, 0xec, 0x69, 0x7a, 0x4f, 0xf1, 0xdd, 0x9a, 0xcd, 0xa1, 0xd8, - 0x77, 0x3b, 0x96, 0x61, 0x76, 0x96, 0xd6, 0x84, 0x3b, 0x61, 0xa7, 0x5e, 0xf5, 0xdf, 0xdf, 0xe8, - 0x63, 0x26, 0x7b, 0x00, 0x19, 0x8c, 0x67, 0xd9, 0x23, 0xc4, 0x45, 0xd8, 0xd7, 0x14, 0x43, 0xb8, - 0x0f, 0x25, 0x40, 0xfa, 0x96, 0xea, 0x3a, 0x1c, 0x4d, 0x0b, 0x23, 0xb9, 0xf8, 0x53, 0xf0, 0xaa, - 0x6b, 0x7d, 0xc4, 0xcc, 0x86, 0x6e, 0x99, 0xae, 0xad, 0xe9, 0x2e, 0xae, 0xfd, 0x30, 0x1f, 0x5d, - 0xc4, 0xc1, 0x8c, 0x0c, 0xd7, 0xf0, 0xf3, 0x6b, 0x3c, 0xf4, 0x56, 0x6d, 0xc1, 0xaf, 0x09, 0x8c, - 0xf2, 0x08, 0x7c, 0xb4, 0x5c, 0xf6, 0x96, 0x64, 0x96, 0x72, 0xfa, 0x76, 0xe5, 0x27, 0xf9, 0xdd, - 0xe1, 0x25, 0x78, 0x04, 0x63, 0x29, 0x00, 0x83, 0xfd, 0x8d, 0x26, 0xf8, 0xd9, 0xdc, 0x84, 0x88, - 0xe6, 0xb8, 0xbf, 0x7e, 0x72, 0x7f, 0x9a, 0x12, 0xc1, 0xf9, 0x32, 0x76, 0x57, 0x07, 0x25, 0x2d, - 0x30, 0x72, 0xbb, 0x99, 0xc8, 0xf6, 0x25, 0xc8, 0x05, 0x99, 0xfe, 0x31, 0x4c, 0x0c, 0xde, 0xe9, - 0x9b, 0xab, 0xcc, 0x74, 0xf9, 0x9d, 0xb2, 0x3d, 0xf9, 0xe3, 0x46, 0xe8, 0x56, 0x49, 0xc6, 0x42, - 0x5e, 0x27, 0x60, 0x88, 0x79, 0xcf, 0x1a, 0x62, 0x45, 0x08, 0x5f, 0x11, 0x60, 0x83, 0xe9, 0xea, - 0x3d, 0x3c, 0x92, 0x4b, 0xde, 0x12, 0x2e, 0x59, 0x37, 0x98, 0x69, 0xad, 0xc8, 0x5f, 0xb0, 0x7c, - 0xe1, 0x11, 0x9f, 0xf8, 0xa1, 0xce, 0xe3, 0x06, 0x47, 0x1d, 0x22, 0x9c, 0x11, 0xd8, 0xd3, 0xf2, - 0x06, 0xd0, 0x99, 0xf8, 0x31, 0xc0, 0xc0, 0xe7, 0x2e, 0x59, 0xdc, 0x52, 0x1e, 0x83, 0x70, 0xb8, - 0x33, 0xec, 0xd0, 0xc7, 0x10, 0x75, 0x18, 0x60, 0x10, 0xb0, 0x49, 0x18, 0xf6, 0x23, 0xc4, 0x20, - 0x2e, 0x88, 0x52, 0x3b, 0x36, 0x05, 0xaf, 0xe2, 0x1d, 0x14, 0xdd, 0xb0, 0x61, 0x31, 0xea, 0xef, - 0xd7, 0x3d, 0xac, 0xb9, 0x45, 0x84, 0x01, 0x9c, 0xb7, 0x60, 0xaf, 0x98, 0x57, 0x5c, 0x73, 0xa3, - 0x25, 0xce, 0x57, 0xbb, 0x78, 0xd8, 0x7c, 0xc8, 0x37, 0xd7, 0x5c, 0x66, 0x9b, 0x5a, 0xb7, 0x04, - 0xf4, 0x59, 0x78, 0x8d, 0xa1, 0x55, 0x0c, 0xfc, 0x41, 0x16, 0xf2, 0xe6, 0xc1, 0x37, 0xe0, 0x44, - 0x24, 0x5a, 0x2d, 0x38, 0x8d, 0x5b, 0x7d, 0xb2, 0x0d, 0x3c, 0xd9, 0x78, 0x2b, 0x3e, 0x64, 0x66, - 0x6b, 0xc9, 0xf2, 0xd9, 0xc9, 0x6f, 0x8a, 0xc3, 0xcc, 0x56, 0x22, 0xd6, 0xb0, 0x18, 0xf5, 0x43, - 0xbd, 0x24, 0x58, 0x57, 0x65, 0xc4, 0xc2, 0x4d, 0xfa, 0x0e, 0x8c, 0xb8, 0xb6, 0x66, 0x3a, 0x6d, - 0x66, 0x3b, 0x0d, 0xc3, 0x6c, 0x44, 0xef, 0xb9, 0x73, 0x12, 0x37, 0x01, 0x5a, 0x2f, 0xad, 0xd5, - 0xe9, 0xc0, 0xd3, 0x1d, 0x13, 0xaf, 0x50, 0xfa, 0x6d, 0x38, 0xdc, 0x37, 0x85, 0xd3, 0x56, 0x63, - 0xf0, 0x7c, 0x74, 0xe7, 0x46, 0xdc, 0x0f, 0x1c, 0xf9, 0x83, 0x5e, 0xaa, 0x38, 0x19, 0x14, 0x8f, - 0x4d, 0x87, 0xd9, 0xab, 0xac, 0x55, 0xeb, 0x5a, 0xfa, 0x47, 0xb7, 0x99, 0xd1, 0x59, 0x96, 0xfd, - 0x3c, 0xfb, 0x3e, 0xd6, 0xe5, 0x99, 0x5e, 0x70, 0xb1, 0x16, 0xe0, 0xf5, 0xc1, 0xa1, 0x6a, 0x7a, - 0xcf, 0x1b, 0xcb, 0x7c, 0x02, 0x66, 0x9f, 0xc3, 0xfe, 0xc3, 0x90, 0x2d, 0x9d, 0x84, 0x03, 0x91, - 0xa9, 0xa2, 0x66, 0x1f, 0x6a, 0x06, 0x53, 0xd4, 0x1e, 0x9c, 0x8e, 0xe6, 0xbb, 0x90, 0xfd, 0xf6, - 0x64, 0xd8, 0xbb, 0x30, 0x5d, 0x18, 0x11, 0x39, 0xc7, 0xf1, 0x93, 0x24, 0xfe, 0x0b, 0x91, 0xf7, - 0x5f, 0xb6, 0xec, 0xfa, 0x3a, 0x8c, 0x44, 0xad, 0x30, 0xe0, 0xbb, 0xb0, 0x4f, 0xa4, 0x01, 0xff, - 0x10, 0x16, 0xe6, 0x0d, 0xfc, 0x56, 0xf7, 0xcd, 0xd4, 0xdb, 0xc8, 0xee, 0xbe, 0x6d, 0x3d, 0x66, - 0xba, 0xcb, 0x5a, 0xfc, 0x30, 0x2e, 0x19, 0x2b, 0xcc, 0xea, 0xbb, 0xa5, 0x0e, 0xc6, 0x03, 0x98, - 0x29, 0xf6, 0x84, 0xb8, 0xbd, 0x3b, 0x5c, 0x3c, 0x88, 0x2e, 0xd5, 0xb0, 0x1b, 0x9e, 0xae, 0x5e, - 0xf2, 0x2b, 0x25, 0xbe, 0x23, 0x3c, 0x81, 0xcb, 0xae, 0x58, 0xc7, 0xaf, 0x30, 0x22, 0xa6, 0x18, - 0xfe, 0x6b, 0x30, 0x2c, 0x36, 0xb9, 0xc1, 0xd3, 0xbe, 0xbf, 0x78, 0x53, 0xd9, 0x8b, 0x17, 0x72, - 0x53, 0x3f, 0xd0, 0x0c, 0xf9, 0x54, 0x97, 0xb0, 0xa2, 0x16, 0x33, 0x16, 0x2d, 0xc3, 0xac, 0xad, - 0x97, 0xbc, 0x3f, 0x53, 0xee, 0xae, 0x0f, 0xb1, 0xce, 0x4e, 0xf1, 0x8a, 0x1c, 0xce, 0xc3, 0x6e, - 0xdd, 0x32, 0x4c, 0xbc, 0x2f, 0xc6, 0x2a, 0xd8, 0xcd, 0x6a, 0x6a, 0x0e, 0xab, 0x60, 0xeb, 0xab, - 0xc2, 0xed, 0xc4, 0x86, 0xf3, 0xc9, 0xea, 0x71, 0xac, 0xab, 0xd1, 0xad, 0x07, 0xe2, 0xae, 0x31, - 0xe8, 0x7a, 0xa8, 0xd7, 0xb0, 0xf6, 0x4d, 0x3c, 0x0e, 0xea, 0x88, 0x80, 0x8a, 0x58, 0xb5, 0xfd, - 0x75, 0x18, 0x70, 0x71, 0xd4, 0x1f, 0x10, 0x38, 0x12, 0xf6, 0xa0, 0x75, 0xbb, 0xb2, 0x65, 0xdd, - 0x7b, 0x00, 0x41, 0x3f, 0x8f, 0x2f, 0xc6, 0xd0, 0xc2, 0xe9, 0x08, 0x2b, 0xd1, 0x2f, 0xf4, 0xb9, - 0xdd, 0xd7, 0x3a, 0x7e, 0x0f, 0xa0, 0x1e, 0xb2, 0x54, 0x9f, 0x91, 0xc8, 0xa1, 0x41, 0x08, 0x48, - 0xe0, 0x1e, 0xe0, 0xe6, 0x35, 0x74, 0x6f, 0x5c, 0x3e, 0x73, 0x07, 0xce, 0xea, 0x43, 0xcd, 0xc0, - 0x31, 0xbd, 0x95, 0x82, 0x7a, 0xba, 0x10, 0xb5, 0x40, 0x13, 0x81, 0x1d, 0x3b, 0x46, 0x5a, 0xb7, - 0xbb, 0x15, 0x7d, 0x0e, 0x2b, 0x7a, 0x8c, 0xc2, 0x5e, 0x71, 0x45, 0xde, 0x87, 0xa1, 0xd0, 0x8a, - 0xe0, 0x69, 0x2a, 0xb7, 0x20, 0x10, 0x2c, 0x88, 0xda, 0x4e, 0x09, 0xf8, 0x90, 0xdf, 0xb5, 0x5b, - 0x7b, 0x63, 0xdb, 0x58, 0x87, 0xa4, 0xc5, 0xd9, 0xa6, 0xbd, 0x56, 0xdb, 0x78, 0xf3, 0x05, 0xcf, - 0xfd, 0xfa, 0xbf, 0xd4, 0x4e, 0xc5, 0x8a, 0xf1, 0x9d, 0x89, 0x62, 0xfc, 0xe7, 0x04, 0xbb, 0x53, - 0xd9, 0x81, 0x06, 0x79, 0x2c, 0xfe, 0xbd, 0x52, 0xc9, 0xfd, 0x5e, 0x49, 0x38, 0x0c, 0x3e, 0x5a, - 0xbc, 0xbb, 0x8b, 0x99, 0x56, 0xbf, 0xb3, 0xdc, 0xe8, 0x59, 0x4f, 0x99, 0xcd, 0x71, 0xbd, 0x52, - 0x1f, 0x12, 0x63, 0xf7, 0xbd, 0x21, 0xf5, 0x49, 0xe8, 0x26, 0xf4, 0x7b, 0x15, 0xa1, 0xf5, 0xdf, - 0x8e, 0xcb, 0xf7, 0xbb, 0x78, 0xa9, 0xe4, 0x86, 0xdc, 0xae, 0x0d, 0xff, 0x31, 0xc1, 0x53, 0x86, - 0x91, 0x6f, 0xae, 0x31, 0xbd, 0xef, 0xb2, 0xc5, 0xae, 0x66, 0xac, 0x7c, 0xc9, 0x59, 0xed, 0x77, - 0x04, 0xcb, 0xfc, 0x54, 0x28, 0x83, 0xd6, 0xc4, 0x5e, 0xdd, 0x1b, 0xf0, 0xa9, 0x8f, 0x54, 0x84, - 0x60, 0x50, 0xf1, 0x05, 0x83, 0xca, 0x75, 0x73, 0xbd, 0x76, 0xe8, 0xb3, 0x67, 0x73, 0xc3, 0x7e, - 0x6d, 0x2b, 0x1c, 0xa0, 0xd9, 0xd6, 0x65, 0xb3, 0x6f, 0x60, 0x3d, 0x1d, 0xac, 0xec, 0x83, 0xbe, - 0xe5, 0xb2, 0xad, 0x48, 0x69, 0x8f, 0xb0, 0x8a, 0xcd, 0x72, 0x8d, 0x6b, 0x71, 0x09, 0xf6, 0x3c, - 0xf1, 0xc6, 0x8b, 0xbb, 0xec, 0xdc, 0xfc, 0x8e, 0xd9, 0xb6, 0xea, 0xc2, 0x42, 0xfd, 0x03, 0x49, - 0xbc, 0xe8, 0x4e, 0x6d, 0xfd, 0x3d, 0xc6, 0xea, 0x4c, 0x67, 0xc6, 0xaa, 0x74, 0x2a, 0x9b, 0x84, - 0x03, 0x6d, 0xc6, 0x1a, 0x36, 0x5a, 0xe1, 0x09, 0x1f, 0x6a, 0x07, 0x8e, 0x62, 0xc7, 0x63, 0xd7, - 0x86, 0x8f, 0xc7, 0x27, 0xc9, 0x94, 0x11, 0x87, 0xfc, 0xff, 0x7e, 0x03, 0x2e, 0xfc, 0xb7, 0x0a, - 0x7b, 0x38, 0x07, 0xfa, 0x23, 0x02, 0x7b, 0x85, 0xb2, 0x44, 0xcf, 0xe5, 0xed, 0x5b, 0x5c, 0xef, - 0x52, 0xe6, 0x24, 0x67, 0x8b, 0xe8, 0xea, 0xc4, 0x0f, 0x3f, 0xff, 0xcf, 0xcf, 0x76, 0x2a, 0x74, - 0xb4, 0xda, 0x5e, 0x8b, 0x69, 0x75, 0x42, 0xca, 0xa2, 0x7f, 0x24, 0xf0, 0x5a, 0x5c, 0x87, 0xa2, - 0x17, 0x0b, 0xa2, 0x64, 0xe8, 0x5e, 0xca, 0x57, 0x4b, 0xdb, 0x21, 0xce, 0x73, 0x1c, 0xe7, 0x69, - 0x7a, 0x2a, 0x89, 0x33, 0x68, 0x7b, 0x57, 0x75, 0x61, 0xce, 0x31, 0x27, 0x34, 0xb7, 0x22, 0xcc, - 0x19, 0x3a, 0x58, 0x21, 0xe6, 0x2c, 0xa9, 0x4b, 0x12, 0xb3, 0x8d, 0xf0, 0x22, 0x98, 0xf1, 0x6e, - 0x92, 0xc7, 0x1c, 0xed, 0xa1, 0xca, 0x63, 0x8e, 0xb5, 0x36, 0x65, 0xd7, 0x19, 0xe1, 0x7d, 0x46, - 0x60, 0x34, 0x4b, 0x3f, 0xa2, 0x57, 0x4b, 0x62, 0x88, 0xa9, 0x5a, 0xca, 0xb5, 0x0d, 0xdb, 0x23, - 0x97, 0x39, 0xce, 0x65, 0x9a, 0x4e, 0xc9, 0x70, 0x71, 0xe8, 0x27, 0x04, 0x5e, 0x4f, 0x15, 0x95, - 0xe8, 0xdb, 0x05, 0x48, 0xf2, 0xe4, 0x2c, 0xe5, 0x9d, 0x8d, 0x19, 0x97, 0xe2, 0x60, 0xfb, 0x48, - 0xff, 0x4d, 0x60, 0xb2, 0x50, 0x33, 0xa2, 0xb7, 0x24, 0x20, 0xc9, 0xc8, 0x5d, 0xca, 0xed, 0xcd, - 0x3b, 0x42, 0x9e, 0xb3, 0x9c, 0xe7, 0x49, 0x3a, 0x99, 0xcb, 0xb3, 0xab, 0x39, 0x2e, 0x7d, 0x4e, - 0xe0, 0x78, 0xae, 0x54, 0x44, 0x17, 0xe5, 0x61, 0x65, 0xaa, 0x5b, 0xca, 0x8d, 0xcd, 0x39, 0x41, - 0x5e, 0xa7, 0x38, 0xaf, 0x71, 0x7a, 0x2c, 0xc9, 0x8b, 0x37, 0xa7, 0x04, 0xa5, 0x8f, 0x09, 0x8c, - 0xa4, 0x75, 0xaf, 0xe9, 0x65, 0x09, 0x10, 0x19, 0xed, 0x75, 0xe5, 0xed, 0x0d, 0xd9, 0xca, 0xe6, - 0x81, 0x6a, 0xa8, 0x80, 0xa7, 0x7f, 0x27, 0xa0, 0x64, 0xf7, 0x86, 0xe8, 0xbb, 0xb2, 0x48, 0xb2, - 0x1a, 0x59, 0xca, 0xf5, 0x4d, 0x78, 0x40, 0x46, 0xe7, 0x39, 0xa3, 0x39, 0x7a, 0x36, 0x9f, 0x51, - 0x35, 0xdc, 0xbd, 0xa2, 0x7f, 0x25, 0x70, 0x24, 0xa3, 0xcb, 0x47, 0xaf, 0xc8, 0xbc, 0xd8, 0x99, - 0x3d, 0x46, 0xe5, 0xea, 0x46, 0xcd, 0x91, 0x4f, 0x95, 0xf3, 0x99, 0xa5, 0xd3, 0x29, 0x7c, 0xd0, - 0x2c, 0xca, 0xe5, 0x19, 0x81, 0x43, 0x09, 0xcd, 0x92, 0x16, 0xde, 0x14, 0x19, 0x2a, 0xa9, 0xf2, - 0x56, 0x79, 0xc3, 0xe2, 0xb3, 0x25, 0xde, 0x09, 0x0b, 0x4d, 0x1b, 0xee, 0x9a, 0x43, 0x7f, 0x4f, - 0xe0, 0x60, 0xcc, 0x17, 0xfd, 0x4a, 0xb9, 0xd8, 0x3e, 0xe4, 0x8b, 0x65, 0xcd, 0x10, 0xf0, 0x59, - 0x0e, 0x78, 0x8a, 0x9e, 0x94, 0x00, 0x4c, 0x7f, 0x43, 0xe0, 0x40, 0x58, 0x5a, 0xa3, 0x0b, 0x05, - 0x51, 0x53, 0x34, 0x50, 0xe5, 0x7c, 0x29, 0x1b, 0x84, 0x39, 0xcd, 0x61, 0x4e, 0xd2, 0x13, 0x59, - 0x30, 0xfd, 0x6b, 0xfb, 0xb7, 0x04, 0x86, 0x23, 0xea, 0x1f, 0x2d, 0x13, 0x6f, 0x70, 0x02, 0x2e, - 0x94, 0x33, 0x42, 0x94, 0x33, 0x1c, 0xa5, 0x4a, 0x27, 0x0a, 0x50, 0x3a, 0xf4, 0x17, 0x04, 0x0e, - 0x84, 0xc5, 0xb3, 0xc2, 0x95, 0x4c, 0x91, 0xee, 0x0a, 0x57, 0x32, 0x4d, 0x9d, 0x53, 0x4f, 0x70, - 0x8c, 0x63, 0xf4, 0x48, 0x12, 0x23, 0xef, 0x4d, 0x72, 0x68, 0x61, 0x4d, 0xad, 0x10, 0x5a, 0x8a, - 0xa2, 0x57, 0x08, 0x2d, 0x4d, 0xb4, 0xcb, 0x83, 0xc6, 0x1b, 0xb9, 0xf4, 0x57, 0x04, 0x0e, 0xde, - 0x62, 0x6e, 0x58, 0xbe, 0x2b, 0x44, 0x97, 0xa2, 0xf5, 0x15, 0x7e, 0x48, 0x44, 0xd5, 0xbb, 0xbc, - 0x6d, 0xc5, 0x0b, 0xbc, 0xb9, 0xce, 0x1b, 0x1d, 0xf4, 0xcf, 0x04, 0x8e, 0x84, 0x00, 0x86, 0xc5, - 0xba, 0xc2, 0xfb, 0x2e, 0x47, 0xe1, 0x2b, 0x0b, 0x78, 0x9e, 0x03, 0x3e, 0x4b, 0x67, 0xf3, 0x00, - 0x47, 0x34, 0x41, 0x2f, 0x83, 0xbe, 0x11, 0x42, 0x1e, 0x12, 0xfe, 0xe8, 0x25, 0x49, 0xe0, 0x49, - 0xb1, 0xb0, 0x2c, 0xee, 0x37, 0x39, 0xee, 0x33, 0x74, 0x26, 0x0f, 0x77, 0xb8, 0xb3, 0x44, 0x7f, - 0x49, 0x60, 0x28, 0xf4, 0x51, 0x4c, 0xe7, 0x8b, 0xde, 0xdb, 0x44, 0xe3, 0x5a, 0x59, 0x28, 0x63, - 0x82, 0x40, 0x4f, 0x73, 0xa0, 0x13, 0x74, 0x3c, 0xe5, 0x45, 0x0f, 0x7d, 0x7e, 0xd3, 0xcf, 0x09, - 0x8c, 0x66, 0xb5, 0xf9, 0x0a, 0x3f, 0x22, 0x0a, 0x1a, 0x91, 0x85, 0x1f, 0x11, 0x45, 0xfd, 0x45, - 0xf5, 0x22, 0x67, 0xf1, 0x26, 0xad, 0xe4, 0xb2, 0x68, 0x60, 0xd2, 0xf2, 0xd6, 0x5e, 0x94, 0x44, - 0x7f, 0x22, 0x70, 0x28, 0xd1, 0x72, 0x2e, 0xbc, 0x6d, 0xb3, 0x5a, 0xdf, 0x85, 0xb7, 0x6d, 0x66, - 0x77, 0x5b, 0xad, 0x70, 0x02, 0x33, 0xf4, 0x74, 0x3e, 0x81, 0x01, 0xf0, 0xbf, 0x10, 0xa0, 0xc9, - 0x96, 0x32, 0x2d, 0x03, 0x20, 0xd2, 0xed, 0x56, 0x2e, 0x6d, 0xc0, 0xb2, 0xb8, 0xc6, 0x89, 0x61, - 0x17, 0xad, 0x71, 0xfa, 0x05, 0x81, 0xa3, 0x39, 0x7d, 0x52, 0x7a, 0xbd, 0x44, 0x51, 0x9f, 0xde, - 0xd6, 0x55, 0x6a, 0x9b, 0x71, 0x81, 0xbc, 0x2e, 0x73, 0x5e, 0x17, 0xe8, 0x42, 0x92, 0x97, 0xf7, - 0x3d, 0xd0, 0xe8, 0x09, 0xfb, 0x46, 0x8c, 0x24, 0x7f, 0x9b, 0x3f, 0x26, 0x70, 0x38, 0xa5, 0x03, - 0x5a, 0x98, 0x81, 0xb2, 0x1b, 0xb8, 0xca, 0xe5, 0x8d, 0x98, 0x16, 0x6f, 0x91, 0xcf, 0x82, 0x09, - 0xbb, 0x06, 0xef, 0xb0, 0xd2, 0x9f, 0x10, 0xd8, 0x87, 0x1a, 0x2e, 0x95, 0x4b, 0x7d, 0x83, 0x2c, - 0x54, 0x91, 0x9d, 0x8e, 0xd8, 0x26, 0x39, 0xb6, 0xa3, 0x74, 0x2c, 0x2b, 0x55, 0x3a, 0xf4, 0x1f, - 0x04, 0x8e, 0xe6, 0xa8, 0xb5, 0x85, 0x07, 0xa6, 0x58, 0x33, 0x2e, 0x3c, 0x30, 0x12, 0x62, 0x71, - 0xde, 0x65, 0xd5, 0xf3, 0xcd, 0xc5, 0xbf, 0xc5, 0x68, 0xa0, 0x7c, 0x2c, 0xea, 0xd0, 0x90, 0x4a, - 0x4b, 0xe5, 0x72, 0x78, 0x44, 0x61, 0x2e, 0xae, 0x43, 0x53, 0xa4, 0xe5, 0xdc, 0x3a, 0x34, 0x2c, - 0x39, 0x87, 0x73, 0x64, 0xa0, 0xee, 0xca, 0xe6, 0xc8, 0x84, 0xca, 0x2c, 0x9b, 0x23, 0x93, 0x42, - 0xb2, 0x4c, 0x8e, 0xb4, 0x0c, 0xd3, 0x7b, 0x05, 0x45, 0xf9, 0xe7, 0x7d, 0x93, 0xc4, 0x04, 0xe2, - 0xc2, 0x6f, 0x92, 0x74, 0xbd, 0xb9, 0xf0, 0x9b, 0x24, 0x43, 0x87, 0xce, 0xfd, 0x26, 0x41, 0xc8, - 0xbc, 0x2f, 0xdf, 0xf5, 0xb0, 0xfd, 0x8d, 0xc0, 0x1b, 0xe9, 0x62, 0x01, 0x7d, 0x47, 0x3a, 0x3b, - 0xa7, 0xc8, 0x17, 0xca, 0x95, 0x0d, 0x5a, 0x23, 0x89, 0x0b, 0x9c, 0x44, 0x85, 0x9e, 0xcb, 0xcf, - 0xef, 0x5c, 0x93, 0x08, 0x6e, 0xa8, 0x68, 0xc1, 0x10, 0x6d, 0xf2, 0x97, 0x28, 0x18, 0x52, 0x05, - 0x8d, 0x12, 0x05, 0x43, 0xba, 0xba, 0x20, 0x59, 0x30, 0x38, 0x1e, 0x9d, 0xb0, 0x34, 0x52, 0xbb, - 0xf5, 0xe9, 0x8b, 0x71, 0xf2, 0xfc, 0xc5, 0x38, 0xf9, 0xe2, 0xc5, 0x38, 0xf9, 0xe9, 0xcb, 0xf1, - 0x1d, 0xcf, 0x5f, 0x8e, 0xef, 0xf8, 0xe7, 0xcb, 0xf1, 0x1d, 0xdf, 0x9c, 0xeb, 0x18, 0xee, 0x72, - 0xbf, 0x59, 0xd1, 0xad, 0x95, 0x6a, 0xaf, 0x6f, 0xb6, 0x0c, 0xcd, 0xa8, 0xb6, 0xd7, 0xe6, 0x74, - 0xcb, 0x66, 0xd5, 0x48, 0x08, 0xfe, 0x7f, 0x70, 0x9a, 0x7b, 0xb9, 0xd4, 0x75, 0xfe, 0x7f, 0x01, - 0x00, 0x00, 0xff, 0xff, 0x82, 0xca, 0xe0, 0xee, 0x76, 0x34, 0x00, 0x00, + // 2603 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5b, 0xdd, 0x6f, 0x14, 0xd7, + 0x15, 0xe7, 0xf2, 0x19, 0x8e, 0x71, 0x08, 0x17, 0x27, 0xd8, 0x0b, 0x18, 0x7b, 0xc0, 0xd8, 0x06, + 0xbc, 0x1b, 0x1b, 0x4a, 0x03, 0x09, 0x10, 0xd6, 0x10, 0xa0, 0x22, 0x01, 0x16, 0x47, 0xea, 0x87, + 0xda, 0x61, 0x76, 0xf6, 0xee, 0x7a, 0xc8, 0x7a, 0x66, 0x99, 0x99, 0x35, 0xb6, 0xda, 0x4a, 0x55, + 0x5f, 0x5a, 0xa9, 0x2f, 0x95, 0x2a, 0x55, 0x7d, 0xa8, 0xda, 0x3e, 0xf4, 0xb1, 0x95, 0x5a, 0x09, + 0xb5, 0x52, 0xa5, 0x3c, 0xe4, 0x2d, 0x4d, 0x5f, 0x90, 0x22, 0xb5, 0x7d, 0xaa, 0x52, 0xe8, 0x3f, + 0xd1, 0xb7, 0x6a, 0xee, 0x3d, 0xb3, 0xf3, 0x3d, 0x73, 0xc7, 0x1f, 0x51, 0xdf, 0xbc, 0x77, 0xee, + 0x39, 0xe7, 0x77, 0xee, 0xc7, 0x39, 0xe7, 0x9e, 0x1f, 0xc0, 0xa9, 0xf6, 0x5a, 0xad, 0x63, 0x6b, + 0xab, 0x86, 0xbb, 0x5e, 0xd3, 0x6d, 0xcb, 0x71, 0xf4, 0x65, 0xcd, 0x30, 0x6b, 0xab, 0xf3, 0xb5, + 0x27, 0x7d, 0x66, 0xaf, 0x57, 0x7b, 0xb6, 0xe5, 0x5a, 0x74, 0xb4, 0xbd, 0x56, 0xc5, 0x59, 0xd5, + 0x60, 0x56, 0x75, 0x75, 0xbe, 0x72, 0x46, 0xb7, 0x9c, 0x15, 0xcb, 0xa9, 0x35, 0x35, 0x87, 0x09, + 0x91, 0xda, 0xea, 0x7c, 0x93, 0xb9, 0xda, 0x7c, 0xad, 0xa7, 0x75, 0x0c, 0x53, 0x73, 0x0d, 0xcb, + 0x14, 0x5a, 0x2a, 0xe3, 0xe1, 0xb9, 0xfe, 0x2c, 0xdd, 0x32, 0xfc, 0xef, 0x63, 0xe2, 0xbb, 0xca, + 0x7f, 0xd5, 0xc4, 0x0f, 0xfc, 0x34, 0x99, 0x09, 0xd3, 0x5d, 0xc3, 0x29, 0xd9, 0x9e, 0xb8, 0xeb, + 0x3d, 0xe6, 0x2b, 0x1a, 0xe9, 0x58, 0x1d, 0x4b, 0x18, 0xf0, 0xfe, 0xc2, 0xd1, 0x63, 0x1d, 0xcb, + 0xea, 0x74, 0x59, 0x4d, 0xeb, 0x19, 0x35, 0xcd, 0x34, 0x2d, 0x97, 0xc3, 0xf6, 0x65, 0xc6, 0xf0, + 0x2b, 0xff, 0xd5, 0xec, 0xb7, 0x6b, 0x9a, 0x89, 0x0b, 0xa3, 0x9c, 0x07, 0xfa, 0xc0, 0x73, 0xfa, + 0xbe, 0x66, 0x6b, 0x2b, 0x4e, 0x83, 0x3d, 0xe9, 0x33, 0xc7, 0xa5, 0xc7, 0x01, 0xb8, 0x71, 0xd5, + 0xd4, 0x56, 0xd8, 0x28, 0x99, 0x20, 0x33, 0xfb, 0x1b, 0xfb, 0xf9, 0xc8, 0x07, 0xda, 0x0a, 0x53, + 0x3e, 0x84, 0xc3, 0x11, 0x21, 0xa7, 0x67, 0x99, 0x0e, 0xa3, 0x57, 0x61, 0x6f, 0x8f, 0x8f, 0x70, + 0x89, 0xa1, 0x85, 0x89, 0x6a, 0xd6, 0xaa, 0x57, 0x85, 0x64, 0x7d, 0xf7, 0xa7, 0xff, 0x3a, 0xb1, + 0xa3, 0x81, 0x52, 0xca, 0x15, 0x38, 0xc6, 0xd5, 0x2e, 0xf6, 0x6d, 0x9b, 0x99, 0xee, 0x3d, 0x5b, + 0xd3, 0xbb, 0xec, 0x21, 0x73, 0x25, 0x51, 0xe9, 0x70, 0x3c, 0x43, 0x1c, 0xf1, 0xd5, 0x01, 0x2c, + 0x3e, 0xa8, 0x3a, 0xcc, 0x45, 0x8c, 0x27, 0xb3, 0x31, 0x06, 0x0a, 0xf6, 0x5b, 0xfe, 0x9f, 0xca, + 0x43, 0xc4, 0x18, 0x07, 0x27, 0x87, 0x91, 0x8e, 0xc0, 0x1e, 0xd3, 0x32, 0x75, 0x36, 0xba, 0x73, + 0x82, 0xcc, 0xec, 0x6e, 0x88, 0x1f, 0x03, 0xe4, 0x49, 0xa5, 0x5b, 0x88, 0xfc, 0x7b, 0x71, 0xe4, + 0x8b, 0x96, 0xd9, 0x36, 0xec, 0x15, 0x49, 0xe4, 0xd3, 0x70, 0xb0, 0x69, 0x1b, 0xad, 0x0e, 0xb3, + 0x55, 0xad, 0xd5, 0xb2, 0x99, 0xe3, 0x70, 0x1f, 0xf6, 0x37, 0x5e, 0xc5, 0xe1, 0xeb, 0x62, 0x34, + 0x70, 0x71, 0x57, 0xd8, 0xc5, 0xe5, 0xb8, 0x8b, 0x03, 0xeb, 0xe8, 0xe2, 0x2d, 0xd8, 0xa7, 0x8b, + 0x21, 0xf4, 0x6f, 0x2e, 0xdb, 0xbf, 0xf7, 0x9d, 0x4e, 0x42, 0x8f, 0x2f, 0xad, 0x7c, 0x0b, 0x4e, + 0xa5, 0x5a, 0x72, 0xea, 0xeb, 0x1f, 0x78, 0x50, 0x36, 0xb5, 0x53, 0x36, 0x4c, 0x15, 0x28, 0x47, + 0x77, 0xee, 0xc0, 0x2b, 0x08, 0xc8, 0xbb, 0x0d, 0xbb, 0xca, 0xfb, 0x33, 0x10, 0x57, 0xea, 0x30, + 0xc9, 0x6d, 0xde, 0xd5, 0x9c, 0xc4, 0x9d, 0x90, 0xbd, 0xb1, 0x8f, 0x41, 0xc9, 0xd3, 0x81, 0xa0, + 0x6f, 0xc0, 0x50, 0x70, 0xcc, 0x7c, 0xdc, 0x52, 0xe7, 0x0c, 0x06, 0xe7, 0xcc, 0x51, 0x9e, 0xc2, + 0xdc, 0xc0, 0xd6, 0x7d, 0x66, 0xb6, 0x0c, 0xb3, 0x13, 0x37, 0x59, 0x5f, 0xf7, 0x4e, 0xcb, 0x16, + 0x9f, 0x3c, 0x65, 0x15, 0xaa, 0xb2, 0x86, 0xb7, 0xd4, 0x61, 0x07, 0x66, 0xe3, 0x76, 0xeb, 0x9a, + 0xab, 0x2f, 0x6f, 0xab, 0xb3, 0x2b, 0x70, 0x46, 0xc6, 0x28, 0x3a, 0x7a, 0x0d, 0xf6, 0x34, 0xbd, + 0xaf, 0x78, 0xb7, 0x66, 0x73, 0x5c, 0xec, 0xbb, 0x1d, 0xcb, 0x30, 0x3b, 0x4b, 0x6b, 0x42, 0x9d, + 0x90, 0x53, 0xae, 0xfa, 0xf7, 0x37, 0xfa, 0x99, 0xc9, 0x1e, 0x40, 0x06, 0xe3, 0x59, 0xf2, 0x08, + 0x71, 0x11, 0xf6, 0x35, 0xc5, 0x10, 0xee, 0x43, 0x09, 0x90, 0xbe, 0xa4, 0xb2, 0x0e, 0x47, 0xd3, + 0xcc, 0x48, 0x2e, 0xfe, 0x14, 0xbc, 0xea, 0x5a, 0x1f, 0x31, 0x53, 0xd5, 0x2d, 0xd3, 0xb5, 0x35, + 0xdd, 0xc5, 0xb5, 0x1f, 0xe6, 0xa3, 0x8b, 0x38, 0x98, 0x11, 0xe1, 0x54, 0x3f, 0xbe, 0xc6, 0x4d, + 0x6f, 0xd5, 0x16, 0xfc, 0x9a, 0xc0, 0x28, 0xb7, 0xc0, 0x47, 0xcb, 0x45, 0x6f, 0x49, 0xcf, 0x52, + 0x4e, 0xdf, 0xae, 0xfc, 0x20, 0xbf, 0x3b, 0xbc, 0x04, 0x8f, 0x60, 0x2c, 0x05, 0x60, 0xb0, 0xbf, + 0xd1, 0x00, 0x3f, 0x9b, 0x1b, 0x10, 0x51, 0x1c, 0xf7, 0xd7, 0x0f, 0xee, 0x4f, 0x53, 0x2c, 0x38, + 0x5f, 0xc6, 0xee, 0xea, 0x50, 0x49, 0x33, 0x8c, 0xbe, 0xdd, 0x4c, 0x44, 0xfb, 0x12, 0xce, 0x05, + 0x91, 0xfe, 0x31, 0x4c, 0x0c, 0xee, 0xf4, 0xcd, 0x55, 0x66, 0xba, 0x3c, 0xa7, 0x6c, 0x4f, 0xfc, + 0xb8, 0x11, 0xca, 0x2a, 0x49, 0x5b, 0xe8, 0xd7, 0x09, 0x18, 0x62, 0xde, 0x37, 0x55, 0xac, 0x08, + 0xe1, 0x2b, 0x02, 0x6c, 0x30, 0x5d, 0xb9, 0x87, 0x47, 0x72, 0xc9, 0x5b, 0xc2, 0x25, 0xeb, 0x06, + 0x33, 0xad, 0x15, 0xf9, 0x04, 0xcb, 0x17, 0x1e, 0xf1, 0x89, 0x1f, 0xca, 0x3c, 0x6e, 0x70, 0x54, + 0x21, 0xc2, 0x19, 0x81, 0x3d, 0x2d, 0x6f, 0x00, 0x95, 0x89, 0x1f, 0x03, 0x0c, 0x7c, 0xee, 0x92, + 0xc5, 0x25, 0xe5, 0x31, 0x08, 0x85, 0x3b, 0xc3, 0x0a, 0x7d, 0x0c, 0x51, 0x85, 0x01, 0x06, 0x01, + 0x9b, 0x84, 0x61, 0x3f, 0x42, 0x0c, 0x22, 0x41, 0x94, 0xda, 0xb1, 0x29, 0x78, 0x15, 0x73, 0x50, + 0x74, 0xc3, 0x86, 0xc5, 0xa8, 0xbf, 0x5f, 0xf7, 0xb0, 0xe6, 0x16, 0x16, 0x06, 0x70, 0xde, 0x82, + 0xbd, 0x62, 0x5e, 0x71, 0xcd, 0x8d, 0x92, 0x38, 0x5f, 0xe9, 0xe2, 0x61, 0xf3, 0x21, 0xdf, 0x5c, + 0x73, 0x99, 0x6d, 0x6a, 0xdd, 0x12, 0xd0, 0x67, 0xe1, 0x35, 0x86, 0x52, 0x31, 0xf0, 0x07, 0x59, + 0x48, 0x9b, 0x07, 0xdf, 0x80, 0x13, 0x11, 0x6b, 0xf5, 0xe0, 0x34, 0x6e, 0xf5, 0xc9, 0x36, 0xf0, + 0x64, 0x63, 0x56, 0x7c, 0xc8, 0xcc, 0xd6, 0x92, 0xe5, 0x7b, 0x27, 0xbf, 0x29, 0x0e, 0x33, 0x5b, + 0x09, 0x5b, 0xc3, 0x62, 0xd4, 0x37, 0xf5, 0x92, 0x60, 0x5d, 0x95, 0x61, 0x0b, 0x37, 0xe9, 0x3b, + 0x30, 0xe2, 0xda, 0x9a, 0xe9, 0xb4, 0x99, 0xed, 0xa8, 0x86, 0xa9, 0x46, 0xf3, 0xdc, 0x39, 0x89, + 0x4c, 0x80, 0xd2, 0x4b, 0x6b, 0x0d, 0x3a, 0xd0, 0x74, 0xc7, 0xc4, 0x14, 0x4a, 0xbf, 0x0d, 0x87, + 0xfb, 0xa6, 0x50, 0xda, 0x52, 0x07, 0xdf, 0x47, 0x77, 0x6e, 0x44, 0xfd, 0x40, 0x91, 0x3f, 0xe8, + 0x85, 0x8a, 0x93, 0x41, 0xf1, 0xd8, 0x74, 0x98, 0xbd, 0xca, 0x5a, 0xf5, 0xae, 0xa5, 0x7f, 0x74, + 0x9b, 0x19, 0x9d, 0x65, 0xd9, 0xe7, 0xd9, 0xf7, 0xb1, 0x2e, 0xcf, 0xd4, 0x82, 0x8b, 0xb5, 0x00, + 0xaf, 0x0f, 0x0e, 0x55, 0xd3, 0xfb, 0xae, 0x2e, 0xf3, 0x09, 0x18, 0x7d, 0x0e, 0xfb, 0x1f, 0x43, + 0xb2, 0x74, 0x12, 0x0e, 0x44, 0xa6, 0x8a, 0x9a, 0x7d, 0xa8, 0x19, 0x4c, 0x51, 0x7a, 0x70, 0x3a, + 0x1a, 0xef, 0x42, 0xf2, 0xdb, 0x13, 0x61, 0xef, 0xc2, 0x74, 0xa1, 0x45, 0xf4, 0x39, 0x8e, 0x9f, + 0x24, 0xf1, 0x5f, 0x88, 0xdc, 0x7f, 0xd9, 0xb2, 0xeb, 0xeb, 0x30, 0x12, 0x95, 0x42, 0x83, 0xef, + 0xc2, 0x3e, 0x11, 0x06, 0xfc, 0x43, 0x58, 0x18, 0x37, 0xf0, 0xad, 0xee, 0x8b, 0x29, 0xb7, 0xd1, + 0xbb, 0xfb, 0xb6, 0xf5, 0x98, 0xe9, 0x2e, 0x6b, 0xf1, 0xc3, 0xb8, 0x64, 0xac, 0x30, 0xab, 0xef, + 0x96, 0x3a, 0x18, 0x0f, 0x60, 0xa6, 0x58, 0x13, 0xe2, 0xf6, 0x72, 0xb8, 0xf8, 0x10, 0x5d, 0xaa, + 0x61, 0x37, 0x3c, 0x5d, 0xb9, 0xe4, 0x57, 0x4a, 0x7c, 0x47, 0x78, 0x00, 0x97, 0x5d, 0xb1, 0x8e, + 0x5f, 0x61, 0x44, 0x44, 0xd1, 0xfc, 0xd7, 0x60, 0x58, 0x6c, 0xb2, 0xca, 0xc3, 0xbe, 0xbf, 0x78, + 0x53, 0xd9, 0x8b, 0x17, 0x52, 0xd3, 0x38, 0xd0, 0x0c, 0xe9, 0x54, 0x2e, 0xc1, 0x50, 0xe8, 0x63, + 0x7a, 0x5e, 0xc9, 0x48, 0x50, 0x4b, 0x58, 0x8c, 0x0b, 0xf9, 0x45, 0xcb, 0x30, 0xeb, 0xeb, 0x25, + 0x53, 0x6f, 0x8a, 0xd6, 0x0f, 0xb1, 0x44, 0x4f, 0xd1, 0x8a, 0xee, 0x9f, 0x87, 0xdd, 0xba, 0x65, + 0x98, 0x98, 0x6a, 0xc6, 0xaa, 0xd8, 0xe1, 0x6a, 0x6a, 0x0e, 0xab, 0x62, 0x3b, 0xac, 0xca, 0xe5, + 0xc4, 0x59, 0xe1, 0x93, 0x95, 0xe3, 0x58, 0x92, 0xa3, 0x5a, 0x0f, 0xc4, 0x5d, 0x63, 0xd0, 0x30, + 0x51, 0xae, 0x61, 0xd9, 0x9c, 0xf8, 0x1c, 0x94, 0x20, 0x81, 0x2b, 0x62, 0xc1, 0xf7, 0x37, 0x60, + 0xe0, 0x8b, 0xa3, 0xfc, 0x80, 0xc0, 0x91, 0xb0, 0x06, 0xad, 0xdb, 0x95, 0xad, 0x08, 0xdf, 0x03, + 0x08, 0x7a, 0x7c, 0x7c, 0x31, 0x86, 0x16, 0x4e, 0x47, 0xbc, 0x12, 0x3d, 0x44, 0xdf, 0xb7, 0xfb, + 0x5a, 0xc7, 0x6f, 0x1f, 0x34, 0x42, 0x92, 0xca, 0x33, 0x12, 0x39, 0x6f, 0x08, 0x01, 0x1d, 0xb8, + 0x07, 0xb8, 0xef, 0xaa, 0xee, 0x8d, 0xcb, 0x07, 0xfd, 0x40, 0x59, 0x63, 0xa8, 0x19, 0x28, 0xa6, + 0xb7, 0x52, 0x50, 0x4f, 0x17, 0xa2, 0x16, 0x68, 0x22, 0xb0, 0x63, 0xc7, 0x48, 0xeb, 0x76, 0xb7, + 0xa2, 0x45, 0x62, 0x45, 0x8f, 0x51, 0x58, 0x2b, 0xae, 0xc8, 0xfb, 0x30, 0x14, 0x5a, 0x11, 0x3c, + 0x4d, 0xe5, 0x16, 0x04, 0x82, 0x05, 0x51, 0xda, 0x29, 0x06, 0x1f, 0xf2, 0x34, 0xbd, 0xb5, 0xc9, + 0xde, 0xc6, 0x12, 0x26, 0xcd, 0xce, 0x36, 0xed, 0xb5, 0xd2, 0xc6, 0xa4, 0x19, 0x7c, 0xf7, 0x9f, + 0x0e, 0xa5, 0x76, 0x2a, 0x56, 0xc7, 0xef, 0x4c, 0xd4, 0xf1, 0x3f, 0x27, 0xd8, 0xd8, 0xca, 0x36, + 0x34, 0x08, 0x81, 0xf1, 0xa7, 0x4e, 0x35, 0xf7, 0xa9, 0x93, 0x50, 0x18, 0xbc, 0x77, 0xbc, 0xb4, + 0xc7, 0x4c, 0xab, 0xdf, 0x59, 0x56, 0x7b, 0xd6, 0x53, 0x66, 0x73, 0x5c, 0xaf, 0x34, 0x86, 0xc4, + 0xd8, 0x7d, 0x6f, 0x48, 0x79, 0x12, 0x4a, 0xa2, 0x7e, 0x9b, 0x23, 0xb4, 0xfe, 0xdb, 0x91, 0xb7, + 0xbf, 0x8b, 0xf9, 0x28, 0xd7, 0xe4, 0x76, 0x6d, 0xf8, 0x8f, 0x09, 0x9e, 0x32, 0xb4, 0x7c, 0x73, + 0x8d, 0xe9, 0x7d, 0x97, 0x2d, 0x76, 0x35, 0x63, 0xe5, 0x4b, 0x8e, 0x6a, 0xbf, 0x23, 0xf8, 0x42, + 0x48, 0x85, 0x32, 0xe8, 0x6a, 0xec, 0xd5, 0xbd, 0x01, 0xdf, 0xf5, 0x91, 0xaa, 0xe0, 0x1a, 0xaa, + 0x3e, 0xd7, 0x50, 0xbd, 0x6e, 0xae, 0xd7, 0x0f, 0x7d, 0xf6, 0x6c, 0x6e, 0xd8, 0x2f, 0x8b, 0x85, + 0x02, 0x14, 0xdb, 0xba, 0x68, 0xf6, 0x0d, 0x2c, 0xc5, 0x83, 0x95, 0x7d, 0xd0, 0xb7, 0x5c, 0xb6, + 0x15, 0x21, 0xed, 0x11, 0x16, 0xc0, 0x59, 0xaa, 0x71, 0x2d, 0x2e, 0xc1, 0x9e, 0x27, 0xde, 0x78, + 0x71, 0x83, 0x9e, 0x8b, 0xdf, 0x31, 0xdb, 0x56, 0x43, 0x48, 0x28, 0x7f, 0x20, 0x89, 0x8b, 0xee, + 0xd4, 0xd7, 0xdf, 0x63, 0xac, 0xc1, 0x74, 0x66, 0xac, 0x4a, 0x87, 0xb2, 0x49, 0x38, 0xd0, 0x66, + 0x4c, 0xb5, 0x51, 0x0a, 0x4f, 0xf8, 0x50, 0x3b, 0x50, 0x14, 0x3b, 0x1e, 0xbb, 0x36, 0x7c, 0x3c, + 0x3e, 0x49, 0x86, 0x8c, 0x38, 0xe4, 0xff, 0xf7, 0x0c, 0xb8, 0xf0, 0xdf, 0x1a, 0xec, 0xe1, 0x3e, + 0xd0, 0x1f, 0x11, 0xd8, 0x2b, 0x48, 0x29, 0x7a, 0x2e, 0x6f, 0xdf, 0xe2, 0x54, 0x59, 0x65, 0x4e, + 0x72, 0xb6, 0xb0, 0xae, 0x4c, 0xfc, 0xf0, 0xf3, 0xff, 0xfc, 0x6c, 0x67, 0x85, 0x8e, 0xd6, 0xda, + 0x6b, 0x31, 0x96, 0x4f, 0xb0, 0x60, 0xf4, 0x8f, 0x04, 0x5e, 0x8b, 0x53, 0x58, 0xf4, 0x62, 0x81, + 0x95, 0x0c, 0xca, 0xac, 0xf2, 0xd5, 0xd2, 0x72, 0x88, 0xf3, 0x1c, 0xc7, 0x79, 0x9a, 0x9e, 0x4a, + 0xe2, 0x0c, 0x3a, 0xe6, 0x35, 0x5d, 0x88, 0x73, 0xcc, 0x09, 0xba, 0xae, 0x08, 0x73, 0x06, 0x85, + 0x56, 0x88, 0x39, 0x8b, 0x25, 0x93, 0xc4, 0x6c, 0x23, 0xbc, 0x08, 0x66, 0xcc, 0x4d, 0xf2, 0x98, + 0xa3, 0xed, 0x57, 0x79, 0xcc, 0xb1, 0xae, 0xa8, 0xec, 0x3a, 0x23, 0xbc, 0xcf, 0x08, 0x8c, 0x66, + 0x51, 0x4f, 0xf4, 0x6a, 0x49, 0x0c, 0x31, 0x42, 0xac, 0x72, 0x6d, 0xc3, 0xf2, 0xe8, 0xcb, 0x1c, + 0xf7, 0x65, 0x9a, 0x4e, 0xc9, 0xf8, 0xe2, 0xd0, 0x4f, 0x08, 0xbc, 0x9e, 0xca, 0x47, 0xd1, 0xb7, + 0x0b, 0x90, 0xe4, 0x31, 0x61, 0x95, 0x77, 0x36, 0x26, 0x5c, 0xca, 0x07, 0xdb, 0x47, 0xfa, 0x6f, + 0x02, 0x93, 0x85, 0x74, 0x13, 0xbd, 0x25, 0x01, 0x49, 0x86, 0x29, 0xab, 0xdc, 0xde, 0xbc, 0x22, + 0xf4, 0x73, 0x96, 0xfb, 0x79, 0x92, 0x4e, 0xe6, 0xfa, 0xd9, 0xd5, 0x1c, 0x97, 0x3e, 0x27, 0x70, + 0x3c, 0x97, 0x65, 0xa2, 0x8b, 0xf2, 0xb0, 0x32, 0x89, 0xb1, 0xca, 0x8d, 0xcd, 0x29, 0x41, 0xbf, + 0x4e, 0x71, 0xbf, 0xc6, 0xe9, 0xb1, 0xa4, 0x5f, 0xbc, 0xaf, 0x25, 0x5c, 0xfa, 0x98, 0xc0, 0x48, + 0x5a, 0xe3, 0x9b, 0x5e, 0x96, 0x00, 0x91, 0xd1, 0x99, 0xaf, 0xbc, 0xbd, 0x21, 0x59, 0xd9, 0x38, + 0x50, 0x0b, 0x15, 0xf0, 0xf4, 0xef, 0x04, 0x2a, 0xd9, 0x6d, 0x25, 0xfa, 0xae, 0x2c, 0x92, 0xac, + 0x1e, 0x58, 0xe5, 0xfa, 0x26, 0x34, 0xa0, 0x47, 0xe7, 0xb9, 0x47, 0x73, 0xf4, 0x6c, 0xbe, 0x47, + 0xb5, 0x70, 0xe3, 0x8b, 0xfe, 0x95, 0xc0, 0x91, 0x8c, 0x06, 0x21, 0xbd, 0x22, 0x73, 0xb1, 0x33, + 0xdb, 0x93, 0x95, 0xab, 0x1b, 0x15, 0x47, 0x7f, 0x6a, 0xdc, 0x9f, 0x59, 0x3a, 0x9d, 0xe2, 0x0f, + 0x8a, 0x45, 0x7d, 0x79, 0x46, 0xe0, 0x50, 0x82, 0xee, 0xa4, 0x85, 0x99, 0x22, 0x83, 0x60, 0xad, + 0xbc, 0x55, 0x5e, 0xb0, 0xf8, 0x6c, 0x89, 0x3b, 0x61, 0xa1, 0xa8, 0xea, 0xae, 0x39, 0xf4, 0xf7, + 0x04, 0x0e, 0xc6, 0x74, 0xd1, 0xaf, 0x94, 0xb3, 0xed, 0x43, 0xbe, 0x58, 0x56, 0x0c, 0x01, 0x9f, + 0xe5, 0x80, 0xa7, 0xe8, 0x49, 0x09, 0xc0, 0xf4, 0x37, 0x04, 0x0e, 0x84, 0x59, 0x39, 0xba, 0x50, + 0x60, 0x35, 0x85, 0x3e, 0xad, 0x9c, 0x2f, 0x25, 0x83, 0x30, 0xa7, 0x39, 0xcc, 0x49, 0x7a, 0x22, + 0x0b, 0xa6, 0x9f, 0xb6, 0x7f, 0x4b, 0x60, 0x38, 0x42, 0x1c, 0xd2, 0x32, 0xf6, 0x06, 0x27, 0xe0, + 0x42, 0x39, 0x21, 0x44, 0x39, 0xc3, 0x51, 0x2a, 0x74, 0xa2, 0x00, 0xa5, 0x43, 0x7f, 0x41, 0xe0, + 0x40, 0x98, 0x77, 0x2b, 0x5c, 0xc9, 0x14, 0xd6, 0xaf, 0x70, 0x25, 0xd3, 0x88, 0x3d, 0xe5, 0x04, + 0xc7, 0x38, 0x46, 0x8f, 0x24, 0x31, 0xf2, 0xde, 0x24, 0x87, 0x16, 0xa6, 0xe3, 0x0a, 0xa1, 0xa5, + 0x90, 0x81, 0x85, 0xd0, 0xd2, 0xf8, 0xbe, 0x3c, 0x68, 0xa2, 0x45, 0xfb, 0x2b, 0x02, 0x07, 0x6f, + 0x31, 0x37, 0xcc, 0xfc, 0x15, 0xa2, 0x4b, 0xa1, 0x09, 0x0b, 0x1f, 0x12, 0x51, 0xe2, 0x2f, 0x6f, + 0x5b, 0x31, 0x81, 0x37, 0xd7, 0x79, 0xa3, 0x83, 0xfe, 0x99, 0xc0, 0x91, 0x10, 0xc0, 0x30, 0xcf, + 0x57, 0x98, 0xef, 0x72, 0xc8, 0xc1, 0xb2, 0x80, 0xe7, 0x39, 0xe0, 0xb3, 0x74, 0x36, 0x0f, 0x70, + 0x84, 0x4e, 0xf4, 0x22, 0xe8, 0x1b, 0x21, 0xe4, 0x21, 0xce, 0x90, 0x5e, 0x92, 0x04, 0x9e, 0xe4, + 0x19, 0xcb, 0xe2, 0x7e, 0x93, 0xe3, 0x3e, 0x43, 0x67, 0xf2, 0x70, 0x87, 0x3b, 0x4b, 0xf4, 0x97, + 0xc4, 0x6f, 0xed, 0x8b, 0xe7, 0xea, 0x7c, 0xd1, 0xbd, 0x4d, 0x34, 0xae, 0x2b, 0x0b, 0x65, 0x44, + 0x10, 0xe8, 0x69, 0x0e, 0x74, 0x82, 0x8e, 0xa7, 0x5c, 0xf4, 0xd0, 0xf3, 0x9b, 0x7e, 0x4e, 0x60, + 0x34, 0xab, 0xcd, 0x57, 0xf8, 0x88, 0x28, 0x68, 0x44, 0x16, 0x3e, 0x22, 0x8a, 0xfa, 0x8b, 0xca, + 0x45, 0xee, 0xc5, 0x9b, 0xb4, 0x9a, 0xeb, 0x85, 0x8a, 0x41, 0xcb, 0x5b, 0x7b, 0x51, 0x12, 0xfd, + 0x89, 0xc0, 0xa1, 0x44, 0xcb, 0xb9, 0x30, 0xdb, 0x66, 0xb5, 0xbe, 0x0b, 0xb3, 0x6d, 0x66, 0x77, + 0x5b, 0xa9, 0x72, 0x07, 0x66, 0xe8, 0xe9, 0x7c, 0x07, 0x06, 0xc0, 0xff, 0x42, 0x80, 0x26, 0x5b, + 0xca, 0xb4, 0x0c, 0x80, 0x48, 0xb7, 0xbb, 0x72, 0x69, 0x03, 0x92, 0xc5, 0x35, 0x4e, 0x0c, 0xbb, + 0x68, 0x8d, 0xd3, 0x2f, 0x08, 0x1c, 0xcd, 0xe9, 0x93, 0xd2, 0xeb, 0x25, 0x8a, 0xfa, 0xf4, 0xb6, + 0x6e, 0xa5, 0xbe, 0x19, 0x15, 0xe8, 0xd7, 0x65, 0xee, 0xd7, 0x05, 0xba, 0x90, 0xf4, 0xcb, 0x7b, + 0x0f, 0xa8, 0x3d, 0x21, 0xaf, 0xc6, 0x9c, 0xe4, 0xb7, 0xf9, 0x63, 0x02, 0x87, 0x53, 0x3a, 0xa0, + 0x85, 0x11, 0x28, 0xbb, 0x81, 0x5b, 0xb9, 0xbc, 0x11, 0xd1, 0xe2, 0x2d, 0xf2, 0xbd, 0x60, 0x42, + 0x4e, 0xe5, 0x1d, 0x56, 0xfa, 0x13, 0x02, 0xfb, 0x90, 0xfe, 0xa5, 0x72, 0xa1, 0x6f, 0x10, 0x85, + 0xaa, 0xb2, 0xd3, 0x11, 0xdb, 0x24, 0xc7, 0x76, 0x94, 0x8e, 0x65, 0x85, 0x4a, 0x87, 0xfe, 0x83, + 0xc0, 0xd1, 0x1c, 0xa2, 0xb7, 0xf0, 0xc0, 0x14, 0xd3, 0xcd, 0x85, 0x07, 0x46, 0x82, 0x67, 0xce, + 0x4b, 0x56, 0x3d, 0x5f, 0x5c, 0xfc, 0x33, 0x0e, 0x15, 0x99, 0x67, 0x51, 0x87, 0x86, 0x08, 0x5e, + 0x2a, 0x17, 0xc3, 0x23, 0xe4, 0x74, 0x71, 0x1d, 0x9a, 0xc2, 0x4a, 0xe7, 0xd6, 0xa1, 0x61, 0xb6, + 0x3a, 0x1c, 0x23, 0x03, 0x76, 0x57, 0x36, 0x46, 0x26, 0x58, 0x66, 0xd9, 0x18, 0x99, 0x24, 0x92, + 0x65, 0x62, 0xa4, 0x65, 0x98, 0xde, 0x15, 0x14, 0xe5, 0x9f, 0xf7, 0x26, 0x89, 0x11, 0xc4, 0x85, + 0x6f, 0x92, 0x74, 0xbe, 0xb9, 0xf0, 0x4d, 0x92, 0xc1, 0x43, 0xe7, 0xbe, 0x49, 0x10, 0x32, 0xef, + 0xcb, 0x77, 0x3d, 0x6c, 0x7f, 0x23, 0xf0, 0x46, 0x3a, 0x59, 0x40, 0xdf, 0x91, 0x8e, 0xce, 0x29, + 0xf4, 0x45, 0xe5, 0xca, 0x06, 0xa5, 0xd1, 0x89, 0x0b, 0xdc, 0x89, 0x2a, 0x3d, 0x97, 0x1f, 0xdf, + 0x39, 0x27, 0x11, 0x64, 0xa8, 0x68, 0xc1, 0x10, 0x6d, 0xf2, 0x97, 0x28, 0x18, 0x52, 0x09, 0x8d, + 0x12, 0x05, 0x43, 0x3a, 0xbb, 0x20, 0x59, 0x30, 0x38, 0x9e, 0x3b, 0x61, 0x6a, 0xa4, 0x7e, 0xeb, + 0xd3, 0x17, 0xe3, 0xe4, 0xf9, 0x8b, 0x71, 0xf2, 0xc5, 0x8b, 0x71, 0xf2, 0xd3, 0x97, 0xe3, 0x3b, + 0x9e, 0xbf, 0x1c, 0xdf, 0xf1, 0xcf, 0x97, 0xe3, 0x3b, 0xbe, 0x39, 0xd7, 0x31, 0xdc, 0xe5, 0x7e, + 0xb3, 0xaa, 0x5b, 0x2b, 0xb5, 0x5e, 0xdf, 0x6c, 0x19, 0x9a, 0x51, 0x6b, 0xaf, 0xcd, 0xe9, 0x96, + 0xcd, 0x6a, 0x11, 0x13, 0xfc, 0xff, 0xe5, 0x34, 0xf7, 0x72, 0xaa, 0xeb, 0xfc, 0xff, 0x02, 0x00, + 0x00, 0xff, 0xff, 0xae, 0xed, 0x87, 0x1c, 0x8a, 0x34, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -6350,6 +6403,43 @@ func (m *QueryBridgeTokensResponse) MarshalToSizedBuffer(dAtA []byte) (int, erro return len(dAtA) - i, nil } +func (m *BridgeToken) 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 *BridgeToken) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *BridgeToken) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.Denom) > 0 { + i -= len(m.Denom) + copy(dAtA[i:], m.Denom) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Denom))) + i-- + dAtA[i] = 0x12 + } + if len(m.Token) > 0 { + i -= len(m.Token) + copy(dAtA[i:], m.Token) + i = encodeVarintQuery(dAtA, i, uint64(len(m.Token))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *QueryBridgeCoinByDenomRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -7831,6 +7921,23 @@ func (m *QueryBridgeTokensResponse) Size() (n int) { return n } +func (m *BridgeToken) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Token) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + l = len(m.Denom) + if l > 0 { + n += 1 + l + sovQuery(uint64(l)) + } + return n +} + func (m *QueryBridgeCoinByDenomRequest) Size() (n int) { if m == nil { return 0 @@ -12569,6 +12676,120 @@ func (m *QueryBridgeTokensResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *BridgeToken) 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 ErrIntOverflowQuery + } + 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: BridgeToken: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: BridgeToken: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Token", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + 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 ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Token = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Denom", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowQuery + } + 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 ErrInvalidLengthQuery + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthQuery + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Denom = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipQuery(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthQuery + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *QueryBridgeCoinByDenomRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/x/crosschain/types/tx.pb.go b/x/crosschain/types/tx.pb.go index 6746b6c4..f0d990c8 100644 --- a/x/crosschain/types/tx.pb.go +++ b/x/crosschain/types/tx.pb.go @@ -1847,6 +1847,239 @@ func (m *MsgConfirmResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgConfirmResponse proto.InternalMessageInfo +// Deprecated: Do not use. +type MsgOracleSetConfirmResponse struct { +} + +func (m *MsgOracleSetConfirmResponse) Reset() { *m = MsgOracleSetConfirmResponse{} } +func (m *MsgOracleSetConfirmResponse) String() string { return proto.CompactTextString(m) } +func (*MsgOracleSetConfirmResponse) ProtoMessage() {} +func (*MsgOracleSetConfirmResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_62b4a7c0d32dd67f, []int{29} +} +func (m *MsgOracleSetConfirmResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgOracleSetConfirmResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgOracleSetConfirmResponse.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 *MsgOracleSetConfirmResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgOracleSetConfirmResponse.Merge(m, src) +} +func (m *MsgOracleSetConfirmResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgOracleSetConfirmResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgOracleSetConfirmResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgOracleSetConfirmResponse proto.InternalMessageInfo + +// Deprecated: Do not use. +type MsgConfirmBatchResponse struct { +} + +func (m *MsgConfirmBatchResponse) Reset() { *m = MsgConfirmBatchResponse{} } +func (m *MsgConfirmBatchResponse) String() string { return proto.CompactTextString(m) } +func (*MsgConfirmBatchResponse) ProtoMessage() {} +func (*MsgConfirmBatchResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_62b4a7c0d32dd67f, []int{30} +} +func (m *MsgConfirmBatchResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgConfirmBatchResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgConfirmBatchResponse.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 *MsgConfirmBatchResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgConfirmBatchResponse.Merge(m, src) +} +func (m *MsgConfirmBatchResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgConfirmBatchResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgConfirmBatchResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgConfirmBatchResponse proto.InternalMessageInfo + +// Deprecated: Do not use. +type MsgBridgeCallConfirmResponse struct { +} + +func (m *MsgBridgeCallConfirmResponse) Reset() { *m = MsgBridgeCallConfirmResponse{} } +func (m *MsgBridgeCallConfirmResponse) String() string { return proto.CompactTextString(m) } +func (*MsgBridgeCallConfirmResponse) ProtoMessage() {} +func (*MsgBridgeCallConfirmResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_62b4a7c0d32dd67f, []int{31} +} +func (m *MsgBridgeCallConfirmResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgBridgeCallConfirmResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgBridgeCallConfirmResponse.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 *MsgBridgeCallConfirmResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgBridgeCallConfirmResponse.Merge(m, src) +} +func (m *MsgBridgeCallConfirmResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgBridgeCallConfirmResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgBridgeCallConfirmResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgBridgeCallConfirmResponse proto.InternalMessageInfo + +// Deprecated: Please use precompile BridgeCall +type MsgSendToExternal struct { + Sender string `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Dest string `protobuf:"bytes,2,opt,name=dest,proto3" json:"dest,omitempty"` + Amount types.Coin `protobuf:"bytes,3,opt,name=amount,proto3" json:"amount"` + BridgeFee types.Coin `protobuf:"bytes,4,opt,name=bridge_fee,json=bridgeFee,proto3" json:"bridge_fee"` + ChainName string `protobuf:"bytes,5,opt,name=chain_name,json=chainName,proto3" json:"chain_name,omitempty"` +} + +func (m *MsgSendToExternal) Reset() { *m = MsgSendToExternal{} } +func (m *MsgSendToExternal) String() string { return proto.CompactTextString(m) } +func (*MsgSendToExternal) ProtoMessage() {} +func (*MsgSendToExternal) Descriptor() ([]byte, []int) { + return fileDescriptor_62b4a7c0d32dd67f, []int{32} +} +func (m *MsgSendToExternal) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgSendToExternal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgSendToExternal.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 *MsgSendToExternal) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgSendToExternal.Merge(m, src) +} +func (m *MsgSendToExternal) XXX_Size() int { + return m.Size() +} +func (m *MsgSendToExternal) XXX_DiscardUnknown() { + xxx_messageInfo_MsgSendToExternal.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgSendToExternal proto.InternalMessageInfo + +func (m *MsgSendToExternal) GetSender() string { + if m != nil { + return m.Sender + } + return "" +} + +func (m *MsgSendToExternal) GetDest() string { + if m != nil { + return m.Dest + } + return "" +} + +func (m *MsgSendToExternal) GetAmount() types.Coin { + if m != nil { + return m.Amount + } + return types.Coin{} +} + +func (m *MsgSendToExternal) GetBridgeFee() types.Coin { + if m != nil { + return m.BridgeFee + } + return types.Coin{} +} + +func (m *MsgSendToExternal) GetChainName() string { + if m != nil { + return m.ChainName + } + return "" +} + +// Deprecated: Do not use. +type MsgSendToExternalResponse struct { + BatchNonce uint64 `protobuf:"varint,1,opt,name=batch_nonce,json=batchNonce,proto3" json:"batch_nonce,omitempty"` +} + +func (m *MsgSendToExternalResponse) Reset() { *m = MsgSendToExternalResponse{} } +func (m *MsgSendToExternalResponse) String() string { return proto.CompactTextString(m) } +func (*MsgSendToExternalResponse) ProtoMessage() {} +func (*MsgSendToExternalResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_62b4a7c0d32dd67f, []int{33} +} +func (m *MsgSendToExternalResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgSendToExternalResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgSendToExternalResponse.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 *MsgSendToExternalResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgSendToExternalResponse.Merge(m, src) +} +func (m *MsgSendToExternalResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgSendToExternalResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgSendToExternalResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgSendToExternalResponse proto.InternalMessageInfo + +func (m *MsgSendToExternalResponse) GetBatchNonce() uint64 { + if m != nil { + return m.BatchNonce + } + return 0 +} + func init() { proto.RegisterType((*MsgBondedOracle)(nil), "fx.gravity.crosschain.v1.MsgBondedOracle") proto.RegisterType((*MsgBondedOracleResponse)(nil), "fx.gravity.crosschain.v1.MsgBondedOracleResponse") @@ -1877,127 +2110,138 @@ func init() { proto.RegisterType((*MsgClaimResponse)(nil), "fx.gravity.crosschain.v1.MsgClaimResponse") proto.RegisterType((*MsgConfirm)(nil), "fx.gravity.crosschain.v1.MsgConfirm") proto.RegisterType((*MsgConfirmResponse)(nil), "fx.gravity.crosschain.v1.MsgConfirmResponse") + proto.RegisterType((*MsgOracleSetConfirmResponse)(nil), "fx.gravity.crosschain.v1.MsgOracleSetConfirmResponse") + proto.RegisterType((*MsgConfirmBatchResponse)(nil), "fx.gravity.crosschain.v1.MsgConfirmBatchResponse") + proto.RegisterType((*MsgBridgeCallConfirmResponse)(nil), "fx.gravity.crosschain.v1.MsgBridgeCallConfirmResponse") + proto.RegisterType((*MsgSendToExternal)(nil), "fx.gravity.crosschain.v1.MsgSendToExternal") + proto.RegisterType((*MsgSendToExternalResponse)(nil), "fx.gravity.crosschain.v1.MsgSendToExternalResponse") } func init() { proto.RegisterFile("fx/gravity/crosschain/v1/tx.proto", fileDescriptor_62b4a7c0d32dd67f) } var fileDescriptor_62b4a7c0d32dd67f = []byte{ - // 1835 bytes of a gzipped FileDescriptorProto + // 1925 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0x4f, 0x6f, 0xdc, 0xc6, - 0x15, 0x17, 0xf7, 0xaf, 0xf4, 0x24, 0xaf, 0x65, 0x46, 0xb6, 0xa9, 0x75, 0xbc, 0x92, 0x59, 0xbb, - 0x51, 0xe4, 0x2c, 0x19, 0xd9, 0xa9, 0x5d, 0x2c, 0x8a, 0x02, 0x5e, 0xd5, 0xa9, 0x05, 0x54, 0x4e, - 0xb1, 0x76, 0x52, 0xb4, 0x97, 0xc5, 0x2c, 0x39, 0xe2, 0x12, 0x5e, 0x72, 0x54, 0x72, 0x56, 0x59, - 0xa1, 0x40, 0x51, 0xf4, 0xd8, 0x4b, 0x0b, 0xb4, 0xdf, 0xa0, 0x97, 0x1e, 0x8d, 0x42, 0xd7, 0x5e, - 0x7a, 0x69, 0x90, 0x53, 0x90, 0x43, 0x9b, 0x06, 0x68, 0x5a, 0xd8, 0x07, 0x7f, 0x82, 0xa2, 0xd7, - 0x82, 0x33, 0x43, 0x2e, 0x49, 0x91, 0xfb, 0x07, 0xd8, 0x18, 0xb9, 0x08, 0x3b, 0x8f, 0xbf, 0x99, - 0x79, 0xef, 0xf7, 0xde, 0xbc, 0xf7, 0x66, 0x04, 0x37, 0x8e, 0x46, 0xba, 0xe5, 0xa1, 0x13, 0x9b, - 0x9e, 0xea, 0x86, 0x47, 0x7c, 0xdf, 0xe8, 0x23, 0xdb, 0xd5, 0x4f, 0xf6, 0x74, 0x3a, 0xd2, 0x8e, - 0x3d, 0x42, 0x89, 0xac, 0x1c, 0x8d, 0x34, 0x01, 0xd1, 0xc6, 0x10, 0xed, 0x64, 0xaf, 0xde, 0x30, - 0x88, 0xef, 0x10, 0x5f, 0xef, 0x21, 0x1f, 0xeb, 0x27, 0x7b, 0x3d, 0x4c, 0xd1, 0x9e, 0x6e, 0x10, - 0xdb, 0xe5, 0x33, 0xeb, 0x57, 0xc5, 0x77, 0xc7, 0xb7, 0x82, 0x15, 0x1d, 0xdf, 0x12, 0x1f, 0x36, - 0xf9, 0x87, 0x2e, 0x1b, 0xe9, 0x7c, 0x20, 0x3e, 0xdd, 0xcc, 0x57, 0xe8, 0xf4, 0x18, 0x87, 0xa8, - 0x5b, 0xb9, 0xa8, 0x01, 0xb6, 0x90, 0x71, 0x2a, 0x60, 0x1b, 0x16, 0xb1, 0x08, 0xdf, 0x24, 0xf8, - 0x15, 0xee, 0x6e, 0x11, 0x62, 0x0d, 0xb0, 0xce, 0x46, 0xbd, 0xe1, 0x91, 0x8e, 0xdc, 0x70, 0xc2, - 0x25, 0xe4, 0xd8, 0x2e, 0xd1, 0xd9, 0x5f, 0x2e, 0x52, 0xff, 0x5e, 0x80, 0x8b, 0x87, 0xbe, 0xd5, - 0x26, 0xae, 0x89, 0xcd, 0x0f, 0x3c, 0x64, 0x0c, 0xb0, 0x7c, 0x1d, 0x80, 0x6d, 0xd8, 0x75, 0x91, - 0x83, 0x15, 0x69, 0x5b, 0xda, 0x59, 0xe9, 0xac, 0x30, 0xc9, 0x63, 0xe4, 0x60, 0xf9, 0x16, 0xd4, - 0x08, 0x03, 0x76, 0x91, 0x69, 0x7a, 0xd8, 0xf7, 0x95, 0x02, 0x83, 0x5c, 0xe0, 0xd2, 0x07, 0x5c, - 0x28, 0xbf, 0x05, 0x17, 0x7b, 0x9e, 0x6d, 0x5a, 0xd8, 0x8b, 0x70, 0x45, 0x86, 0xab, 0x09, 0x71, - 0x08, 0x7c, 0x1b, 0xd6, 0xf1, 0x88, 0x62, 0xcf, 0x45, 0x83, 0x08, 0x59, 0x62, 0xc8, 0x8b, 0xa1, - 0x3c, 0x84, 0xde, 0x86, 0x4b, 0x27, 0x68, 0x60, 0x9b, 0x88, 0x92, 0xf1, 0xaa, 0x65, 0x86, 0x5d, - 0x8f, 0x3e, 0x84, 0xe0, 0x47, 0x70, 0xd1, 0xc4, 0x01, 0x61, 0x14, 0x77, 0x91, 0x43, 0x86, 0x2e, - 0x55, 0x2a, 0xdb, 0xd2, 0xce, 0xea, 0x9d, 0x4d, 0x4d, 0xf8, 0x24, 0xf0, 0xac, 0x26, 0x3c, 0xab, - 0xed, 0x13, 0xdb, 0x6d, 0x97, 0x3e, 0xf9, 0x6a, 0x6b, 0xa9, 0x53, 0x0b, 0xe7, 0x3d, 0x60, 0xd3, - 0x5a, 0x77, 0x7e, 0xfd, 0xea, 0xf9, 0x6e, 0xca, 0xe8, 0xdf, 0xbc, 0x7a, 0xbe, 0x5b, 0x8f, 0x39, - 0x27, 0x45, 0xa2, 0xba, 0x09, 0x57, 0x53, 0xa2, 0x0e, 0xf6, 0x8f, 0x89, 0xeb, 0x63, 0xf5, 0xaf, - 0x12, 0xd4, 0x0e, 0x7d, 0xeb, 0x81, 0x69, 0xfe, 0x40, 0xec, 0xb3, 0x20, 0xca, 0xef, 0x43, 0x45, - 0x18, 0x5a, 0x9c, 0xcd, 0x50, 0x01, 0x6f, 0xed, 0xe5, 0x18, 0xb8, 0x99, 0x34, 0x30, 0xa6, 0xb1, - 0xaa, 0xc0, 0x95, 0xa4, 0x24, 0x32, 0xef, 0x4c, 0x82, 0x0b, 0x87, 0xbe, 0xd5, 0xc1, 0x0b, 0xb6, - 0x2e, 0xd3, 0xf9, 0xc5, 0x6c, 0xe7, 0xb7, 0xde, 0xcd, 0xb1, 0x48, 0x49, 0x5a, 0x34, 0x56, 0x52, - 0xbd, 0x0a, 0x97, 0x13, 0x82, 0xc8, 0x9e, 0x3f, 0x73, 0x77, 0x3d, 0x34, 0x6d, 0xda, 0xe6, 0x91, - 0xfb, 0x9a, 0x4f, 0xc8, 0xac, 0xee, 0x89, 0x69, 0x28, 0xdc, 0x13, 0x93, 0x44, 0xe6, 0xfc, 0x56, - 0x82, 0x4b, 0x87, 0xbe, 0xf5, 0xa1, 0xdb, 0x5b, 0xf8, 0x99, 0x6f, 0xbd, 0x97, 0xa3, 0xe8, 0x9b, - 0x49, 0x45, 0x93, 0x7b, 0xab, 0xd7, 0x60, 0xf3, 0x9c, 0x30, 0xad, 0xee, 0x4f, 0x6c, 0xda, 0x37, - 0x3d, 0xf4, 0x71, 0x07, 0x7f, 0x8c, 0x3c, 0xf3, 0xf5, 0xaa, 0x9b, 0xdc, 0x5b, 0xa8, 0x9b, 0x14, - 0x46, 0xea, 0xfe, 0x57, 0x82, 0x37, 0x0e, 0x7d, 0x8b, 0x1b, 0xf1, 0x04, 0xd3, 0x7d, 0xe2, 0x1e, - 0xd9, 0x9e, 0x23, 0x6f, 0x40, 0xd9, 0x25, 0xae, 0xc1, 0x75, 0x2d, 0x75, 0xf8, 0x20, 0x2b, 0x02, - 0x0a, 0x33, 0xe7, 0xc8, 0x62, 0x76, 0x8e, 0x7c, 0x13, 0x56, 0x7c, 0xdb, 0x72, 0x11, 0x1d, 0x7a, - 0x58, 0xe4, 0xd1, 0xb1, 0x20, 0x45, 0x5c, 0x39, 0x45, 0x5c, 0xeb, 0x7e, 0xc0, 0x48, 0x5a, 0xa7, - 0x80, 0x92, 0x46, 0x92, 0x92, 0xb4, 0x7d, 0xea, 0x3f, 0x0b, 0xa0, 0xc4, 0xe5, 0x1f, 0x1e, 0x9b, - 0x88, 0x62, 0x73, 0x7f, 0x80, 0x6c, 0x47, 0xde, 0x82, 0x55, 0x7c, 0x82, 0x5d, 0xda, 0x8d, 0x53, - 0x00, 0x4c, 0xf4, 0x98, 0xf1, 0x70, 0x03, 0xd6, 0x7a, 0x03, 0x62, 0x3c, 0xeb, 0xf6, 0xb1, 0x6d, - 0xf5, 0x29, 0x23, 0xa1, 0xd4, 0x59, 0x65, 0xb2, 0x47, 0x4c, 0x24, 0xef, 0xc0, 0xba, 0x70, 0x94, - 0x8f, 0xc3, 0x85, 0x8a, 0x0c, 0x26, 0x1c, 0xf8, 0x04, 0x8b, 0xc5, 0x0e, 0xa0, 0xea, 0x60, 0xa7, - 0x87, 0xbd, 0xa0, 0x8c, 0x14, 0x77, 0x56, 0xef, 0xbc, 0xad, 0xe5, 0xd5, 0x78, 0x8d, 0x1f, 0x8e, - 0x8f, 0xc2, 0xec, 0x21, 0xd2, 0x62, 0x38, 0x3f, 0xcb, 0x3f, 0x95, 0x4c, 0xff, 0x24, 0x69, 0xad, - 0xa6, 0x69, 0xfd, 0x5e, 0x1e, 0xad, 0xdf, 0xca, 0xa1, 0x35, 0x4e, 0x9f, 0xfa, 0xfb, 0x22, 0xac, - 0x1f, 0xfa, 0xd6, 0x13, 0xec, 0x9a, 0x4f, 0xc9, 0xfb, 0xa3, 0xc5, 0x71, 0x7a, 0x0b, 0x6a, 0x94, - 0x3c, 0xc3, 0x6e, 0xd7, 0x20, 0x2e, 0xf5, 0x90, 0x41, 0x45, 0x4c, 0x5d, 0x60, 0xd2, 0x7d, 0x21, - 0x94, 0xf7, 0xa3, 0xb2, 0xc2, 0xc2, 0xa9, 0x7d, 0x3b, 0x20, 0xe9, 0xcb, 0xaf, 0xb6, 0x2e, 0xf3, - 0xea, 0xe2, 0x9b, 0xcf, 0x34, 0x9b, 0xe8, 0x0e, 0xa2, 0x7d, 0xed, 0xc0, 0xa5, 0x9f, 0x9f, 0x35, - 0x41, 0x94, 0x9d, 0x03, 0x97, 0x86, 0x25, 0x46, 0xbe, 0x02, 0x15, 0x1f, 0xbb, 0x26, 0xf6, 0x44, - 0xd0, 0x89, 0x91, 0x5c, 0x87, 0x65, 0x0f, 0x1b, 0xd8, 0x3e, 0xc1, 0x9e, 0xe0, 0x36, 0x1a, 0x07, - 0xac, 0x52, 0xe4, 0x59, 0x98, 0x76, 0xed, 0x9e, 0x11, 0xb2, 0xca, 0x25, 0x07, 0x3d, 0x23, 0xcb, - 0x3b, 0xcb, 0x33, 0x78, 0x67, 0x25, 0xed, 0x9d, 0xf7, 0xf2, 0xbc, 0x73, 0x2d, 0xe9, 0x9d, 0x84, - 0x03, 0xd4, 0x7f, 0x97, 0x40, 0x0e, 0x2a, 0x3c, 0x9b, 0xb6, 0x8f, 0x06, 0x03, 0xee, 0x97, 0x29, - 0x99, 0x69, 0xe6, 0x13, 0x9f, 0xf2, 0x6f, 0x71, 0xaa, 0x7f, 0x4b, 0xe7, 0xfd, 0x9b, 0xc7, 0xf9, - 0x15, 0xa8, 0x78, 0xf8, 0x68, 0xe8, 0x9a, 0x82, 0x71, 0x31, 0x0a, 0x94, 0x4b, 0xc6, 0x83, 0xaf, - 0x54, 0xb7, 0x8b, 0x81, 0x72, 0x89, 0x80, 0xf0, 0xe5, 0x87, 0x50, 0xe5, 0x6e, 0x0d, 0x18, 0x2f, - 0xce, 0x1b, 0x12, 0xe1, 0x5c, 0xb9, 0x06, 0x05, 0x4a, 0x84, 0x3f, 0x0a, 0x94, 0xc8, 0x32, 0x94, - 0x4c, 0x44, 0x91, 0x02, 0x4c, 0xc2, 0x7e, 0xcb, 0xef, 0xc3, 0xf2, 0xcf, 0x87, 0x84, 0xe2, 0xae, - 0x6d, 0x2a, 0xab, 0xf3, 0x87, 0x5f, 0x95, 0x4d, 0x3e, 0x30, 0xe5, 0x47, 0xb0, 0x62, 0x21, 0xbf, - 0x3b, 0xb0, 0x1d, 0x9b, 0x2a, 0x6b, 0xf3, 0x2f, 0xb4, 0x6c, 0x21, 0xff, 0x47, 0xc1, 0xe4, 0x40, - 0x4b, 0x07, 0x3b, 0x44, 0xb9, 0xc0, 0xb5, 0x0c, 0x7e, 0xcb, 0xd7, 0x60, 0x85, 0x8e, 0xba, 0xc4, - 0xb3, 0x2d, 0xdb, 0x55, 0x6a, 0x3c, 0x8c, 0xe9, 0xe8, 0x03, 0x36, 0x6e, 0xdd, 0xcb, 0x8b, 0xaf, - 0xeb, 0xa9, 0xfe, 0x31, 0x19, 0x4a, 0xea, 0xdf, 0x78, 0x4e, 0x1d, 0x8b, 0x3b, 0xd8, 0x1f, 0x0e, - 0xe8, 0x37, 0x2f, 0xce, 0xa2, 0xe2, 0x56, 0x8e, 0x17, 0xb7, 0x04, 0x27, 0x95, 0x24, 0x27, 0xb2, - 0x02, 0x55, 0x7f, 0x68, 0x18, 0x81, 0x5e, 0xc1, 0xb9, 0x5e, 0xee, 0x84, 0xc3, 0x60, 0x31, 0x03, - 0x0d, 0x7d, 0x2c, 0xce, 0x32, 0x1f, 0xcc, 0x9c, 0x41, 0x33, 0xc9, 0x52, 0xff, 0xc0, 0x6f, 0x39, - 0xa2, 0x58, 0xb5, 0x11, 0x35, 0xfa, 0x39, 0x15, 0xf9, 0x7c, 0x4a, 0x2c, 0x64, 0xa5, 0xc4, 0xaf, - 0xe3, 0x72, 0x93, 0x28, 0xdc, 0xe5, 0xc9, 0x85, 0xbb, 0x92, 0xce, 0x61, 0x77, 0xf3, 0xf8, 0x49, - 0xdd, 0x51, 0xe2, 0x14, 0xa8, 0x7f, 0x2a, 0xb0, 0x2e, 0x91, 0xe7, 0xb5, 0x87, 0x42, 0x9d, 0xc5, - 0x95, 0x97, 0x2d, 0x58, 0xed, 0x05, 0xfb, 0x24, 0x43, 0x8b, 0x89, 0x1e, 0xe7, 0x90, 0x5d, 0x9a, - 0x91, 0xec, 0xf2, 0x0c, 0x79, 0xfe, 0x1c, 0x47, 0xad, 0x3c, 0x8e, 0x6e, 0x64, 0xe5, 0xf9, 0x04, - 0x1f, 0xea, 0xbf, 0x0a, 0xac, 0xaf, 0xe3, 0xe1, 0xf5, 0x94, 0xa9, 0xf7, 0xba, 0xcb, 0xb0, 0x0c, - 0x25, 0x66, 0x17, 0xe7, 0x88, 0xfd, 0x66, 0x19, 0xfe, 0xd4, 0xe9, 0x91, 0x41, 0x94, 0xe1, 0xd9, - 0x28, 0xa8, 0xaa, 0x26, 0x36, 0x6c, 0x07, 0x0d, 0x78, 0xc7, 0x52, 0xea, 0x44, 0xe3, 0x2c, 0x3a, - 0xab, 0x99, 0x74, 0x86, 0x89, 0x6e, 0x39, 0x96, 0xe8, 0xa6, 0x94, 0xd2, 0x59, 0xfb, 0xc7, 0x34, - 0x8f, 0xea, 0xff, 0x24, 0xd8, 0x48, 0xa6, 0x40, 0xd1, 0x38, 0x2f, 0x2a, 0xcf, 0xcd, 0xd1, 0x41, - 0x47, 0x99, 0xa1, 0x14, 0xcf, 0x0c, 0x13, 0x8f, 0x67, 0xeb, 0xbb, 0x79, 0x86, 0x6f, 0xe5, 0xe6, - 0x78, 0xd1, 0x39, 0xff, 0x43, 0x62, 0xb9, 0x89, 0x77, 0x7c, 0x3f, 0x46, 0x1e, 0x72, 0xfc, 0x69, - 0x46, 0xdf, 0x83, 0x15, 0x34, 0xa4, 0x7d, 0xe2, 0xd9, 0xf4, 0x94, 0x9b, 0xdb, 0x56, 0x3e, 0x3f, - 0x6b, 0x6e, 0x88, 0x72, 0x25, 0xec, 0x78, 0x42, 0x3d, 0xdb, 0xb5, 0x3a, 0x63, 0xa8, 0xfc, 0x7d, - 0xa8, 0x1c, 0xb3, 0x0d, 0xc4, 0xfb, 0xc0, 0x76, 0x7e, 0x63, 0xcc, 0x15, 0x09, 0x9f, 0x09, 0xf8, - 0xac, 0x56, 0x33, 0x30, 0x72, 0xbc, 0x5e, 0x46, 0x7a, 0x89, 0x5b, 0x21, 0x9e, 0x40, 0xe2, 0xa2, - 0xe8, 0x9a, 0xf4, 0x17, 0x89, 0xdd, 0xb6, 0xf9, 0xb7, 0xfd, 0x60, 0x36, 0x6f, 0x7d, 0xbf, 0x36, - 0xd3, 0x15, 0xa8, 0xf2, 0x6b, 0x42, 0x60, 0x7b, 0xd0, 0xd2, 0x84, 0x43, 0x9e, 0x39, 0x93, 0x46, - 0x6d, 0x67, 0x19, 0x15, 0xd7, 0x52, 0xdd, 0x82, 0xeb, 0x99, 0x1f, 0x22, 0x03, 0xbf, 0x90, 0x60, - 0x39, 0x48, 0xb7, 0x0b, 0xad, 0xd5, 0x1f, 0x41, 0xd9, 0x08, 0x16, 0x14, 0xee, 0xdb, 0xd0, 0xf8, - 0x53, 0x9f, 0x16, 0x3e, 0xf5, 0x69, 0x0f, 0xdc, 0xd3, 0xf6, 0xee, 0xa7, 0x67, 0xcd, 0x6f, 0xe7, - 0xfa, 0x35, 0x91, 0xd5, 0x3a, 0x7c, 0xb9, 0xd6, 0x3b, 0x79, 0xc1, 0xfb, 0x46, 0xaa, 0x78, 0xb0, - 0xa3, 0x2a, 0xb3, 0xdb, 0x08, 0x5f, 0x20, 0x34, 0xf7, 0x4b, 0x09, 0x60, 0x5c, 0x5d, 0x16, 0x66, - 0xf0, 0x53, 0xa8, 0x1a, 0x7c, 0xc9, 0x89, 0x26, 0xdf, 0xfc, 0xf4, 0xac, 0xb9, 0x9d, 0x6b, 0xb2, - 0x50, 0xaa, 0x13, 0x2e, 0xd5, 0xd2, 0xf2, 0xcc, 0xbd, 0x9c, 0x59, 0x2b, 0xd5, 0x0d, 0xd6, 0xe8, - 0x87, 0xcb, 0x08, 0x93, 0xef, 0xfc, 0x71, 0x0d, 0x8a, 0x87, 0xbe, 0x25, 0x0f, 0x60, 0x2d, 0xf1, - 0x7a, 0x3a, 0xe1, 0xb6, 0x99, 0x7a, 0x10, 0xac, 0xef, 0xcd, 0x0c, 0x0d, 0x77, 0x95, 0x6d, 0x58, - 0x8d, 0xbf, 0x1b, 0xee, 0x4c, 0x5c, 0x21, 0x86, 0xac, 0xbf, 0x3b, 0x2b, 0x32, 0xda, 0xea, 0x08, - 0x20, 0xf6, 0x86, 0xf7, 0xd6, 0xc4, 0xf9, 0x63, 0x60, 0x5d, 0x9f, 0x11, 0x18, 0x37, 0x29, 0xfe, - 0xb6, 0x36, 0xd9, 0xa4, 0x18, 0x72, 0x8a, 0x49, 0x19, 0x6f, 0x5f, 0xb2, 0x07, 0xb5, 0xd4, 0x43, - 0xd2, 0xed, 0x89, 0x6b, 0x24, 0xc1, 0xf5, 0xbb, 0x73, 0x80, 0xe3, 0x7b, 0xa6, 0xde, 0xda, 0x26, - 0xef, 0x99, 0x04, 0x4f, 0xd9, 0x33, 0xfb, 0xd1, 0x4c, 0x1e, 0xc1, 0xfa, 0xb9, 0x17, 0xa8, 0xe6, - 0xc4, 0x85, 0xd2, 0xf0, 0xfa, 0x77, 0xe6, 0x82, 0x47, 0x3b, 0x0f, 0x60, 0x2d, 0xd1, 0x65, 0x4f, - 0x3e, 0x0d, 0x71, 0xe8, 0x94, 0xd3, 0x10, 0x87, 0x46, 0xbb, 0xfd, 0x02, 0x2e, 0x9d, 0xef, 0x18, - 0xb4, 0xc9, 0xa7, 0x2a, 0x8d, 0xaf, 0xdf, 0x9b, 0x0f, 0x1f, 0x77, 0x6c, 0xb2, 0x53, 0x9c, 0xe2, - 0xd8, 0x24, 0x78, 0x8a, 0x63, 0x93, 0xe0, 0x38, 0xbd, 0x89, 0x46, 0x61, 0x32, 0xbd, 0x71, 0xe8, - 0x14, 0x7a, 0xb3, 0xaa, 0xb4, 0xfc, 0x4b, 0x90, 0x33, 0x2a, 0xb4, 0x3e, 0xc3, 0x42, 0xf1, 0x09, - 0xf5, 0xfb, 0x73, 0x4e, 0x88, 0xf6, 0xff, 0x29, 0x94, 0x79, 0x01, 0x55, 0x27, 0x87, 0x46, 0x80, - 0xa9, 0xef, 0x4e, 0xc7, 0x44, 0xe5, 0x6a, 0x49, 0xee, 0x42, 0x35, 0x8c, 0x97, 0x9b, 0xb3, 0xc4, - 0x5d, 0xfd, 0x9d, 0x59, 0x50, 0xe3, 0x0d, 0xea, 0xe5, 0x5f, 0xbd, 0x7a, 0xbe, 0x2b, 0xb5, 0x7f, - 0xf8, 0xc9, 0x8b, 0x86, 0xf4, 0xd9, 0x8b, 0x86, 0xf4, 0x9f, 0x17, 0x0d, 0xe9, 0x77, 0x2f, 0x1b, - 0x4b, 0x9f, 0xbd, 0x6c, 0x2c, 0x7d, 0xf1, 0xb2, 0xb1, 0xf4, 0xb3, 0xa6, 0x65, 0xd3, 0xfe, 0xb0, - 0xa7, 0x19, 0xc4, 0xd1, 0x8f, 0x87, 0xae, 0x69, 0x23, 0x5b, 0x3f, 0x1a, 0x35, 0x0d, 0xe2, 0x61, - 0x7d, 0x14, 0xff, 0xb7, 0x1f, 0xfb, 0xcf, 0x60, 0xaf, 0xc2, 0x2a, 0xde, 0xdd, 0xff, 0x07, 0x00, - 0x00, 0xff, 0xff, 0xb1, 0xfb, 0x8e, 0xd9, 0xd3, 0x1c, 0x00, 0x00, + 0x15, 0x17, 0xf7, 0xaf, 0xf4, 0x24, 0xcb, 0x32, 0x23, 0xdb, 0xd4, 0xda, 0x96, 0x64, 0xd6, 0x69, + 0x14, 0x39, 0x22, 0x23, 0x3b, 0xb5, 0x8b, 0x45, 0x11, 0xd4, 0x52, 0xed, 0x5a, 0x40, 0xe5, 0x14, + 0x6b, 0x27, 0x45, 0x7b, 0x59, 0xcc, 0x92, 0x23, 0x8a, 0xf0, 0x92, 0xa3, 0x92, 0xb3, 0xca, 0x0a, + 0x05, 0x8a, 0xa2, 0x40, 0x2f, 0xbd, 0xb4, 0x40, 0xfb, 0x0d, 0x7a, 0xe9, 0xd1, 0x28, 0x74, 0xed, + 0xa5, 0x97, 0x06, 0x39, 0x05, 0x39, 0xb4, 0x69, 0x80, 0xa6, 0x85, 0x7d, 0xf0, 0x27, 0x28, 0x7a, + 0x2d, 0x38, 0x33, 0xe4, 0x72, 0x28, 0x72, 0x97, 0x2a, 0x64, 0x23, 0x17, 0x61, 0xe7, 0xcd, 0x9b, + 0x37, 0xef, 0xfd, 0xde, 0x9b, 0xf7, 0x1e, 0x9f, 0xe0, 0xfa, 0xde, 0xd0, 0x74, 0x02, 0x74, 0xe8, + 0xd2, 0x23, 0xd3, 0x0a, 0x48, 0x18, 0x5a, 0xfb, 0xc8, 0xf5, 0xcd, 0xc3, 0x4d, 0x93, 0x0e, 0x8d, + 0x83, 0x80, 0x50, 0xa2, 0x6a, 0x7b, 0x43, 0x43, 0xb0, 0x18, 0x23, 0x16, 0xe3, 0x70, 0xb3, 0xb5, + 0x6c, 0x91, 0xd0, 0x23, 0xa1, 0xd9, 0x43, 0x21, 0x36, 0x0f, 0x37, 0x7b, 0x98, 0xa2, 0x4d, 0xd3, + 0x22, 0xae, 0xcf, 0x4f, 0xb6, 0x2e, 0x8b, 0x7d, 0x2f, 0x74, 0x22, 0x89, 0x5e, 0xe8, 0x88, 0x8d, + 0x25, 0xbe, 0xd1, 0x65, 0x2b, 0x93, 0x2f, 0xc4, 0xd6, 0x8d, 0x62, 0x85, 0x8e, 0x0e, 0x70, 0xcc, + 0xb5, 0xe8, 0x10, 0x87, 0xf0, 0xd3, 0xd1, 0xaf, 0x58, 0xac, 0x43, 0x88, 0xd3, 0xc7, 0x26, 0x5b, + 0xf5, 0x06, 0x7b, 0x26, 0xf2, 0x8f, 0xc4, 0xd6, 0x05, 0xe4, 0xb9, 0x3e, 0x31, 0xd9, 0x5f, 0x4e, + 0xd2, 0xff, 0x56, 0x81, 0xf3, 0xbb, 0xa1, 0xb3, 0x45, 0x7c, 0x1b, 0xdb, 0x1f, 0x04, 0xc8, 0xea, + 0x63, 0xf5, 0x1a, 0x00, 0xbb, 0xaf, 0xeb, 0x23, 0x0f, 0x6b, 0xca, 0xaa, 0xb2, 0x36, 0xd3, 0x99, + 0x61, 0x94, 0x47, 0xc8, 0xc3, 0xea, 0x9b, 0x30, 0x4f, 0x18, 0x63, 0x17, 0xd9, 0x76, 0x80, 0xc3, + 0x50, 0xab, 0x30, 0x96, 0x73, 0x9c, 0x7a, 0x8f, 0x13, 0xd5, 0xb7, 0xe0, 0x7c, 0x2f, 0x70, 0x6d, + 0x07, 0x07, 0x09, 0x5f, 0x95, 0xf1, 0xcd, 0x0b, 0x72, 0xcc, 0xf8, 0x36, 0x2c, 0xe0, 0x21, 0xc5, + 0x81, 0x8f, 0xfa, 0x09, 0x67, 0x8d, 0x71, 0x9e, 0x8f, 0xe9, 0x31, 0xeb, 0x4d, 0xb8, 0x70, 0x88, + 0xfa, 0xae, 0x8d, 0x28, 0x19, 0x49, 0xad, 0x33, 0xde, 0x85, 0x64, 0x23, 0x66, 0x7e, 0x08, 0xe7, + 0x6d, 0xdc, 0xc7, 0x0e, 0xa2, 0xb8, 0x8b, 0x3c, 0x32, 0xf0, 0xa9, 0xd6, 0x58, 0x55, 0xd6, 0x66, + 0x6f, 0x2d, 0x19, 0x02, 0xec, 0xc8, 0x65, 0x86, 0x70, 0x99, 0xb1, 0x4d, 0x5c, 0x7f, 0xab, 0xf6, + 0xc9, 0x57, 0x2b, 0x53, 0x9d, 0xf9, 0xf8, 0xdc, 0x3d, 0x76, 0xac, 0x7d, 0xeb, 0x97, 0x2f, 0x9f, + 0xad, 0x67, 0x8c, 0xfe, 0xf5, 0xcb, 0x67, 0xeb, 0xad, 0x94, 0x6f, 0x32, 0x20, 0xea, 0x4b, 0x70, + 0x39, 0x43, 0xea, 0xe0, 0xf0, 0x80, 0xf8, 0x21, 0xd6, 0xff, 0xa2, 0xc0, 0xfc, 0x6e, 0xe8, 0xdc, + 0xb3, 0xed, 0xef, 0x89, 0x7b, 0xce, 0x08, 0xf2, 0xbb, 0xd0, 0x10, 0x86, 0x56, 0xcb, 0x19, 0x2a, + 0xd8, 0xdb, 0x9b, 0x05, 0x06, 0x2e, 0xc9, 0x06, 0xa6, 0x34, 0xd6, 0x35, 0xb8, 0x24, 0x53, 0x12, + 0xf3, 0x8e, 0x15, 0x38, 0xb7, 0x1b, 0x3a, 0x1d, 0x7c, 0xc6, 0xd6, 0xe5, 0x3a, 0xbf, 0x9a, 0xef, + 0xfc, 0xf6, 0xbb, 0x05, 0x16, 0x69, 0xb2, 0x45, 0x23, 0x25, 0xf5, 0xcb, 0x70, 0x51, 0x22, 0x24, + 0xf6, 0xfc, 0x89, 0xbb, 0xeb, 0xbe, 0xed, 0xd2, 0x2d, 0x1e, 0xb9, 0xaf, 0xf9, 0x85, 0x94, 0x75, + 0x4f, 0x4a, 0x43, 0xe1, 0x9e, 0x14, 0x25, 0x31, 0xe7, 0x37, 0x0a, 0x5c, 0xd8, 0x0d, 0x9d, 0x0f, + 0xfd, 0xde, 0x99, 0xbf, 0xf9, 0xf6, 0x7b, 0x05, 0x8a, 0x5e, 0x95, 0x15, 0x95, 0xef, 0xd6, 0xaf, + 0xc0, 0xd2, 0x09, 0x62, 0x56, 0xdd, 0x1f, 0xb9, 0x74, 0xdf, 0x0e, 0xd0, 0xc7, 0x1d, 0xfc, 0x31, + 0x0a, 0xec, 0xd7, 0xab, 0xae, 0x7c, 0xb7, 0x50, 0x57, 0x26, 0x26, 0xea, 0xfe, 0x47, 0x81, 0x37, + 0x76, 0x43, 0x87, 0x1b, 0xf1, 0x18, 0xd3, 0x6d, 0xe2, 0xef, 0xb9, 0x81, 0xa7, 0x2e, 0x42, 0xdd, + 0x27, 0xbe, 0xc5, 0x75, 0xad, 0x75, 0xf8, 0x22, 0x2f, 0x02, 0x2a, 0xa5, 0x73, 0x64, 0x35, 0x3f, + 0x47, 0x5e, 0x85, 0x99, 0xd0, 0x75, 0x7c, 0x44, 0x07, 0x01, 0x16, 0x79, 0x74, 0x44, 0xc8, 0x00, + 0x57, 0xcf, 0x00, 0xd7, 0xbe, 0x1b, 0x21, 0x92, 0xd5, 0x29, 0x82, 0x64, 0x59, 0x86, 0x24, 0x6b, + 0x9f, 0xfe, 0x8f, 0x0a, 0x68, 0x69, 0xfa, 0x87, 0x07, 0x36, 0xa2, 0xd8, 0xde, 0xee, 0x23, 0xd7, + 0x53, 0x57, 0x60, 0x16, 0x1f, 0x62, 0x9f, 0x76, 0xd3, 0x10, 0x00, 0x23, 0x3d, 0x62, 0x38, 0x5c, + 0x87, 0xb9, 0x5e, 0x9f, 0x58, 0x4f, 0xbb, 0xfb, 0xd8, 0x75, 0xf6, 0x29, 0x03, 0xa1, 0xd6, 0x99, + 0x65, 0xb4, 0x87, 0x8c, 0xa4, 0xae, 0xc1, 0x82, 0x70, 0x54, 0x88, 0x63, 0x41, 0x55, 0xc6, 0x26, + 0x1c, 0xf8, 0x18, 0x0b, 0x61, 0x3b, 0xd0, 0xf4, 0xb0, 0xd7, 0xc3, 0x41, 0x54, 0x46, 0xaa, 0x6b, + 0xb3, 0xb7, 0xde, 0x36, 0x8a, 0x8a, 0xb7, 0xc1, 0x1f, 0xc7, 0x47, 0x71, 0xf6, 0x10, 0x69, 0x31, + 0x3e, 0x9f, 0xe7, 0x9f, 0x46, 0xae, 0x7f, 0x64, 0x58, 0x9b, 0x59, 0x58, 0xbf, 0x53, 0x04, 0xeb, + 0x37, 0x0a, 0x60, 0x4d, 0xc3, 0xa7, 0xff, 0xae, 0x0a, 0x0b, 0xbb, 0xa1, 0xf3, 0x18, 0xfb, 0xf6, + 0x13, 0xf2, 0x60, 0x78, 0x76, 0x98, 0xbe, 0x09, 0xf3, 0x94, 0x3c, 0xc5, 0x7e, 0xd7, 0x22, 0x3e, + 0x0d, 0x90, 0x45, 0x45, 0x4c, 0x9d, 0x63, 0xd4, 0x6d, 0x41, 0x54, 0xb7, 0x93, 0xb2, 0xc2, 0xc2, + 0x69, 0xeb, 0x66, 0x04, 0xd2, 0x97, 0x5f, 0xad, 0x5c, 0xe4, 0xd5, 0x25, 0xb4, 0x9f, 0x1a, 0x2e, + 0x31, 0x3d, 0x44, 0xf7, 0x8d, 0x1d, 0x9f, 0x7e, 0x7e, 0xbc, 0x01, 0xa2, 0xec, 0xec, 0xf8, 0x34, + 0x2e, 0x31, 0xea, 0x25, 0x68, 0x84, 0xd8, 0xb7, 0x71, 0x20, 0x82, 0x4e, 0xac, 0xd4, 0x16, 0x4c, + 0x07, 0xd8, 0xc2, 0xee, 0x21, 0x0e, 0x04, 0xb6, 0xc9, 0x3a, 0x42, 0x95, 0xa2, 0xc0, 0xc1, 0xb4, + 0xeb, 0xf6, 0xac, 0x18, 0x55, 0x4e, 0xd9, 0xe9, 0x59, 0x79, 0xde, 0x99, 0x2e, 0xe1, 0x9d, 0x99, + 0xac, 0x77, 0xde, 0x2b, 0xf2, 0xce, 0x15, 0xd9, 0x3b, 0x92, 0x03, 0xf4, 0x7f, 0xd5, 0x40, 0x8d, + 0x2a, 0x3c, 0x3b, 0xb6, 0x8d, 0xfa, 0x7d, 0xee, 0x97, 0x09, 0x99, 0xa9, 0xf4, 0x8b, 0xcf, 0xf8, + 0xb7, 0x3a, 0xd1, 0xbf, 0xb5, 0x93, 0xfe, 0x2d, 0xc2, 0xfc, 0x12, 0x34, 0x02, 0xbc, 0x37, 0xf0, + 0x6d, 0x81, 0xb8, 0x58, 0x45, 0xca, 0xc9, 0xf1, 0x10, 0x6a, 0xcd, 0xd5, 0x6a, 0xa4, 0x9c, 0x14, + 0x10, 0xa1, 0x7a, 0x1f, 0x9a, 0xdc, 0xad, 0x11, 0xe2, 0xd5, 0xd3, 0x86, 0x44, 0x7c, 0x56, 0x9d, + 0x87, 0x0a, 0x25, 0xc2, 0x1f, 0x15, 0x4a, 0x54, 0x15, 0x6a, 0x36, 0xa2, 0x48, 0x03, 0x46, 0x61, + 0xbf, 0xd5, 0x07, 0x30, 0xfd, 0xd3, 0x01, 0xa1, 0xb8, 0xeb, 0xda, 0xda, 0xec, 0xe9, 0xc3, 0xaf, + 0xc9, 0x0e, 0xef, 0xd8, 0xea, 0x43, 0x98, 0x71, 0x50, 0xd8, 0xed, 0xbb, 0x9e, 0x4b, 0xb5, 0xb9, + 0xd3, 0x0b, 0x9a, 0x76, 0x50, 0xf8, 0x83, 0xe8, 0x70, 0xa4, 0xa5, 0x87, 0x3d, 0xa2, 0x9d, 0xe3, + 0x5a, 0x46, 0xbf, 0xd5, 0x2b, 0x30, 0x43, 0x87, 0x5d, 0x12, 0xb8, 0x8e, 0xeb, 0x6b, 0xf3, 0x3c, + 0x8c, 0xe9, 0xf0, 0x03, 0xb6, 0x6e, 0xdf, 0x29, 0x8a, 0xaf, 0x6b, 0x99, 0xfe, 0x51, 0x0e, 0x25, + 0xfd, 0xaf, 0x3c, 0xa7, 0x8e, 0xc8, 0x1d, 0x1c, 0x0e, 0xfa, 0xf4, 0xeb, 0x17, 0x67, 0x49, 0x71, + 0xab, 0xa7, 0x8b, 0x9b, 0x84, 0x49, 0x43, 0xc6, 0x44, 0xd5, 0xa0, 0x19, 0x0e, 0x2c, 0x2b, 0xd2, + 0x2b, 0x7a, 0xd7, 0xd3, 0x9d, 0x78, 0x19, 0x09, 0xb3, 0xd0, 0x20, 0xc4, 0xe2, 0x2d, 0xf3, 0x45, + 0xe9, 0x0c, 0x9a, 0x0b, 0x96, 0xfe, 0x7b, 0xfe, 0x95, 0x23, 0x8a, 0xd5, 0x16, 0xa2, 0xd6, 0x7e, + 0x41, 0x45, 0x3e, 0x99, 0x12, 0x2b, 0x79, 0x29, 0xf1, 0x55, 0x7c, 0xdc, 0x48, 0x85, 0xbb, 0x3e, + 0xbe, 0x70, 0x37, 0xb2, 0x39, 0xec, 0x76, 0x11, 0x3e, 0x99, 0x6f, 0x94, 0x34, 0x04, 0xfa, 0x1f, + 0x2b, 0xac, 0x4b, 0xe4, 0x79, 0xed, 0xbe, 0x50, 0xe7, 0xec, 0xca, 0xcb, 0x0a, 0xcc, 0xf6, 0xa2, + 0x7b, 0xe4, 0xd0, 0x62, 0xa4, 0x47, 0x05, 0x60, 0xd7, 0x4a, 0x82, 0x5d, 0x2f, 0x91, 0xe7, 0x4f, + 0x60, 0xd4, 0x2e, 0xc2, 0xe8, 0x7a, 0x5e, 0x9e, 0x97, 0xf0, 0xd0, 0xff, 0x59, 0x61, 0x7d, 0x1d, + 0x0f, 0xaf, 0x27, 0x4c, 0xbd, 0xd7, 0x5d, 0x86, 0x55, 0xa8, 0x31, 0xbb, 0x38, 0x46, 0xec, 0x37, + 0xcb, 0xf0, 0x47, 0x5e, 0x8f, 0xf4, 0x93, 0x0c, 0xcf, 0x56, 0x51, 0x55, 0xb5, 0xb1, 0xe5, 0x7a, + 0xa8, 0xcf, 0x3b, 0x96, 0x5a, 0x27, 0x59, 0xe7, 0xc1, 0xd9, 0xcc, 0x85, 0x33, 0x4e, 0x74, 0xd3, + 0xa9, 0x44, 0x37, 0xa1, 0x94, 0x96, 0xed, 0x1f, 0xb3, 0x38, 0xea, 0xff, 0x55, 0x60, 0x51, 0x4e, + 0x81, 0xa2, 0x71, 0x3e, 0xab, 0x3c, 0x77, 0x8a, 0x0e, 0x3a, 0xc9, 0x0c, 0xb5, 0x74, 0x66, 0x18, + 0xfb, 0x3c, 0xdb, 0xdf, 0x2e, 0x32, 0x7c, 0xa5, 0x30, 0xc7, 0x8b, 0xce, 0xf9, 0xef, 0x0a, 0xcb, + 0x4d, 0xbc, 0xe3, 0xfb, 0x21, 0x0a, 0x90, 0x17, 0x4e, 0x32, 0xfa, 0x0e, 0xcc, 0xa0, 0x01, 0xdd, + 0x27, 0x81, 0x4b, 0x8f, 0xb8, 0xb9, 0x5b, 0xda, 0xe7, 0xc7, 0x1b, 0x8b, 0xa2, 0x5c, 0x09, 0x3b, + 0x1e, 0xd3, 0xc0, 0xf5, 0x9d, 0xce, 0x88, 0x55, 0x7d, 0x1f, 0x1a, 0x07, 0xec, 0x02, 0x31, 0x1f, + 0x58, 0x2d, 0x6e, 0x8c, 0xb9, 0x22, 0xf1, 0x98, 0x80, 0x9f, 0x6a, 0x6f, 0x44, 0x46, 0x8e, 0xe4, + 0xe5, 0xa4, 0x97, 0xb4, 0x15, 0x62, 0x04, 0x92, 0x26, 0x25, 0x9f, 0x49, 0x7f, 0x56, 0xd8, 0xd7, + 0x36, 0xdf, 0xdb, 0x8e, 0x4e, 0xf3, 0xd6, 0xf7, 0x95, 0x99, 0xae, 0x41, 0x93, 0x7f, 0x26, 0x44, + 0xb6, 0x47, 0x2d, 0x4d, 0xbc, 0xe4, 0x99, 0x53, 0x36, 0x6a, 0x35, 0xcf, 0xa8, 0xb4, 0x96, 0xfa, + 0x0a, 0x5c, 0xcb, 0xdd, 0x48, 0x0c, 0xfc, 0x42, 0x81, 0xe9, 0x28, 0xdd, 0x9e, 0x69, 0xad, 0xfe, + 0x08, 0xea, 0x56, 0x24, 0x50, 0xb8, 0x6f, 0xd1, 0xe0, 0xa3, 0x3e, 0x23, 0x1e, 0xf5, 0x19, 0xf7, + 0xfc, 0xa3, 0xad, 0xf5, 0x4f, 0x8f, 0x37, 0xbe, 0x59, 0xe8, 0x57, 0x29, 0xab, 0x75, 0xb8, 0xb8, + 0xf6, 0x3b, 0x45, 0xc1, 0xfb, 0x46, 0xa6, 0x78, 0xb0, 0xa7, 0xaa, 0xb2, 0xaf, 0x11, 0x2e, 0x20, + 0x36, 0xf7, 0x4b, 0x05, 0x60, 0x54, 0x5d, 0xce, 0xcc, 0xe0, 0x27, 0xd0, 0xb4, 0xb8, 0xc8, 0xb1, + 0x26, 0xdf, 0xf8, 0xf4, 0x78, 0x63, 0xb5, 0xd0, 0x64, 0xa1, 0x54, 0x27, 0x16, 0xd5, 0x36, 0x8a, + 0xcc, 0xbd, 0x98, 0x5b, 0x2b, 0xf5, 0x45, 0xd6, 0xe8, 0xc7, 0x62, 0x62, 0x93, 0xaf, 0xc3, 0x95, + 0x9c, 0x0f, 0xe1, 0x78, 0xbb, 0x5d, 0xd1, 0x14, 0xfd, 0x1a, 0x7b, 0x00, 0xe9, 0x92, 0x2b, 0x6d, + 0xeb, 0x70, 0x35, 0x2f, 0x23, 0x48, 0x3c, 0xbf, 0xaa, 0xb0, 0xf1, 0x87, 0x5c, 0x92, 0x52, 0x8d, + 0xbd, 0x22, 0x35, 0xf6, 0x51, 0x03, 0x8d, 0xc3, 0xb8, 0x67, 0x61, 0xbf, 0xff, 0xef, 0xa1, 0xa0, + 0xfa, 0x3e, 0x00, 0xc7, 0xa8, 0xbb, 0x87, 0x79, 0x2e, 0x2c, 0x71, 0x78, 0x86, 0x1f, 0x79, 0x80, + 0x27, 0x8e, 0x1a, 0x58, 0xd0, 0x09, 0xc5, 0x73, 0x86, 0x2e, 0xb2, 0xc5, 0xfa, 0x77, 0xd9, 0xd0, + 0x45, 0x26, 0xc6, 0x40, 0x65, 0x1b, 0x0d, 0x25, 0xdb, 0x68, 0x44, 0x48, 0xde, 0xfa, 0xc3, 0x1c, + 0x54, 0x77, 0x43, 0x47, 0xed, 0xc3, 0x9c, 0x34, 0xed, 0x1e, 0x33, 0x1d, 0xc8, 0x0c, 0x70, 0x5b, + 0x9b, 0xa5, 0x59, 0x13, 0xd5, 0x5c, 0x98, 0x4d, 0xcf, 0x79, 0xd7, 0xc6, 0x4a, 0x48, 0x71, 0xb6, + 0xde, 0x2d, 0xcb, 0x99, 0x5c, 0xb5, 0x07, 0x90, 0x9a, 0xb9, 0xbe, 0x35, 0xf6, 0xfc, 0x88, 0xb1, + 0x65, 0x96, 0x64, 0x4c, 0x9b, 0x94, 0x9e, 0x85, 0x8e, 0x37, 0x29, 0xc5, 0x39, 0xc1, 0xa4, 0x9c, + 0x59, 0xa5, 0x1a, 0xc0, 0x7c, 0x66, 0xf0, 0x77, 0x73, 0xac, 0x0c, 0x99, 0xb9, 0x75, 0xfb, 0x14, + 0xcc, 0xe9, 0x3b, 0x33, 0xb3, 0xd1, 0xf1, 0x77, 0xca, 0xcc, 0x13, 0xee, 0xcc, 0x1f, 0x72, 0xaa, + 0x43, 0x58, 0x38, 0x31, 0x31, 0xdc, 0x18, 0x2b, 0x28, 0xcb, 0xde, 0xfa, 0xd6, 0xa9, 0xd8, 0x93, + 0x9b, 0xfb, 0x30, 0x27, 0x7d, 0x15, 0x8d, 0x7f, 0x0d, 0x69, 0xd6, 0x09, 0xaf, 0x21, 0x2f, 0xeb, + 0xa9, 0x3f, 0x83, 0x0b, 0x27, 0x3b, 0x3c, 0x63, 0xfc, 0xab, 0xca, 0xf2, 0xb7, 0xee, 0x9c, 0x8e, + 0x3f, 0xed, 0xd8, 0x4c, 0x1a, 0x1d, 0xef, 0x58, 0x99, 0x79, 0x82, 0x63, 0x0b, 0x32, 0x53, 0x1f, + 0xe6, 0xa4, 0xc6, 0x6e, 0x3c, 0xbc, 0x69, 0xd6, 0x09, 0xf0, 0xe6, 0x75, 0x55, 0xea, 0xcf, 0x41, + 0xcd, 0xe9, 0xa8, 0xcc, 0x12, 0x82, 0xd2, 0x07, 0x5a, 0x77, 0x4f, 0x79, 0x20, 0xb9, 0xff, 0xc7, + 0x50, 0xe7, 0x0d, 0x8f, 0x3e, 0x3e, 0x34, 0x22, 0x9e, 0xd6, 0xfa, 0x64, 0x9e, 0xa4, 0xd6, 0x4e, + 0xa9, 0x5d, 0x68, 0xc6, 0xf1, 0x72, 0xa3, 0x4c, 0xdc, 0xb5, 0xde, 0x29, 0xc3, 0x35, 0xba, 0xa0, + 0x55, 0xff, 0xc5, 0xcb, 0x67, 0xeb, 0xca, 0xd6, 0xf7, 0x3f, 0x79, 0xbe, 0xac, 0x7c, 0xf6, 0x7c, + 0x59, 0xf9, 0xf7, 0xf3, 0x65, 0xe5, 0xb7, 0x2f, 0x96, 0xa7, 0x3e, 0x7b, 0xb1, 0x3c, 0xf5, 0xc5, + 0x8b, 0xe5, 0xa9, 0x9f, 0x6c, 0x38, 0x2e, 0xdd, 0x1f, 0xf4, 0x0c, 0x8b, 0x78, 0xe6, 0xc1, 0xc0, + 0xb7, 0x5d, 0xe4, 0x9a, 0x7b, 0xc3, 0x0d, 0x8b, 0x04, 0xd8, 0x1c, 0xa6, 0xff, 0x4b, 0xcb, 0xfe, + 0x45, 0xdb, 0x6b, 0xb0, 0x0e, 0xe5, 0xf6, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x0a, 0x51, 0xa3, + 0x1b, 0x5c, 0x1e, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -3931,94 +4175,255 @@ func (m *MsgConfirmResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func encodeVarintTx(dAtA []byte, offset int, v uint64) int { - offset -= sovTx(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ +func (m *MsgOracleSetConfirmResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - dAtA[offset] = uint8(v) - return base + return dAtA[:n], nil } -func (m *MsgBondedOracle) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.OracleAddress) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.BridgerAddress) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.ExternalAddress) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.ValidatorAddress) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = m.DelegateAmount.Size() - n += 1 + l + sovTx(uint64(l)) - return n + +func (m *MsgOracleSetConfirmResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgBondedOracleResponse) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgOracleSetConfirmResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - return n + return len(dAtA) - i, nil } -func (m *MsgAddDelegate) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.OracleAddress) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) +func (m *MsgConfirmBatchResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - l = m.Amount.Size() - n += 1 + l + sovTx(uint64(l)) - return n + return dAtA[:n], nil } -func (m *MsgAddDelegateResponse) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgConfirmBatchResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgConfirmBatchResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - return n + return len(dAtA) - i, nil } -func (m *MsgReDelegate) Size() (n int) { - if m == nil { - return 0 +func (m *MsgBridgeCallConfirmResponse) 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 *MsgBridgeCallConfirmResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgBridgeCallConfirmResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.ChainName) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + return len(dAtA) - i, nil +} + +func (m *MsgSendToExternal) 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 *MsgSendToExternal) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgSendToExternal) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ChainName) > 0 { + i -= len(m.ChainName) + copy(dAtA[i:], m.ChainName) + i = encodeVarintTx(dAtA, i, uint64(len(m.ChainName))) + i-- + dAtA[i] = 0x2a + } + { + size, err := m.BridgeFee.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + if len(m.Dest) > 0 { + i -= len(m.Dest) + copy(dAtA[i:], m.Dest) + i = encodeVarintTx(dAtA, i, uint64(len(m.Dest))) + i-- + dAtA[i] = 0x12 + } + if len(m.Sender) > 0 { + i -= len(m.Sender) + copy(dAtA[i:], m.Sender) + i = encodeVarintTx(dAtA, i, uint64(len(m.Sender))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MsgSendToExternalResponse) 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 *MsgSendToExternalResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgSendToExternalResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.BatchNonce != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.BatchNonce)) + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + +func encodeVarintTx(dAtA []byte, offset int, v uint64) int { + offset -= sovTx(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *MsgBondedOracle) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.OracleAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.BridgerAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ExternalAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ValidatorAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = m.DelegateAmount.Size() + n += 1 + l + sovTx(uint64(l)) + return n +} + +func (m *MsgBondedOracleResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgAddDelegate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.OracleAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = m.Amount.Size() + n += 1 + l + sovTx(uint64(l)) + return n +} + +func (m *MsgAddDelegateResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgReDelegate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } l = len(m.OracleAddress) if l > 0 { @@ -4575,6 +4980,70 @@ func (m *MsgConfirmResponse) Size() (n int) { return n } +func (m *MsgOracleSetConfirmResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgConfirmBatchResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgBridgeCallConfirmResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgSendToExternal) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Sender) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.Dest) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = m.Amount.Size() + n += 1 + l + sovTx(uint64(l)) + l = m.BridgeFee.Size() + n += 1 + l + sovTx(uint64(l)) + l = len(m.ChainName) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSendToExternalResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BatchNonce != 0 { + n += 1 + sovTx(uint64(m.BatchNonce)) + } + return n +} + func sovTx(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -8963,6 +9432,437 @@ func (m *MsgConfirmResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *MsgOracleSetConfirmResponse) 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: MsgOracleSetConfirmResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgOracleSetConfirmResponse: 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 *MsgConfirmBatchResponse) 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: MsgConfirmBatchResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgConfirmBatchResponse: 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 *MsgBridgeCallConfirmResponse) 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: MsgBridgeCallConfirmResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgBridgeCallConfirmResponse: 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 *MsgSendToExternal) 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: MsgSendToExternal: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgSendToExternal: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sender", 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.Sender = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Dest", 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.Dest = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BridgeFee", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.BridgeFee.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ChainName", 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.ChainName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgSendToExternalResponse) 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: MsgSendToExternalResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgSendToExternalResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BatchNonce", wireType) + } + m.BatchNonce = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BatchNonce |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func skipTx(dAtA []byte) (n int, err error) { l := len(dAtA) iNdEx := 0 diff --git a/x/erc20/migrations/v8/keys.go b/x/erc20/migrations/v8/keys.go index 25461e05..a113a741 100644 --- a/x/erc20/migrations/v8/keys.go +++ b/x/erc20/migrations/v8/keys.go @@ -9,6 +9,7 @@ import ( sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" fxtypes "github.com/pundiai/fx-core/v8/types" + legacytypes "github.com/pundiai/fx-core/v8/types/legacy" crosschaintypes "github.com/pundiai/fx-core/v8/x/crosschain/types" "github.com/pundiai/fx-core/v8/x/erc20/types" ) @@ -56,7 +57,7 @@ func (m Migrator) migrateParams(ctx sdk.Context, store storetypes.KVStore) error if len(bz) == 0 { return nil } - var legacyParams types.LegacyParams + var legacyParams legacytypes.LegacyERC20Params m.cdc.MustUnmarshal(bz, &legacyParams) store.Delete(ParamsKey) diff --git a/x/erc20/types/codec.go b/x/erc20/types/codec.go index db23441f..3955eadc 100644 --- a/x/erc20/types/codec.go +++ b/x/erc20/types/codec.go @@ -7,7 +7,6 @@ import ( codectypes "github.com/cosmos/cosmos-sdk/codec/types" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/msgservice" - govv1betal "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" ) // RegisterInterfaces register implementations @@ -15,44 +14,21 @@ func RegisterInterfaces(registry codectypes.InterfaceRegistry) { registry.RegisterImplementations( (*sdk.Msg)(nil), &MsgConvertCoin{}, - &MsgConvertERC20{}, - &MsgConvertDenom{}, - &MsgUpdateParams{}, - &MsgRegisterCoin{}, - &MsgRegisterERC20{}, &MsgToggleTokenConversion{}, - &MsgUpdateDenomAlias{}, &MsgRegisterNativeCoin{}, &MsgRegisterNativeERC20{}, &MsgRegisterBridgeToken{}, ) - registry.RegisterImplementations( - (*govv1betal.Content)(nil), - &RegisterCoinProposal{}, - &RegisterERC20Proposal{}, - &ToggleTokenConversionProposal{}, - &UpdateDenomAliasProposal{}, - ) + msgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc) } func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { cdc.RegisterConcrete(&MsgConvertCoin{}, fmt.Sprintf("%s/%s", ModuleName, "MsgConvertCoin"), nil) - cdc.RegisterConcrete(&MsgConvertERC20{}, fmt.Sprintf("%s/%s", ModuleName, "MsgConvertERC20"), nil) - cdc.RegisterConcrete(&MsgConvertDenom{}, fmt.Sprintf("%s/%s", ModuleName, "MsgConvertDenom"), nil) - cdc.RegisterConcrete(&MsgUpdateParams{}, fmt.Sprintf("%s/%s", ModuleName, "MsgUpdateParams"), nil) - cdc.RegisterConcrete(&MsgRegisterCoin{}, fmt.Sprintf("%s/%s", ModuleName, "MsgRegisterCoin"), nil) - cdc.RegisterConcrete(&MsgRegisterERC20{}, fmt.Sprintf("%s/%s", ModuleName, "MsgRegisterERC20"), nil) cdc.RegisterConcrete(&MsgToggleTokenConversion{}, fmt.Sprintf("%s/%s", ModuleName, "MsgToggleTokenConversion"), nil) - cdc.RegisterConcrete(&MsgUpdateDenomAlias{}, fmt.Sprintf("%s/%s", ModuleName, "MsgUpdateDenomAlias"), nil) cdc.RegisterConcrete(&MsgRegisterNativeCoin{}, fmt.Sprintf("%s/%s", ModuleName, "MsgRegisterNativeCoin"), nil) cdc.RegisterConcrete(&MsgRegisterNativeERC20{}, fmt.Sprintf("%s/%s", ModuleName, "MsgRegisterNativeERC20"), nil) cdc.RegisterConcrete(&MsgRegisterBridgeToken{}, fmt.Sprintf("%s/%s", ModuleName, "MsgRegisterBridgeToken"), nil) - - cdc.RegisterConcrete(&RegisterCoinProposal{}, fmt.Sprintf("%s/%s", ModuleName, "RegisterCoinProposal"), nil) - cdc.RegisterConcrete(&RegisterERC20Proposal{}, fmt.Sprintf("%s/%s", ModuleName, "RegisterERC20Proposal"), nil) - cdc.RegisterConcrete(&ToggleTokenConversionProposal{}, fmt.Sprintf("%s/%s", ModuleName, "ToggleTokenConversionProposal"), nil) - cdc.RegisterConcrete(&UpdateDenomAliasProposal{}, fmt.Sprintf("%s/%s", ModuleName, "UpdateDenomAliasProposal"), nil) } diff --git a/x/erc20/types/msg.go b/x/erc20/types/msg.go index 418b4bbb..8576c2e7 100644 --- a/x/erc20/types/msg.go +++ b/x/erc20/types/msg.go @@ -14,20 +14,6 @@ import ( fxtypes "github.com/pundiai/fx-core/v8/types" ) -var ( - _ sdk.Msg = &MsgConvertCoin{} - _ sdk.Msg = &MsgConvertERC20{} - - _ sdk.Msg = &MsgUpdateParams{} - _ sdk.Msg = &MsgRegisterCoin{} - _ sdk.Msg = &MsgRegisterERC20{} - _ sdk.Msg = &MsgToggleTokenConversion{} - _ sdk.Msg = &MsgUpdateDenomAlias{} - _ sdk.Msg = &MsgRegisterNativeCoin{} - _ sdk.Msg = &MsgRegisterNativeERC20{} - _ sdk.Msg = &MsgRegisterBridgeToken{} -) - func NewMsgConvertCoin(coin sdk.Coin, receiver common.Address, sender sdk.AccAddress) *MsgConvertCoin { return &MsgConvertCoin{ Coin: coin, @@ -63,14 +49,6 @@ func (m *MsgUpdateParams) ValidateBasic() error { return nil } -func (m *MsgRegisterCoin) ValidateBasic() error { - return nil -} - -func (m *MsgRegisterERC20) ValidateBasic() error { - return nil -} - func (m *MsgToggleTokenConversion) ValidateBasic() error { if _, err := sdk.AccAddressFromBech32(m.Authority); err != nil { return sdkerrors.ErrInvalidAddress.Wrapf("authority address: %s", err.Error()) diff --git a/x/evm/types/codec.go b/x/evm/types/codec.go index 631b66ab..c56a0bd2 100644 --- a/x/evm/types/codec.go +++ b/x/evm/types/codec.go @@ -5,10 +5,7 @@ import ( codectypes "github.com/cosmos/cosmos-sdk/codec/types" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/msgservice" - govv1betal "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1" "github.com/evmos/ethermint/crypto/ethsecp256k1" - - "github.com/pundiai/fx-core/v8/types/legacy" ) // RegisterInterfaces registers the client interfaces to protobuf Any. @@ -18,10 +15,6 @@ func RegisterInterfaces(registry codectypes.InterfaceRegistry) { &MsgCallContract{}, ) - registry.RegisterImplementations( - (*govv1betal.Content)(nil), - &legacy.InitEvmParamsProposal{}, - ) msgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc) } diff --git a/x/evm/types/msg.go b/x/evm/types/msg.go index 373e4725..4ff91a01 100644 --- a/x/evm/types/msg.go +++ b/x/evm/types/msg.go @@ -7,8 +7,6 @@ import ( "github.com/pundiai/fx-core/v8/contract" ) -var _ sdk.Msg = &MsgCallContract{} - func (m *MsgCallContract) ValidateBasic() error { if _, err := sdk.AccAddressFromBech32(m.Authority); err != nil { return sdkerrors.ErrInvalidAddress.Wrap("authority") diff --git a/x/gov/keeper/grpc_query_test.go b/x/gov/keeper/grpc_query_test.go index a7a9ac51..b3ae3674 100644 --- a/x/gov/keeper/grpc_query_test.go +++ b/x/gov/keeper/grpc_query_test.go @@ -35,16 +35,16 @@ func (suite *KeeperTestSuite) TestGRPCQueryCustomParams() { }, }, { - name: "erc20 MsgRegisterCoin", - msgUrl: sdk.MsgTypeURL(&erc20types.MsgRegisterCoin{}), + name: "erc20 MsgRegisterNativeCoin", + msgUrl: sdk.MsgTypeURL(&erc20types.MsgRegisterNativeCoin{}), malleate: func(expect govtypes.CustomParams) govtypes.CustomParams { expect.Quorum = govtypes.DefaultCustomParamQuorum25.String() return expect }, }, { - name: "erc20 MsgRegisterERC20", - msgUrl: sdk.MsgTypeURL(&erc20types.MsgRegisterERC20{}), + name: "erc20 MsgRegisterNativeERC20", + msgUrl: sdk.MsgTypeURL(&erc20types.MsgRegisterNativeERC20{}), malleate: func(expect govtypes.CustomParams) govtypes.CustomParams { expect.Quorum = govtypes.DefaultCustomParamQuorum25.String() return expect @@ -59,8 +59,8 @@ func (suite *KeeperTestSuite) TestGRPCQueryCustomParams() { }, }, { - name: "erc20 MsgUpdateDenomAlias", - msgUrl: sdk.MsgTypeURL(&erc20types.MsgUpdateDenomAlias{}), + name: "erc20 MsgRegisterBridgeToken", + msgUrl: sdk.MsgTypeURL(&erc20types.MsgRegisterBridgeToken{}), malleate: func(expect govtypes.CustomParams) govtypes.CustomParams { expect.Quorum = govtypes.DefaultCustomParamQuorum25.String() return expect diff --git a/x/gov/types/codec.go b/x/gov/types/codec.go index 0e7dadde..c8a48311 100644 --- a/x/gov/types/codec.go +++ b/x/gov/types/codec.go @@ -5,19 +5,12 @@ import ( codectypes "github.com/cosmos/cosmos-sdk/codec/types" sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/msgservice" - - "github.com/pundiai/fx-core/v8/types/legacy" ) // RegisterInterfaces register implementations func RegisterInterfaces(registry codectypes.InterfaceRegistry) { registry.RegisterImplementations( (*sdk.Msg)(nil), - - &legacy.MsgUpdateFXParams{}, - &legacy.MsgUpdateEGFParams{}, - &legacy.MsgUpdateParams{}, - &MsgUpdateStore{}, &MsgUpdateSwitchParams{}, &MsgUpdateCustomParams{}, @@ -27,9 +20,6 @@ func RegisterInterfaces(registry codectypes.InterfaceRegistry) { // RegisterLegacyAminoCodec registers concrete types on the Amino codec func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { - cdc.RegisterConcrete(&legacy.MsgUpdateFXParams{}, "gov/MsgUpdateFXParams", nil) - cdc.RegisterConcrete(&legacy.MsgUpdateEGFParams{}, "gov/MsgUpdateEGFParams", nil) - cdc.RegisterConcrete(&MsgUpdateStore{}, "gov/MsgUpdateStore", nil) cdc.RegisterConcrete(&MsgUpdateSwitchParams{}, "gov/MsgUpdateSwitchParams", nil) cdc.RegisterConcrete(&MsgUpdateCustomParams{}, "gov/MsgUpdateCustomParams", nil) diff --git a/x/gov/types/init_genesis_custom_params.json b/x/gov/types/init_genesis_custom_params.json index 4bbce42d..8d285b2d 100644 --- a/x/gov/types/init_genesis_custom_params.json +++ b/x/gov/types/init_genesis_custom_params.json @@ -8,7 +8,7 @@ } }, { - "MsgType": "/fx.erc20.v1.MsgRegisterCoin", + "MsgType": "/fx.erc20.v1.MsgRegisterNativeCoin", "Params": { "deposit_ratio": "0.000000000000000000", "voting_period": 604800000000000, @@ -16,7 +16,7 @@ } }, { - "MsgType": "/fx.erc20.v1.MsgRegisterERC20", + "MsgType": "/fx.erc20.v1.MsgRegisterNativeERC20", "Params": { "deposit_ratio": "0.000000000000000000", "voting_period": 604800000000000, @@ -24,7 +24,7 @@ } }, { - "MsgType": "/fx.erc20.v1.MsgToggleTokenConversion", + "MsgType": "/fx.erc20.v1.MsgRegisterBridgeToken", "Params": { "deposit_ratio": "0.000000000000000000", "voting_period": 604800000000000, @@ -32,7 +32,7 @@ } }, { - "MsgType": "/fx.erc20.v1.MsgUpdateDenomAlias", + "MsgType": "/fx.erc20.v1.MsgToggleTokenConversion", "Params": { "deposit_ratio": "0.000000000000000000", "voting_period": 604800000000000, diff --git a/x/gov/types/msgs.go b/x/gov/types/msgs.go index 3bd32209..5a149eae 100644 --- a/x/gov/types/msgs.go +++ b/x/gov/types/msgs.go @@ -10,12 +10,6 @@ import ( sdkerrors "github.com/cosmos/cosmos-sdk/types/errors" ) -var ( - _ sdk.Msg = &MsgUpdateStore{} - _ sdk.Msg = &MsgUpdateSwitchParams{} - _ sdk.Msg = &MsgUpdateCustomParams{} -) - func NewMsgUpdateStore(authority string, updateStores []UpdateStore) *MsgUpdateStore { return &MsgUpdateStore{Authority: authority, UpdateStores: updateStores} } diff --git a/x/gov/types/params.go b/x/gov/types/params.go index 0b05d901..b125cc47 100644 --- a/x/gov/types/params.go +++ b/x/gov/types/params.go @@ -66,10 +66,10 @@ func newOtherCustomParams() []InitGenesisCustomParams { defaultParams := NewCustomParams(DefaultCustomParamDepositRatio.String(), DefaultCustomParamVotingPeriod, DefaultCustomParamQuorum25.String()) customMsgTypes := []string{ // erc20 proposal - sdk.MsgTypeURL(&erc20types.MsgRegisterCoin{}), - sdk.MsgTypeURL(&erc20types.MsgRegisterERC20{}), + sdk.MsgTypeURL(&erc20types.MsgRegisterNativeCoin{}), + sdk.MsgTypeURL(&erc20types.MsgRegisterNativeERC20{}), + sdk.MsgTypeURL(&erc20types.MsgRegisterBridgeToken{}), sdk.MsgTypeURL(&erc20types.MsgToggleTokenConversion{}), - sdk.MsgTypeURL(&erc20types.MsgUpdateDenomAlias{}), // evm proposal sdk.MsgTypeURL(&evmtypes.MsgCallContract{}), diff --git a/x/migrate/types/msg.go b/x/migrate/types/msg.go index 70e211fd..8ca85b96 100644 --- a/x/migrate/types/msg.go +++ b/x/migrate/types/msg.go @@ -12,8 +12,6 @@ import ( "github.com/pundiai/fx-core/v8/contract" ) -var _ sdk.Msg = &MsgMigrateAccount{} - func NewMsgMigrateAccount(from sdk.AccAddress, to common.Address, signature string) *MsgMigrateAccount { return &MsgMigrateAccount{ From: from.String(),