diff --git a/api/types/events/events.pb.go b/api/types/events/events.pb.go index 64cd82b30c814..da7bfd6e39b8d 100644 --- a/api/types/events/events.pb.go +++ b/api/types/events/events.pb.go @@ -4511,6 +4511,13 @@ type OneOf struct { // *OneOf_MySQLStatementBulkExecute // *OneOf_RenewableCertificateGenerationMismatch // *OneOf_Unknown + // *OneOf_MySQLInitDB + // *OneOf_MySQLCreateDB + // *OneOf_MySQLDropDB + // *OneOf_MySQLShutDown + // *OneOf_MySQLProcessKill + // *OneOf_MySQLDebug + // *OneOf_MySQLRefresh Event isOneOf_Event `protobuf_oneof:"Event"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -4796,6 +4803,27 @@ type OneOf_RenewableCertificateGenerationMismatch struct { type OneOf_Unknown struct { Unknown *Unknown `protobuf:"bytes,80,opt,name=Unknown,proto3,oneof" json:"Unknown,omitempty"` } +type OneOf_MySQLInitDB struct { + MySQLInitDB *MySQLInitDB `protobuf:"bytes,81,opt,name=MySQLInitDB,proto3,oneof" json:"MySQLInitDB,omitempty"` +} +type OneOf_MySQLCreateDB struct { + MySQLCreateDB *MySQLCreateDB `protobuf:"bytes,82,opt,name=MySQLCreateDB,proto3,oneof" json:"MySQLCreateDB,omitempty"` +} +type OneOf_MySQLDropDB struct { + MySQLDropDB *MySQLDropDB `protobuf:"bytes,83,opt,name=MySQLDropDB,proto3,oneof" json:"MySQLDropDB,omitempty"` +} +type OneOf_MySQLShutDown struct { + MySQLShutDown *MySQLShutDown `protobuf:"bytes,84,opt,name=MySQLShutDown,proto3,oneof" json:"MySQLShutDown,omitempty"` +} +type OneOf_MySQLProcessKill struct { + MySQLProcessKill *MySQLProcessKill `protobuf:"bytes,85,opt,name=MySQLProcessKill,proto3,oneof" json:"MySQLProcessKill,omitempty"` +} +type OneOf_MySQLDebug struct { + MySQLDebug *MySQLDebug `protobuf:"bytes,86,opt,name=MySQLDebug,proto3,oneof" json:"MySQLDebug,omitempty"` +} +type OneOf_MySQLRefresh struct { + MySQLRefresh *MySQLRefresh `protobuf:"bytes,87,opt,name=MySQLRefresh,proto3,oneof" json:"MySQLRefresh,omitempty"` +} func (*OneOf_UserLogin) isOneOf_Event() {} func (*OneOf_UserCreate) isOneOf_Event() {} @@ -4877,6 +4905,13 @@ func (*OneOf_MySQLStatementFetch) isOneOf_Event() {} func (*OneOf_MySQLStatementBulkExecute) isOneOf_Event() {} func (*OneOf_RenewableCertificateGenerationMismatch) isOneOf_Event() {} func (*OneOf_Unknown) isOneOf_Event() {} +func (*OneOf_MySQLInitDB) isOneOf_Event() {} +func (*OneOf_MySQLCreateDB) isOneOf_Event() {} +func (*OneOf_MySQLDropDB) isOneOf_Event() {} +func (*OneOf_MySQLShutDown) isOneOf_Event() {} +func (*OneOf_MySQLProcessKill) isOneOf_Event() {} +func (*OneOf_MySQLDebug) isOneOf_Event() {} +func (*OneOf_MySQLRefresh) isOneOf_Event() {} func (m *OneOf) GetEvent() isOneOf_Event { if m != nil { @@ -5445,6 +5480,55 @@ func (m *OneOf) GetUnknown() *Unknown { return nil } +func (m *OneOf) GetMySQLInitDB() *MySQLInitDB { + if x, ok := m.GetEvent().(*OneOf_MySQLInitDB); ok { + return x.MySQLInitDB + } + return nil +} + +func (m *OneOf) GetMySQLCreateDB() *MySQLCreateDB { + if x, ok := m.GetEvent().(*OneOf_MySQLCreateDB); ok { + return x.MySQLCreateDB + } + return nil +} + +func (m *OneOf) GetMySQLDropDB() *MySQLDropDB { + if x, ok := m.GetEvent().(*OneOf_MySQLDropDB); ok { + return x.MySQLDropDB + } + return nil +} + +func (m *OneOf) GetMySQLShutDown() *MySQLShutDown { + if x, ok := m.GetEvent().(*OneOf_MySQLShutDown); ok { + return x.MySQLShutDown + } + return nil +} + +func (m *OneOf) GetMySQLProcessKill() *MySQLProcessKill { + if x, ok := m.GetEvent().(*OneOf_MySQLProcessKill); ok { + return x.MySQLProcessKill + } + return nil +} + +func (m *OneOf) GetMySQLDebug() *MySQLDebug { + if x, ok := m.GetEvent().(*OneOf_MySQLDebug); ok { + return x.MySQLDebug + } + return nil +} + +func (m *OneOf) GetMySQLRefresh() *MySQLRefresh { + if x, ok := m.GetEvent().(*OneOf_MySQLRefresh); ok { + return x.MySQLRefresh + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*OneOf) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -5528,6 +5612,13 @@ func (*OneOf) XXX_OneofWrappers() []interface{} { (*OneOf_MySQLStatementBulkExecute)(nil), (*OneOf_RenewableCertificateGenerationMismatch)(nil), (*OneOf_Unknown)(nil), + (*OneOf_MySQLInitDB)(nil), + (*OneOf_MySQLCreateDB)(nil), + (*OneOf_MySQLDropDB)(nil), + (*OneOf_MySQLShutDown)(nil), + (*OneOf_MySQLProcessKill)(nil), + (*OneOf_MySQLDebug)(nil), + (*OneOf_MySQLRefresh)(nil), } } @@ -6185,6 +6276,355 @@ func (m *MySQLStatementBulkExecute) XXX_DiscardUnknown() { var xxx_messageInfo_MySQLStatementBulkExecute proto.InternalMessageInfo +// MySQLInitDB is emitted when a MySQL client changes the default schema for +// the connection. +type MySQLInitDB struct { + // Metadata is a common event metadata. + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata. + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // SessionMetadata is a common event session metadata. + SessionMetadata `protobuf:"bytes,3,opt,name=Session,proto3,embedded=Session" json:""` + // Database contains database related metadata. + DatabaseMetadata `protobuf:"bytes,4,opt,name=Database,proto3,embedded=Database" json:""` + // SchemaName is the name of the schema to use. + SchemaName string `protobuf:"bytes,5,opt,name=SchemaName,proto3" json:"schema_name"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MySQLInitDB) Reset() { *m = MySQLInitDB{} } +func (m *MySQLInitDB) String() string { return proto.CompactTextString(m) } +func (*MySQLInitDB) ProtoMessage() {} +func (*MySQLInitDB) Descriptor() ([]byte, []int) { + return fileDescriptor_8f22242cb04491f9, []int{99} +} +func (m *MySQLInitDB) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MySQLInitDB) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MySQLInitDB.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 *MySQLInitDB) XXX_Merge(src proto.Message) { + xxx_messageInfo_MySQLInitDB.Merge(m, src) +} +func (m *MySQLInitDB) XXX_Size() int { + return m.Size() +} +func (m *MySQLInitDB) XXX_DiscardUnknown() { + xxx_messageInfo_MySQLInitDB.DiscardUnknown(m) +} + +var xxx_messageInfo_MySQLInitDB proto.InternalMessageInfo + +// MySQLCreateDB is emitted when a MySQL client creates a schema. +type MySQLCreateDB struct { + // Metadata is a common event metadata. + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata. + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // SessionMetadata is a common event session metadata. + SessionMetadata `protobuf:"bytes,3,opt,name=Session,proto3,embedded=Session" json:""` + // Database contains database related metadata. + DatabaseMetadata `protobuf:"bytes,4,opt,name=Database,proto3,embedded=Database" json:""` + // SchemaName is the name of the schema to create. + SchemaName string `protobuf:"bytes,5,opt,name=SchemaName,proto3" json:"schema_name"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MySQLCreateDB) Reset() { *m = MySQLCreateDB{} } +func (m *MySQLCreateDB) String() string { return proto.CompactTextString(m) } +func (*MySQLCreateDB) ProtoMessage() {} +func (*MySQLCreateDB) Descriptor() ([]byte, []int) { + return fileDescriptor_8f22242cb04491f9, []int{100} +} +func (m *MySQLCreateDB) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MySQLCreateDB) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MySQLCreateDB.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 *MySQLCreateDB) XXX_Merge(src proto.Message) { + xxx_messageInfo_MySQLCreateDB.Merge(m, src) +} +func (m *MySQLCreateDB) XXX_Size() int { + return m.Size() +} +func (m *MySQLCreateDB) XXX_DiscardUnknown() { + xxx_messageInfo_MySQLCreateDB.DiscardUnknown(m) +} + +var xxx_messageInfo_MySQLCreateDB proto.InternalMessageInfo + +// MySQLDropDB is emitted when a MySQL client drops a schema. +type MySQLDropDB struct { + // Metadata is a common event metadata. + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata. + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // SessionMetadata is a common event session metadata. + SessionMetadata `protobuf:"bytes,3,opt,name=Session,proto3,embedded=Session" json:""` + // Database contains database related metadata. + DatabaseMetadata `protobuf:"bytes,4,opt,name=Database,proto3,embedded=Database" json:""` + // SchemaName is the name of the schema to drop. + SchemaName string `protobuf:"bytes,5,opt,name=SchemaName,proto3" json:"schema_name"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MySQLDropDB) Reset() { *m = MySQLDropDB{} } +func (m *MySQLDropDB) String() string { return proto.CompactTextString(m) } +func (*MySQLDropDB) ProtoMessage() {} +func (*MySQLDropDB) Descriptor() ([]byte, []int) { + return fileDescriptor_8f22242cb04491f9, []int{101} +} +func (m *MySQLDropDB) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MySQLDropDB) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MySQLDropDB.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 *MySQLDropDB) XXX_Merge(src proto.Message) { + xxx_messageInfo_MySQLDropDB.Merge(m, src) +} +func (m *MySQLDropDB) XXX_Size() int { + return m.Size() +} +func (m *MySQLDropDB) XXX_DiscardUnknown() { + xxx_messageInfo_MySQLDropDB.DiscardUnknown(m) +} + +var xxx_messageInfo_MySQLDropDB proto.InternalMessageInfo + +// MySQLShutDown is emitted when a MySQL client asks the server to shut down. +type MySQLShutDown struct { + // Metadata is a common event metadata. + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata. + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // SessionMetadata is a common event session metadata. + SessionMetadata `protobuf:"bytes,3,opt,name=Session,proto3,embedded=Session" json:""` + // Database contains database related metadata. + DatabaseMetadata `protobuf:"bytes,4,opt,name=Database,proto3,embedded=Database" json:""` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MySQLShutDown) Reset() { *m = MySQLShutDown{} } +func (m *MySQLShutDown) String() string { return proto.CompactTextString(m) } +func (*MySQLShutDown) ProtoMessage() {} +func (*MySQLShutDown) Descriptor() ([]byte, []int) { + return fileDescriptor_8f22242cb04491f9, []int{102} +} +func (m *MySQLShutDown) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MySQLShutDown) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MySQLShutDown.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 *MySQLShutDown) XXX_Merge(src proto.Message) { + xxx_messageInfo_MySQLShutDown.Merge(m, src) +} +func (m *MySQLShutDown) XXX_Size() int { + return m.Size() +} +func (m *MySQLShutDown) XXX_DiscardUnknown() { + xxx_messageInfo_MySQLShutDown.DiscardUnknown(m) +} + +var xxx_messageInfo_MySQLShutDown proto.InternalMessageInfo + +// MySQLProcessKill is emitted when a MySQL client asks the server to terminate +// a connection. +type MySQLProcessKill struct { + // Metadata is a common event metadata. + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata. + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // SessionMetadata is a common event session metadata. + SessionMetadata `protobuf:"bytes,3,opt,name=Session,proto3,embedded=Session" json:""` + // Database contains database related metadata. + DatabaseMetadata `protobuf:"bytes,4,opt,name=Database,proto3,embedded=Database" json:""` + // ProcessID is the process ID of a connection. + ProcessID uint32 `protobuf:"varint,5,opt,name=ProcessID,proto3" json:"process_id"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MySQLProcessKill) Reset() { *m = MySQLProcessKill{} } +func (m *MySQLProcessKill) String() string { return proto.CompactTextString(m) } +func (*MySQLProcessKill) ProtoMessage() {} +func (*MySQLProcessKill) Descriptor() ([]byte, []int) { + return fileDescriptor_8f22242cb04491f9, []int{103} +} +func (m *MySQLProcessKill) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MySQLProcessKill) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MySQLProcessKill.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 *MySQLProcessKill) XXX_Merge(src proto.Message) { + xxx_messageInfo_MySQLProcessKill.Merge(m, src) +} +func (m *MySQLProcessKill) XXX_Size() int { + return m.Size() +} +func (m *MySQLProcessKill) XXX_DiscardUnknown() { + xxx_messageInfo_MySQLProcessKill.DiscardUnknown(m) +} + +var xxx_messageInfo_MySQLProcessKill proto.InternalMessageInfo + +// MySQLDebug is emitted when a MySQL client asks the server to dump internal +// debug info to stdout. +type MySQLDebug struct { + // Metadata is a common event metadata. + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata. + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // SessionMetadata is a common event session metadata. + SessionMetadata `protobuf:"bytes,3,opt,name=Session,proto3,embedded=Session" json:""` + // Database contains database related metadata. + DatabaseMetadata `protobuf:"bytes,4,opt,name=Database,proto3,embedded=Database" json:""` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MySQLDebug) Reset() { *m = MySQLDebug{} } +func (m *MySQLDebug) String() string { return proto.CompactTextString(m) } +func (*MySQLDebug) ProtoMessage() {} +func (*MySQLDebug) Descriptor() ([]byte, []int) { + return fileDescriptor_8f22242cb04491f9, []int{104} +} +func (m *MySQLDebug) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MySQLDebug) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MySQLDebug.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 *MySQLDebug) XXX_Merge(src proto.Message) { + xxx_messageInfo_MySQLDebug.Merge(m, src) +} +func (m *MySQLDebug) XXX_Size() int { + return m.Size() +} +func (m *MySQLDebug) XXX_DiscardUnknown() { + xxx_messageInfo_MySQLDebug.DiscardUnknown(m) +} + +var xxx_messageInfo_MySQLDebug proto.InternalMessageInfo + +// MySQLRefresh is emitted when a MySQL client sends refresh commands. +type MySQLRefresh struct { + // Metadata is a common event metadata. + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata. + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // SessionMetadata is a common event session metadata. + SessionMetadata `protobuf:"bytes,3,opt,name=Session,proto3,embedded=Session" json:""` + // Database contains database related metadata. + DatabaseMetadata `protobuf:"bytes,4,opt,name=Database,proto3,embedded=Database" json:""` + // Subcommand is the string representation of the subcommand. + Subcommand string `protobuf:"bytes,5,opt,name=Subcommand,proto3" json:"subcommand"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MySQLRefresh) Reset() { *m = MySQLRefresh{} } +func (m *MySQLRefresh) String() string { return proto.CompactTextString(m) } +func (*MySQLRefresh) ProtoMessage() {} +func (*MySQLRefresh) Descriptor() ([]byte, []int) { + return fileDescriptor_8f22242cb04491f9, []int{105} +} +func (m *MySQLRefresh) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MySQLRefresh) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MySQLRefresh.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 *MySQLRefresh) XXX_Merge(src proto.Message) { + xxx_messageInfo_MySQLRefresh.Merge(m, src) +} +func (m *MySQLRefresh) XXX_Size() int { + return m.Size() +} +func (m *MySQLRefresh) XXX_DiscardUnknown() { + xxx_messageInfo_MySQLRefresh.DiscardUnknown(m) +} + +var xxx_messageInfo_MySQLRefresh proto.InternalMessageInfo + func init() { proto.RegisterEnum("events.EventAction", EventAction_name, EventAction_value) proto.RegisterEnum("events.SessionNetwork_NetworkOperation", SessionNetwork_NetworkOperation_name, SessionNetwork_NetworkOperation_value) @@ -6292,449 +6732,472 @@ func init() { proto.RegisterType((*MySQLStatementReset)(nil), "events.MySQLStatementReset") proto.RegisterType((*MySQLStatementFetch)(nil), "events.MySQLStatementFetch") proto.RegisterType((*MySQLStatementBulkExecute)(nil), "events.MySQLStatementBulkExecute") + proto.RegisterType((*MySQLInitDB)(nil), "events.MySQLInitDB") + proto.RegisterType((*MySQLCreateDB)(nil), "events.MySQLCreateDB") + proto.RegisterType((*MySQLDropDB)(nil), "events.MySQLDropDB") + proto.RegisterType((*MySQLShutDown)(nil), "events.MySQLShutDown") + proto.RegisterType((*MySQLProcessKill)(nil), "events.MySQLProcessKill") + proto.RegisterType((*MySQLDebug)(nil), "events.MySQLDebug") + proto.RegisterType((*MySQLRefresh)(nil), "events.MySQLRefresh") } func init() { proto.RegisterFile("events.proto", fileDescriptor_8f22242cb04491f9) } var fileDescriptor_8f22242cb04491f9 = []byte{ - // 6991 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x5d, 0x6c, 0x24, 0xd9, - 0x55, 0xb0, 0xbb, 0xdb, 0xfd, 0xe3, 0xdb, 0xfe, 0xbd, 0xe3, 0xd9, 0xa9, 0x99, 0x9d, 0x9d, 0x9e, - 0xad, 0x49, 0x66, 0x67, 0xb2, 0xb3, 0x76, 0xc6, 0x33, 0xbb, 0x93, 0x6c, 0x76, 0xb3, 0xd3, 0x6e, - 0xdb, 0xeb, 0xce, 0x7a, 0x6c, 0xef, 0xb5, 0x67, 0x37, 0x52, 0x94, 0x6d, 0x95, 0xbb, 0xee, 0xd8, - 0x95, 0xe9, 0xae, 0xaa, 0x54, 0x55, 0xdb, 0xe3, 0x7d, 0xfa, 0x7e, 0x10, 0x44, 0x51, 0x40, 0x28, - 0x3c, 0x20, 0xc4, 0x43, 0x50, 0x00, 0x09, 0xa4, 0x88, 0x00, 0x42, 0x11, 0x12, 0xbc, 0x40, 0x00, - 0x6d, 0x84, 0x12, 0x02, 0x41, 0x41, 0xe2, 0xa1, 0x03, 0x41, 0xbc, 0xb4, 0x40, 0x8a, 0x04, 0x12, - 0x81, 0x27, 0x74, 0xcf, 0xbd, 0x55, 0x75, 0xeb, 0xa7, 0x3d, 0xe3, 0xb1, 0x17, 0xe3, 0x19, 0x3f, - 0xd9, 0x7d, 0xfe, 0x6e, 0xd5, 0xb9, 0x7f, 0xe7, 0x9e, 0x7b, 0xce, 0x29, 0x34, 0x4c, 0xb7, 0xa9, - 0xe9, 0xb9, 0x53, 0xb6, 0x63, 0x79, 0x16, 0x2e, 0xf0, 0x5f, 0xe7, 0x26, 0x37, 0xad, 0x4d, 0x0b, - 0x40, 0xd3, 0xec, 0x3f, 0x8e, 0x3d, 0x57, 0xd9, 0xb4, 0xac, 0xcd, 0x16, 0x9d, 0x86, 0x5f, 0x1b, - 0x9d, 0x7b, 0xd3, 0x9e, 0xd1, 0xa6, 0xae, 0xa7, 0xb5, 0x6d, 0x41, 0x70, 0x3e, 0x4e, 0xe0, 0x7a, - 0x4e, 0xa7, 0xe9, 0x09, 0x6c, 0x6d, 0xd3, 0xf0, 0xb6, 0x3a, 0x1b, 0x53, 0x4d, 0xab, 0x3d, 0xbd, - 0xe9, 0x68, 0xdb, 0x86, 0xa7, 0x79, 0x86, 0x65, 0x6a, 0xad, 0x69, 0x8f, 0xb6, 0xa8, 0x6d, 0x39, - 0xde, 0xb4, 0x66, 0x1b, 0xd3, 0xde, 0xae, 0x4d, 0xdd, 0xe9, 0x1d, 0x47, 0xb3, 0x6d, 0xea, 0x84, - 0xff, 0x70, 0x21, 0xea, 0x57, 0xb3, 0xa8, 0x74, 0x87, 0x7a, 0x9a, 0xae, 0x79, 0x1a, 0x3e, 0x8f, - 0xf2, 0x75, 0x53, 0xa7, 0x0f, 0x94, 0xcc, 0xc5, 0xcc, 0x95, 0xdc, 0x6c, 0xa1, 0xd7, 0xad, 0x64, - 0xa9, 0x41, 0x38, 0x10, 0x3f, 0x87, 0x06, 0xd7, 0x77, 0x6d, 0xaa, 0x64, 0x2f, 0x66, 0xae, 0x0c, - 0xcd, 0x0e, 0xf5, 0xba, 0x95, 0x3c, 0xbc, 0x1e, 0x01, 0x30, 0x7e, 0x1e, 0x65, 0xeb, 0x73, 0x4a, - 0x0e, 0x90, 0x13, 0xbd, 0x6e, 0x65, 0xa4, 0x63, 0xe8, 0xd7, 0xac, 0xb6, 0xe1, 0xd1, 0xb6, 0xed, - 0xed, 0x92, 0x6c, 0x7d, 0x0e, 0x5f, 0x46, 0x83, 0x35, 0x4b, 0xa7, 0xca, 0x20, 0x10, 0xe1, 0x5e, - 0xb7, 0x32, 0xda, 0xb4, 0x74, 0x2a, 0x51, 0x01, 0x1e, 0xdf, 0x46, 0x83, 0xeb, 0x46, 0x9b, 0x2a, - 0xf9, 0x8b, 0x99, 0x2b, 0xe5, 0x99, 0x73, 0x53, 0x5c, 0x0d, 0x53, 0xbe, 0x1a, 0xa6, 0xd6, 0x7d, - 0x3d, 0xcd, 0x8e, 0x7f, 0xd0, 0xad, 0x0c, 0xf4, 0xba, 0x95, 0x41, 0xa6, 0xba, 0x5f, 0xfc, 0x51, - 0x25, 0x43, 0x80, 0x13, 0xbf, 0x86, 0xca, 0xb5, 0x56, 0xc7, 0xf5, 0xa8, 0xb3, 0xac, 0xb5, 0xa9, - 0x52, 0x80, 0x06, 0xcf, 0xf5, 0xba, 0x95, 0x67, 0x9a, 0x1c, 0xdc, 0x30, 0xb5, 0xb6, 0xdc, 0xb0, - 0x4c, 0xae, 0x7e, 0x01, 0x8d, 0xad, 0x51, 0xd7, 0x35, 0x2c, 0x33, 0x50, 0xcd, 0x47, 0xd1, 0x90, - 0x00, 0xd5, 0xe7, 0x40, 0x3d, 0x43, 0xb3, 0xc5, 0x5e, 0xb7, 0x92, 0x73, 0x0d, 0x9d, 0x84, 0x18, - 0xfc, 0x71, 0x54, 0x7c, 0xd7, 0xf0, 0xb6, 0xee, 0x2c, 0x54, 0x85, 0x9a, 0x9e, 0xe9, 0x75, 0x2b, - 0x78, 0xc7, 0xf0, 0xb6, 0x1a, 0xed, 0x7b, 0x9a, 0xd4, 0x9e, 0x4f, 0xa6, 0xfe, 0x46, 0x16, 0x0d, - 0xdf, 0x75, 0xa9, 0x13, 0xb4, 0x74, 0x19, 0x0d, 0xb2, 0xdf, 0xa2, 0x11, 0x50, 0x52, 0xc7, 0xa5, - 0x8e, 0xac, 0x24, 0x86, 0xc7, 0x57, 0x51, 0x7e, 0xc9, 0xda, 0x34, 0x4c, 0xd1, 0xd0, 0xa9, 0x5e, - 0xb7, 0x32, 0xd6, 0x62, 0x00, 0x89, 0x92, 0x53, 0xe0, 0x4f, 0xa3, 0xe1, 0x7a, 0x9b, 0x75, 0xba, - 0x65, 0x6a, 0x9e, 0xe5, 0x88, 0x4e, 0x02, 0x75, 0x18, 0x12, 0x5c, 0x62, 0x8c, 0xd0, 0xe3, 0x57, - 0x11, 0xaa, 0xbe, 0xbb, 0x46, 0xac, 0x16, 0xad, 0x92, 0x65, 0xd1, 0x7b, 0xc0, 0xad, 0xed, 0xb8, - 0x0d, 0xc7, 0x6a, 0xd1, 0x86, 0xe6, 0xc8, 0xcd, 0x4a, 0xd4, 0x78, 0x1e, 0x8d, 0x56, 0x9b, 0x4d, - 0xea, 0xba, 0x84, 0x7e, 0xb1, 0x43, 0x5d, 0xcf, 0x55, 0xf2, 0x17, 0x73, 0x57, 0x86, 0x66, 0x9f, - 0xeb, 0x75, 0x2b, 0x67, 0x35, 0xc0, 0x34, 0x1c, 0x81, 0x92, 0x44, 0xc4, 0x98, 0xd4, 0xdf, 0xcd, - 0xa1, 0xd1, 0x35, 0xea, 0x6c, 0x4b, 0x8a, 0xaa, 0xb2, 0x5e, 0x62, 0x10, 0xd6, 0x67, 0xae, 0xad, - 0x35, 0xa9, 0xd0, 0xd9, 0x99, 0x5e, 0xb7, 0x72, 0xca, 0xf4, 0x81, 0x92, 0xd0, 0x38, 0x3d, 0xbe, - 0x8a, 0x4a, 0x1c, 0x54, 0x9f, 0x13, 0x6a, 0x1c, 0xe9, 0x75, 0x2b, 0x43, 0x2e, 0xc0, 0x1a, 0x86, - 0x4e, 0x02, 0x34, 0x7b, 0x0f, 0xfe, 0xff, 0xa2, 0xe5, 0x7a, 0x4c, 0xb8, 0xd0, 0x22, 0xbc, 0x87, - 0x60, 0xd8, 0x12, 0x28, 0xf9, 0x3d, 0xa2, 0x4c, 0xf8, 0x93, 0x08, 0x71, 0x48, 0x55, 0xd7, 0x1d, - 0xa1, 0xca, 0xb3, 0xbd, 0x6e, 0xe5, 0xb4, 0x10, 0xa1, 0xe9, 0xba, 0xdc, 0x0f, 0x12, 0x31, 0x6e, - 0xa3, 0x61, 0xfe, 0x6b, 0x49, 0xdb, 0xa0, 0x2d, 0xae, 0xc7, 0xf2, 0xcc, 0x95, 0x29, 0xb1, 0xe2, - 0x44, 0xb5, 0x33, 0x25, 0x93, 0xce, 0x9b, 0x9e, 0xb3, 0x3b, 0x5b, 0x11, 0x73, 0xe5, 0x8c, 0x68, - 0xaa, 0x05, 0x38, 0xb9, 0xd3, 0x65, 0x9e, 0x73, 0x6f, 0xa0, 0x89, 0x84, 0x0c, 0x3c, 0x8e, 0x72, - 0xf7, 0xe9, 0x2e, 0xd7, 0x33, 0x61, 0xff, 0xe2, 0x49, 0x94, 0xdf, 0xd6, 0x5a, 0x1d, 0xb1, 0x2c, - 0x10, 0xfe, 0xe3, 0xd5, 0xec, 0x27, 0x32, 0xea, 0x1f, 0x66, 0x10, 0xae, 0x59, 0xa6, 0x49, 0x9b, - 0x9e, 0x3c, 0x93, 0x5e, 0x41, 0x43, 0x4b, 0x56, 0x53, 0x6b, 0x81, 0x02, 0x78, 0x87, 0x29, 0xbd, - 0x6e, 0x65, 0x92, 0xbd, 0xf9, 0x54, 0x8b, 0x61, 0xa4, 0x47, 0x0a, 0x49, 0x99, 0xe6, 0x08, 0x6d, - 0x5b, 0x1e, 0x05, 0xc6, 0x6c, 0xa8, 0x39, 0x60, 0x74, 0x00, 0x25, 0x6b, 0x2e, 0x24, 0xc6, 0xd3, - 0xa8, 0xb4, 0xca, 0xd6, 0x8e, 0xa6, 0xd5, 0x12, 0xbd, 0x06, 0xb3, 0x05, 0xd6, 0x13, 0x89, 0x25, - 0x20, 0x52, 0xff, 0x5f, 0x16, 0x9d, 0x7d, 0xab, 0xb3, 0x41, 0x1d, 0x93, 0x7a, 0xd4, 0x15, 0x4b, - 0x43, 0xf0, 0x06, 0xcb, 0x68, 0x22, 0x81, 0x14, 0x6f, 0x72, 0xb1, 0xd7, 0xad, 0x9c, 0xbf, 0x1f, - 0x20, 0x1b, 0x62, 0xb5, 0x91, 0x1a, 0x49, 0xb2, 0xe2, 0x45, 0x34, 0x16, 0x02, 0xd9, 0xdc, 0x76, - 0x95, 0x2c, 0xcc, 0x91, 0x0b, 0xbd, 0x6e, 0xe5, 0x9c, 0x24, 0x8d, 0xad, 0x03, 0x72, 0x87, 0xc5, - 0xd9, 0xf0, 0x5b, 0x68, 0x3c, 0x04, 0xbd, 0xe9, 0x58, 0x1d, 0xdb, 0x55, 0x72, 0x20, 0xaa, 0xd2, - 0xeb, 0x56, 0x9e, 0x95, 0x44, 0x6d, 0x02, 0x52, 0x92, 0x95, 0x60, 0x54, 0xff, 0x39, 0x87, 0x4e, - 0x87, 0xc0, 0x55, 0x4b, 0x0f, 0x14, 0xb0, 0x22, 0x2b, 0x60, 0xd5, 0xd2, 0x61, 0x8d, 0xe5, 0x0a, - 0x78, 0xbe, 0xd7, 0xad, 0x3c, 0x27, 0xb5, 0x63, 0x5b, 0x7a, 0x7c, 0xa9, 0x4d, 0xf2, 0xe2, 0xf7, - 0xd0, 0x33, 0x09, 0x20, 0x9f, 0xd1, 0xbc, 0x9f, 0x2f, 0xf7, 0xba, 0x15, 0x35, 0x45, 0x6a, 0x7c, - 0x82, 0xf7, 0x91, 0x82, 0x35, 0x74, 0x46, 0x52, 0xbb, 0x65, 0x7a, 0x9a, 0x61, 0x8a, 0xad, 0x81, - 0x8f, 0x87, 0x17, 0x7a, 0xdd, 0xca, 0x25, 0xb9, 0xdf, 0x7c, 0x9a, 0xf8, 0xc3, 0xf7, 0x93, 0x83, - 0x75, 0xa4, 0xa4, 0xa0, 0xea, 0x6d, 0x6d, 0xd3, 0xdf, 0xef, 0xae, 0xf4, 0xba, 0x95, 0x8f, 0xa4, - 0xb6, 0x61, 0x30, 0x2a, 0xa9, 0x91, 0xbe, 0x92, 0x30, 0x41, 0x38, 0xc4, 0x2d, 0x5b, 0x3a, 0x85, - 0x77, 0xc8, 0x83, 0x7c, 0xb5, 0xd7, 0xad, 0x5c, 0x90, 0xe4, 0x9b, 0x96, 0x4e, 0xe3, 0x8f, 0x9f, - 0xc2, 0xad, 0xfe, 0x28, 0xcf, 0x16, 0x16, 0xd8, 0xc1, 0xd6, 0x3c, 0xcd, 0xf1, 0xf0, 0xab, 0xa1, - 0x49, 0x00, 0xbd, 0x5a, 0x9e, 0x19, 0xf7, 0x17, 0x19, 0x1f, 0x3e, 0x3b, 0xcc, 0x16, 0x93, 0xef, - 0x77, 0x2b, 0x99, 0x5e, 0xb7, 0x32, 0x40, 0x4a, 0xd2, 0xec, 0xe6, 0xbb, 0x57, 0x16, 0xf8, 0x26, - 0x7d, 0x3e, 0x79, 0x87, 0x8b, 0xf1, 0xf2, 0xdd, 0xec, 0x0d, 0x54, 0x14, 0xcf, 0x00, 0x3d, 0x52, - 0x9e, 0x39, 0x13, 0xae, 0x6b, 0x91, 0x9d, 0x38, 0xc6, 0xed, 0x73, 0xe1, 0xd7, 0x50, 0x81, 0x2f, - 0x57, 0xa0, 0xed, 0xf2, 0xcc, 0x33, 0xe9, 0xeb, 0x62, 0x8c, 0x5d, 0xf0, 0xe0, 0x45, 0x84, 0xc2, - 0xa5, 0x2a, 0xb0, 0x3b, 0x84, 0x84, 0xe4, 0x22, 0x16, 0x93, 0x22, 0xf1, 0xe2, 0x57, 0xd0, 0xf0, - 0x3a, 0x75, 0xda, 0x86, 0xa9, 0xb5, 0xd6, 0x8c, 0xf7, 0x7d, 0xd3, 0x03, 0xb6, 0x71, 0xd7, 0x78, - 0x5f, 0xee, 0x8b, 0x08, 0x1d, 0xfe, 0x7c, 0xda, 0xa2, 0x52, 0x84, 0x07, 0x79, 0xde, 0x7f, 0x90, - 0xbe, 0x4b, 0x52, 0xec, 0x79, 0x52, 0xd6, 0x98, 0xb7, 0xd1, 0x48, 0x64, 0x6e, 0x28, 0x25, 0x10, - 0xfd, 0x5c, 0x52, 0xb4, 0x34, 0xd1, 0x63, 0x62, 0xa3, 0x12, 0xd8, 0x8e, 0x58, 0x37, 0x0d, 0xcf, - 0xd0, 0x5a, 0x35, 0xab, 0xdd, 0xd6, 0x4c, 0x5d, 0x19, 0x0a, 0x77, 0x76, 0x83, 0x63, 0x1a, 0x4d, - 0x8e, 0x92, 0x77, 0xc4, 0x28, 0x13, 0x5b, 0xb3, 0x44, 0x1f, 0x12, 0xda, 0xb4, 0x1c, 0xdd, 0x30, - 0x37, 0x15, 0x04, 0x4a, 0x83, 0x35, 0xcb, 0xe5, 0xb8, 0x86, 0xe3, 0x23, 0xe5, 0x35, 0x2b, 0xce, - 0xf8, 0x99, 0xc1, 0x52, 0x79, 0x7c, 0x38, 0x61, 0x3c, 0xfc, 0x76, 0x0e, 0x95, 0x05, 0xe9, 0x67, - 0x2c, 0xc3, 0x3c, 0x19, 0xe0, 0x07, 0x19, 0xe0, 0xa9, 0x03, 0xb5, 0x70, 0x58, 0x03, 0x55, 0xfd, - 0x4a, 0x36, 0x58, 0x8d, 0x56, 0x1d, 0xc3, 0x3c, 0xd8, 0x6a, 0x74, 0x19, 0xa1, 0xda, 0x56, 0xc7, - 0xbc, 0xcf, 0x4f, 0x35, 0xd9, 0xf0, 0x54, 0xd3, 0x34, 0x88, 0x84, 0x61, 0x47, 0x9b, 0x39, 0x26, - 0x9f, 0xf5, 0xcc, 0xf0, 0xec, 0xd0, 0x07, 0x5c, 0x52, 0xe6, 0x25, 0x02, 0x60, 0x5c, 0x41, 0xf9, - 0xd9, 0x5d, 0x8f, 0xba, 0xa0, 0xf9, 0x1c, 0x3f, 0xfa, 0x6c, 0x30, 0x00, 0xe1, 0x70, 0x7c, 0x13, - 0x4d, 0xcc, 0xd1, 0x96, 0xb6, 0x7b, 0xc7, 0x68, 0xb5, 0x0c, 0x97, 0x36, 0x2d, 0x53, 0x77, 0x41, - 0xc9, 0xa2, 0xb9, 0xb6, 0x4b, 0x92, 0x04, 0x58, 0x45, 0x85, 0x95, 0x7b, 0xf7, 0x5c, 0xea, 0x81, - 0xfa, 0x72, 0xb3, 0xa8, 0xd7, 0xad, 0x14, 0x2c, 0x80, 0x10, 0x81, 0x51, 0xbf, 0x99, 0x41, 0xe3, - 0x73, 0xd4, 0xbd, 0xef, 0x59, 0x76, 0x30, 0xca, 0x0f, 0xa4, 0x92, 0xab, 0xa8, 0x78, 0x87, 0xba, - 0x2e, 0xdb, 0x96, 0xb2, 0xf0, 0xb6, 0x63, 0xe2, 0x6d, 0x8b, 0x6d, 0x0e, 0x26, 0x3e, 0x3e, 0xfd, - 0xad, 0x72, 0x0f, 0x79, 0x2b, 0xf5, 0x27, 0x59, 0x74, 0x46, 0x3c, 0x71, 0xad, 0x65, 0xd8, 0x1b, - 0x96, 0xe6, 0xe8, 0x84, 0x36, 0xa9, 0xb1, 0x4d, 0x8f, 0xe7, 0xc4, 0x8b, 0x4e, 0x9d, 0xc1, 0x03, - 0x4c, 0x9d, 0x19, 0x54, 0x16, 0x9a, 0x01, 0x1b, 0x96, 0x6f, 0xdb, 0xe3, 0xbd, 0x6e, 0x65, 0x58, - 0xe7, 0x60, 0x30, 0xff, 0x89, 0x4c, 0xc4, 0x06, 0xc9, 0x12, 0x35, 0x37, 0xbd, 0x2d, 0x18, 0x24, - 0x79, 0x3e, 0x48, 0x5a, 0x00, 0x21, 0x02, 0xa3, 0xfe, 0x6b, 0x16, 0x4d, 0xc6, 0x55, 0xbe, 0x46, - 0x4d, 0xfd, 0x44, 0xdf, 0x1f, 0x8e, 0xbe, 0xff, 0x26, 0x8b, 0x46, 0x82, 0xad, 0xe7, 0x0b, 0xb4, - 0x79, 0x34, 0x26, 0x53, 0xb8, 0x21, 0xe4, 0x0e, 0xbc, 0x21, 0x1c, 0x44, 0xcb, 0x2a, 0x2a, 0x10, - 0xaa, 0xb9, 0x62, 0x5b, 0x19, 0xe2, 0x1a, 0x73, 0x00, 0x42, 0x04, 0x06, 0x3f, 0x8f, 0x8a, 0x77, - 0xb4, 0x07, 0x46, 0xbb, 0xd3, 0x16, 0x6b, 0x1d, 0x38, 0x4f, 0xda, 0xda, 0x03, 0xe2, 0xc3, 0xd5, - 0xbf, 0xcd, 0xb0, 0x13, 0x36, 0x28, 0x55, 0x08, 0x3f, 0x90, 0x56, 0x43, 0xed, 0x64, 0x0f, 0xac, - 0x9d, 0xdc, 0xe3, 0x6b, 0x47, 0xfd, 0xe6, 0x20, 0x53, 0x0f, 0x33, 0xfd, 0x9e, 0xf6, 0xd9, 0x18, - 0xf6, 0x48, 0xfe, 0x31, 0x7a, 0xe4, 0xa9, 0xb1, 0xab, 0xd5, 0xff, 0x28, 0x22, 0x24, 0xb4, 0x3f, - 0x7f, 0xb2, 0x86, 0x1f, 0x6c, 0xd4, 0xcc, 0xa1, 0x89, 0x79, 0x73, 0x4b, 0x33, 0x9b, 0x54, 0x0f, - 0x4f, 0x17, 0x6c, 0xe8, 0x94, 0xb8, 0x67, 0x96, 0x0a, 0x64, 0x78, 0xbc, 0x20, 0x49, 0x06, 0x7c, - 0x1d, 0x95, 0xeb, 0xa6, 0x47, 0x1d, 0xad, 0xe9, 0x19, 0xdb, 0x14, 0x46, 0x4f, 0x69, 0x76, 0xac, - 0xd7, 0xad, 0x94, 0x8d, 0x10, 0x4c, 0x64, 0x1a, 0x7c, 0x13, 0x0d, 0xaf, 0x6a, 0x8e, 0x67, 0x34, - 0x0d, 0x5b, 0x33, 0x3d, 0x57, 0x29, 0xc1, 0xd1, 0x08, 0xf6, 0x1e, 0x5b, 0x82, 0x93, 0x08, 0x15, - 0xfe, 0x3c, 0x1a, 0x82, 0x23, 0x38, 0x78, 0xbf, 0x87, 0x1e, 0xea, 0xfd, 0xbe, 0x14, 0x7a, 0xf4, - 0xf8, 0x21, 0xc9, 0x65, 0xcc, 0xe1, 0x54, 0x00, 0x87, 0x78, 0x28, 0x11, 0x7f, 0x16, 0x15, 0xe7, - 0x4d, 0x1d, 0x84, 0xa3, 0x87, 0x0a, 0x57, 0x85, 0xf0, 0x67, 0x42, 0xe1, 0x96, 0x1d, 0x93, 0xed, - 0x8b, 0x4b, 0x9f, 0x65, 0xe5, 0x0f, 0x6f, 0x96, 0x0d, 0x7f, 0x08, 0xa7, 0xd7, 0x91, 0xc3, 0x3a, - 0xbd, 0x8e, 0x3e, 0xe6, 0xe9, 0x55, 0x7d, 0x1f, 0x95, 0x67, 0x57, 0x17, 0x82, 0xd9, 0x7b, 0x16, - 0xe5, 0x56, 0xc5, 0x6d, 0xc3, 0x20, 0xdf, 0x30, 0x6d, 0x43, 0x27, 0x0c, 0x86, 0xaf, 0xa2, 0x52, - 0x0d, 0x5c, 0x78, 0xc2, 0x71, 0x3d, 0xc8, 0x1d, 0xd7, 0x4d, 0x80, 0x81, 0xe3, 0xda, 0x47, 0xe3, - 0x8f, 0xa2, 0xe2, 0xaa, 0x63, 0x6d, 0x3a, 0x5a, 0x5b, 0xf8, 0xba, 0xca, 0xcc, 0xd8, 0xb7, 0x39, - 0x88, 0xf8, 0x38, 0xf5, 0x97, 0x32, 0xa8, 0xb0, 0xe6, 0x69, 0x5e, 0xc7, 0x65, 0x1c, 0x6b, 0x1d, - 0x38, 0x41, 0x43, 0xdb, 0x25, 0xce, 0xe1, 0x72, 0x10, 0xf1, 0x71, 0xf8, 0x2a, 0xca, 0xcf, 0x3b, - 0x8e, 0xe5, 0xc8, 0x17, 0x10, 0x94, 0x01, 0xe4, 0x0b, 0x08, 0xa0, 0xc0, 0xb7, 0x50, 0x99, 0xaf, - 0x39, 0xfc, 0xe0, 0xc1, 0x9f, 0xe3, 0x74, 0xaf, 0x5b, 0x99, 0x10, 0x87, 0x0e, 0xf9, 0x26, 0x46, - 0xa2, 0x54, 0xbf, 0x9d, 0x93, 0x8c, 0x02, 0xae, 0xf1, 0xa7, 0xf0, 0xf0, 0x7e, 0x03, 0xe5, 0x66, - 0x57, 0x17, 0xc4, 0x02, 0x78, 0xca, 0x67, 0x95, 0x86, 0x4a, 0x8c, 0x8f, 0x51, 0xe3, 0xf3, 0x68, - 0x70, 0x95, 0x0d, 0x9f, 0x02, 0x0c, 0x8f, 0x52, 0xaf, 0x5b, 0x19, 0xb4, 0xd9, 0xf8, 0x01, 0x28, - 0x60, 0x35, 0x6f, 0x0b, 0xd6, 0xb2, 0x21, 0x81, 0xd5, 0xbc, 0x2d, 0x02, 0x50, 0x86, 0xad, 0x3a, - 0x9b, 0xdb, 0x62, 0xd5, 0x02, 0xac, 0xe6, 0x6c, 0x6e, 0x13, 0x80, 0xe2, 0x69, 0x84, 0x08, 0xf5, - 0x3a, 0x8e, 0x09, 0x97, 0x79, 0x43, 0x60, 0x26, 0xc3, 0x6a, 0xe8, 0x00, 0xb4, 0xd1, 0xb4, 0x74, - 0x4a, 0x24, 0x12, 0xf5, 0x37, 0x43, 0xff, 0xcb, 0x9c, 0xe1, 0xde, 0x3f, 0xe9, 0xc2, 0x7d, 0x74, - 0xa1, 0x26, 0x4e, 0x22, 0xc9, 0x4e, 0xaa, 0xa0, 0xfc, 0x42, 0x4b, 0xdb, 0x74, 0xa1, 0x0f, 0xf3, - 0xdc, 0x2b, 0x71, 0x8f, 0x01, 0x08, 0x87, 0xc7, 0xfa, 0xa9, 0xf4, 0xf0, 0x7e, 0xfa, 0xe5, 0x7c, - 0x30, 0xdb, 0x96, 0xa9, 0xb7, 0x63, 0x39, 0x27, 0x5d, 0xf5, 0xa8, 0x5d, 0x75, 0x19, 0x15, 0xd7, - 0x9c, 0x26, 0x1c, 0x33, 0x79, 0x6f, 0x0d, 0xf7, 0xba, 0x95, 0x92, 0xeb, 0x34, 0xf9, 0x11, 0xd3, - 0x47, 0x32, 0xba, 0x39, 0xd7, 0x03, 0xba, 0x62, 0x48, 0xa7, 0xbb, 0x9e, 0xa0, 0x13, 0x48, 0x41, - 0xb7, 0x6a, 0x39, 0x9e, 0xe8, 0xb8, 0x80, 0xce, 0xb6, 0x1c, 0x8f, 0xf8, 0x48, 0xfc, 0x22, 0x42, - 0xeb, 0xb5, 0xd5, 0x77, 0xa8, 0x03, 0xea, 0xe2, 0x73, 0x11, 0x96, 0xeb, 0x6d, 0x0e, 0x22, 0x12, - 0x1a, 0xaf, 0xa3, 0xa1, 0x15, 0x9b, 0x3a, 0x10, 0x26, 0x00, 0x16, 0xc0, 0xe8, 0xcc, 0x0b, 0x31, - 0xd5, 0x8a, 0x7e, 0x9f, 0x12, 0x7f, 0x03, 0x72, 0xbe, 0xbf, 0x58, 0xfe, 0x4f, 0x12, 0x0a, 0xc2, - 0xb7, 0x50, 0xa1, 0xca, 0xed, 0xbc, 0x32, 0x88, 0x0c, 0x54, 0x36, 0xcf, 0xfe, 0x70, 0x14, 0x3f, - 0x14, 0x6a, 0xf0, 0x3f, 0x11, 0xe4, 0xea, 0x55, 0x34, 0x1e, 0x6f, 0x06, 0x97, 0x51, 0xb1, 0xb6, - 0xb2, 0xbc, 0x3c, 0x5f, 0x5b, 0x1f, 0x1f, 0xc0, 0x25, 0x34, 0xb8, 0x36, 0xbf, 0x3c, 0x37, 0x9e, - 0x51, 0xbf, 0x21, 0xad, 0x20, 0x6c, 0x68, 0x9d, 0x78, 0x70, 0x0f, 0xe4, 0x16, 0x19, 0x07, 0xb7, - 0xe5, 0xba, 0xa3, 0x99, 0x6e, 0xdb, 0xf0, 0x3c, 0xaa, 0x8b, 0x5d, 0x02, 0xdc, 0x7a, 0xde, 0x03, - 0x92, 0xc0, 0xe3, 0x6b, 0x68, 0x04, 0x60, 0xc2, 0x93, 0xa7, 0xc3, 0xe8, 0x15, 0x0c, 0xce, 0x03, - 0x12, 0x45, 0xaa, 0x7f, 0x19, 0x3a, 0x71, 0x97, 0xa8, 0x76, 0x5c, 0x1d, 0x7f, 0xff, 0x4b, 0xfa, - 0x4b, 0xfd, 0xf5, 0x1c, 0x1a, 0x62, 0x6f, 0xc4, 0x83, 0x39, 0x8e, 0x42, 0x95, 0x37, 0x7d, 0xdb, - 0x50, 0x68, 0x72, 0x34, 0xd0, 0x04, 0x40, 0x13, 0x1a, 0xe0, 0x76, 0xe4, 0x35, 0x54, 0xb8, 0x43, - 0xbd, 0x2d, 0x4b, 0x17, 0x17, 0xa0, 0x93, 0xbd, 0x6e, 0x65, 0xbc, 0x0d, 0x10, 0xc9, 0xde, 0x13, - 0x34, 0xf8, 0x3e, 0xc2, 0x75, 0x9d, 0x9a, 0x9e, 0xe1, 0xed, 0x56, 0x3d, 0xcf, 0x31, 0x36, 0x3a, - 0x1e, 0x75, 0x85, 0xde, 0xce, 0x24, 0xce, 0x29, 0x6b, 0x10, 0x09, 0x05, 0x77, 0x9e, 0x93, 0x5a, - 0x40, 0x1e, 0x8a, 0xfd, 0xaf, 0x6e, 0xa5, 0xc0, 0x69, 0x48, 0x8a, 0x58, 0xfc, 0x36, 0x1a, 0xba, - 0xb3, 0x50, 0x9d, 0xa3, 0xdb, 0x46, 0x93, 0x8a, 0xcb, 0x8b, 0xb3, 0x81, 0x16, 0x7d, 0x44, 0xa0, - 0x12, 0x88, 0x4f, 0x68, 0xdf, 0xd3, 0x1a, 0x3a, 0xc0, 0xe5, 0xf8, 0x84, 0x80, 0x58, 0xfd, 0x97, - 0x0c, 0x1a, 0x27, 0xd4, 0xb5, 0x3a, 0x4e, 0xc8, 0x89, 0x2f, 0xa3, 0x41, 0xe9, 0x72, 0x1c, 0xbc, - 0x15, 0xb1, 0x1b, 0x59, 0xc0, 0xe3, 0x35, 0x54, 0x9c, 0x7f, 0x60, 0x1b, 0x0e, 0x75, 0x45, 0xdf, - 0xec, 0x75, 0x32, 0x7b, 0x4e, 0x9c, 0xcc, 0x26, 0x28, 0x67, 0x49, 0x1c, 0xca, 0x38, 0x18, 0xbf, - 0x82, 0x86, 0xee, 0xda, 0xba, 0xe6, 0x51, 0x7d, 0x76, 0x57, 0xd8, 0xdc, 0xf0, 0x26, 0x1d, 0x0e, - 0x6c, 0x6c, 0xec, 0xca, 0x6f, 0x12, 0x90, 0xe2, 0x4b, 0x28, 0xb7, 0xbe, 0xbe, 0x24, 0x3a, 0x0d, - 0x42, 0xb9, 0x3c, 0x4f, 0x0e, 0xca, 0x60, 0x58, 0xf5, 0xab, 0x59, 0x84, 0xd8, 0xd8, 0xa8, 0x39, - 0x54, 0xf3, 0x8e, 0x66, 0x82, 0xcf, 0xa2, 0x92, 0xaf, 0x70, 0x31, 0x2e, 0x15, 0x9f, 0x37, 0xde, - 0x11, 0xf1, 0xb6, 0x7d, 0x3c, 0x33, 0xa2, 0x88, 0xd5, 0x82, 0xab, 0x9d, 0x9c, 0x1f, 0xd5, 0xe6, - 0x30, 0x00, 0xe1, 0x70, 0xfc, 0x22, 0x1a, 0x12, 0x53, 0xd1, 0xf2, 0x3d, 0xc8, 0xfc, 0xa8, 0xe5, - 0x03, 0x49, 0x88, 0x57, 0xff, 0x2c, 0xc3, 0x95, 0x32, 0x47, 0x5b, 0xf4, 0xf8, 0x2a, 0x45, 0xfd, - 0x52, 0x06, 0x61, 0x26, 0x6c, 0x55, 0x73, 0xdd, 0x1d, 0xcb, 0xd1, 0x6b, 0x5b, 0x9a, 0xb9, 0x79, - 0x24, 0xaf, 0xa3, 0x7e, 0x39, 0x8f, 0x4e, 0x45, 0x6e, 0x73, 0x8f, 0xf9, 0x78, 0xbb, 0x1a, 0x1d, - 0x6f, 0x70, 0x68, 0x86, 0xf1, 0x26, 0x1f, 0x9a, 0xf9, 0xc8, 0xfb, 0x08, 0x1a, 0x12, 0xef, 0x5c, - 0x9f, 0x13, 0x23, 0x0f, 0xb6, 0x5b, 0x43, 0x27, 0x21, 0x02, 0xbf, 0x84, 0x86, 0xc5, 0x0f, 0xb6, - 0xea, 0xfa, 0x7e, 0x51, 0x18, 0xc7, 0x2e, 0x03, 0x90, 0x08, 0x1a, 0xbf, 0x8c, 0x86, 0xd8, 0xe0, - 0xdc, 0x84, 0x38, 0xc0, 0x62, 0x18, 0x2e, 0xa7, 0xfb, 0x40, 0x79, 0x49, 0x08, 0x28, 0xd9, 0x52, - 0x2e, 0x7c, 0xfc, 0xa5, 0x70, 0x29, 0xe7, 0x3e, 0x7e, 0x79, 0x29, 0x17, 0xde, 0xfe, 0xf7, 0x50, - 0xb9, 0x6a, 0x9a, 0x16, 0x8f, 0x47, 0x75, 0x85, 0x23, 0xab, 0xef, 0x1a, 0x7e, 0x09, 0x82, 0xb8, - 0x42, 0xfa, 0xd4, 0x45, 0x5c, 0x16, 0x88, 0x67, 0x58, 0x47, 0x6c, 0x1b, 0x74, 0x87, 0x3a, 0x22, - 0x54, 0x00, 0x9c, 0x79, 0x8e, 0x80, 0xc9, 0x21, 0x5d, 0x3e, 0x1d, 0x9e, 0x45, 0x23, 0xab, 0x8e, - 0x65, 0x5b, 0x2e, 0xd5, 0xb9, 0xa2, 0xca, 0xc0, 0x78, 0xbe, 0xd7, 0xad, 0x28, 0xb6, 0x40, 0x34, - 0x40, 0x63, 0x12, 0x7b, 0x94, 0x45, 0xfd, 0x66, 0x26, 0x36, 0x18, 0x8f, 0x70, 0x9e, 0x47, 0x46, - 0x47, 0xae, 0xcf, 0xe8, 0x50, 0xbf, 0x96, 0x45, 0x65, 0x76, 0x4e, 0x58, 0xb0, 0x9c, 0x1d, 0xcd, - 0x39, 0x1a, 0xe7, 0xc9, 0xa1, 0xdd, 0xa5, 0x48, 0x66, 0xc8, 0xe0, 0x3e, 0xcc, 0x90, 0xf3, 0x68, - 0x50, 0xba, 0xfe, 0xe3, 0xce, 0x0c, 0x76, 0xd6, 0x02, 0xa8, 0xfa, 0x7f, 0xb2, 0x08, 0x7d, 0xf6, - 0xfa, 0xf5, 0xa7, 0x58, 0x41, 0xea, 0xaf, 0x66, 0xd0, 0x98, 0xf0, 0xae, 0x49, 0xf1, 0xce, 0x45, - 0xdf, 0x2f, 0x9a, 0x09, 0xbd, 0x86, 0xc2, 0x1f, 0x4a, 0x7c, 0x1c, 0x9b, 0x89, 0xf3, 0x0f, 0x0c, - 0x0f, 0x1c, 0x0c, 0x52, 0xc0, 0x33, 0x15, 0x30, 0x79, 0x26, 0xfa, 0x74, 0xf8, 0x25, 0xdf, 0x6f, - 0x98, 0x0b, 0x97, 0x1f, 0xc6, 0x30, 0x9f, 0xea, 0x3b, 0x54, 0xbf, 0x35, 0x88, 0x06, 0xe7, 0x1f, - 0xd0, 0xe6, 0x31, 0xef, 0x1a, 0xe9, 0x34, 0x32, 0x78, 0xc0, 0xd3, 0xc8, 0xe3, 0x5c, 0x84, 0xbc, - 0x11, 0xf6, 0x67, 0x21, 0xda, 0x7c, 0xac, 0xe7, 0xe3, 0xcd, 0xfb, 0x3d, 0x7d, 0xfc, 0xee, 0xd1, - 0xfe, 0x3c, 0x87, 0x72, 0x6b, 0xb5, 0xd5, 0x93, 0x71, 0x73, 0xa4, 0xe3, 0x66, 0x6f, 0x47, 0xb3, - 0x1a, 0xf8, 0x8e, 0x4a, 0x61, 0xec, 0x40, 0xcc, 0x4d, 0xf4, 0x95, 0x2c, 0x1a, 0x5a, 0xeb, 0x6c, - 0xb8, 0xbb, 0xae, 0x47, 0xdb, 0xc7, 0xbc, 0x37, 0xcf, 0x8b, 0xf3, 0xe0, 0x60, 0xa8, 0x0d, 0x76, - 0x1e, 0x14, 0xa7, 0xc0, 0x4b, 0xfe, 0xca, 0x28, 0x9d, 0x33, 0x82, 0x95, 0xd1, 0x5f, 0x0f, 0x7f, - 0x3f, 0x8b, 0xc6, 0x6b, 0x2d, 0x83, 0x9a, 0xde, 0x9c, 0xe1, 0x36, 0x0f, 0x21, 0x52, 0xe2, 0xe8, - 0xb5, 0x72, 0x30, 0x47, 0xcb, 0x23, 0xc4, 0x9f, 0xa8, 0xff, 0x37, 0x8b, 0xca, 0xd5, 0x8e, 0xb7, - 0x55, 0xf5, 0x60, 0x73, 0x79, 0x2a, 0xb7, 0xf9, 0xef, 0x64, 0xd0, 0x18, 0x7b, 0x90, 0x75, 0xeb, - 0x3e, 0x35, 0x0f, 0xe1, 0x18, 0x25, 0x1f, 0x87, 0xb2, 0x8f, 0x79, 0x1c, 0xf2, 0x75, 0x99, 0xdb, - 0xe7, 0xb1, 0x90, 0x1d, 0xb4, 0xd9, 0x29, 0xe9, 0x09, 0x79, 0x8d, 0x43, 0x38, 0x47, 0x1c, 0xe5, - 0x6b, 0x7c, 0x2f, 0x83, 0x26, 0xd7, 0x1d, 0xb6, 0x91, 0xeb, 0x62, 0x3f, 0x3f, 0xe6, 0xfd, 0x92, - 0x7c, 0xa1, 0x63, 0xde, 0x43, 0x3f, 0xc8, 0xa0, 0xb3, 0xd1, 0x17, 0x7a, 0x12, 0x56, 0x81, 0xbf, - 0xca, 0xa0, 0xd3, 0x6f, 0x42, 0x12, 0x6c, 0xe0, 0x82, 0x7b, 0xf2, 0xde, 0xe8, 0x98, 0x8f, 0xbc, - 0xef, 0x66, 0xd0, 0xa9, 0x95, 0xfa, 0x5c, 0xed, 0x49, 0xe9, 0xa1, 0xc4, 0xfb, 0x3c, 0x01, 0xfd, - 0xb3, 0x56, 0xbd, 0xb3, 0xf4, 0x24, 0xf5, 0x4f, 0xe4, 0x7d, 0x8e, 0x79, 0xff, 0xfc, 0xff, 0x02, - 0x2a, 0xb3, 0x73, 0xad, 0xf0, 0xe9, 0x3d, 0xd5, 0x96, 0xfe, 0x0c, 0x2a, 0x0b, 0x35, 0xc0, 0x91, - 0x52, 0x8a, 0xe7, 0x17, 0x19, 0xe4, 0x0d, 0x38, 0x5a, 0xca, 0x44, 0xec, 0xc4, 0xf5, 0x0e, 0x75, - 0x36, 0xe4, 0x18, 0x9a, 0x6d, 0xea, 0x6c, 0x10, 0x80, 0xe2, 0xa5, 0xf0, 0xce, 0xae, 0xba, 0x5a, - 0x87, 0xc4, 0x57, 0x71, 0x52, 0x85, 0x4c, 0x5e, 0x47, 0xe0, 0x1a, 0x9a, 0x6d, 0xf0, 0x94, 0x59, - 0x39, 0x7e, 0x2f, 0xce, 0x89, 0x97, 0xd1, 0x84, 0x0f, 0x0b, 0x33, 0x58, 0x4b, 0x29, 0xe2, 0xd2, - 0x72, 0x57, 0x93, 0xac, 0xf8, 0x0d, 0x34, 0xec, 0x03, 0xdf, 0x32, 0x20, 0xbf, 0x8e, 0x89, 0x7a, - 0xb6, 0xd7, 0xad, 0x9c, 0x09, 0x44, 0xdd, 0x37, 0x22, 0xf1, 0x89, 0x11, 0x06, 0x59, 0x00, 0x1c, - 0x3b, 0x51, 0x8a, 0x80, 0xd8, 0x7d, 0x64, 0x84, 0x01, 0xbf, 0x0c, 0x02, 0x6c, 0xcb, 0x74, 0x29, - 0xf8, 0xf8, 0xca, 0x10, 0x60, 0x02, 0x77, 0x82, 0x8e, 0x80, 0xf3, 0x30, 0xa2, 0x08, 0x19, 0x5e, - 0x41, 0x28, 0xf4, 0xc5, 0x88, 0x60, 0xcd, 0x7d, 0x7b, 0x89, 0x24, 0x11, 0xea, 0x5f, 0xb3, 0xf3, - 0x9b, 0x6d, 0x07, 0x23, 0xf9, 0x25, 0x54, 0xa8, 0xda, 0xf6, 0x5d, 0x52, 0x17, 0xde, 0x49, 0x88, - 0x25, 0xd4, 0x6c, 0xbb, 0xd1, 0x71, 0x0c, 0xf9, 0x42, 0x82, 0x13, 0xe1, 0x1a, 0x1a, 0xa9, 0xda, - 0xf6, 0x6a, 0x67, 0xa3, 0x65, 0x34, 0xa5, 0xf4, 0x71, 0x5e, 0x83, 0xc0, 0xb6, 0x1b, 0x36, 0x60, - 0xe2, 0xc9, 0xf7, 0x51, 0x1e, 0xfc, 0x1e, 0x1a, 0xaa, 0xda, 0xb6, 0x48, 0xbe, 0xcf, 0x41, 0xf2, - 0xbd, 0xea, 0xbf, 0x93, 0xf4, 0x6c, 0x53, 0x01, 0x11, 0x4f, 0xbb, 0x3f, 0x2f, 0x6e, 0x6b, 0x27, - 0x59, 0x43, 0x89, 0x9c, 0xfb, 0x50, 0x24, 0xfe, 0x38, 0x2a, 0x56, 0x6d, 0x5b, 0x72, 0x0f, 0x80, - 0x2b, 0x95, 0x71, 0xc5, 0xba, 0xc8, 0x27, 0x3b, 0xf7, 0x1a, 0x1a, 0x8d, 0x36, 0xb6, 0xaf, 0xfc, - 0xfc, 0x9f, 0x66, 0xe0, 0x85, 0x8e, 0xf9, 0x85, 0xda, 0x0d, 0x94, 0xab, 0xda, 0xb6, 0x58, 0x4e, - 0x4e, 0xa5, 0xf4, 0x47, 0x3c, 0x5a, 0xab, 0x6a, 0xdb, 0xfe, 0xab, 0xf3, 0x2b, 0xef, 0xa7, 0xeb, - 0xd5, 0xbf, 0xcd, 0x5f, 0xfd, 0x98, 0xdf, 0x50, 0x7f, 0x2b, 0x87, 0xc6, 0xaa, 0xb6, 0x7d, 0x92, - 0xb6, 0x7e, 0x58, 0x31, 0x61, 0xd7, 0x11, 0x92, 0x96, 0xc7, 0x62, 0x10, 0xfa, 0x51, 0x96, 0x96, - 0x46, 0x25, 0x43, 0x24, 0x22, 0x7f, 0xf8, 0x95, 0xf6, 0x35, 0xfc, 0xfe, 0x24, 0xd2, 0x71, 0x90, - 0x82, 0x7b, 0xd2, 0x71, 0xf9, 0x03, 0x59, 0x54, 0xa3, 0xb2, 0x32, 0x45, 0xc0, 0xb7, 0xb8, 0xa1, - 0xf7, 0xd3, 0x0f, 0x9a, 0x0c, 0xd5, 0x30, 0x74, 0x12, 0xa3, 0xf5, 0xfb, 0xb0, 0xb8, 0xaf, 0x3e, - 0xfc, 0x7a, 0x16, 0x4d, 0x84, 0x7d, 0x78, 0x18, 0x86, 0xe9, 0x34, 0x42, 0xdc, 0x49, 0x19, 0x5c, - 0x24, 0x8e, 0xf0, 0x48, 0x65, 0x17, 0xa0, 0x22, 0x52, 0x39, 0x24, 0x09, 0x6e, 0x15, 0x72, 0xa9, - 0xb7, 0x0a, 0x57, 0x51, 0x89, 0x68, 0x3b, 0x6f, 0x77, 0xa8, 0xb3, 0x2b, 0xb6, 0x52, 0x70, 0xa5, - 0x3b, 0xda, 0x4e, 0xe3, 0x8b, 0x0c, 0x48, 0x02, 0x34, 0x56, 0x83, 0x18, 0x35, 0xc9, 0x79, 0xcc, - 0x63, 0xd4, 0x82, 0xc8, 0x34, 0xa1, 0xa4, 0xc2, 0xbe, 0x94, 0xf4, 0x83, 0x02, 0x1a, 0x9f, 0xd3, - 0x3c, 0x6d, 0x43, 0x73, 0xa9, 0x74, 0x90, 0x18, 0xf3, 0x61, 0x6c, 0x20, 0x18, 0x41, 0xc9, 0x22, - 0x88, 0xcb, 0xd2, 0x37, 0x1a, 0x2e, 0x87, 0xca, 0x35, 0x5e, 0x62, 0x0c, 0xf8, 0x53, 0xa1, 0xdc, - 0xa0, 0xa8, 0x0d, 0x37, 0x67, 0x40, 0x63, 0xfa, 0x46, 0xc3, 0x16, 0x60, 0x92, 0x20, 0xc4, 0xd7, - 0x50, 0xd9, 0x87, 0x31, 0xe3, 0x29, 0x17, 0xbe, 0xb3, 0xbe, 0xc1, 0x6c, 0x27, 0x22, 0xa3, 0xf1, - 0x27, 0xd1, 0xb0, 0xff, 0x53, 0x32, 0x4b, 0xc0, 0xd6, 0xd2, 0x37, 0x12, 0x86, 0xa3, 0x4c, 0x2a, - 0xb3, 0xc2, 0xfc, 0xcc, 0x47, 0x58, 0x63, 0x05, 0xad, 0x22, 0xa4, 0xf8, 0x8b, 0x68, 0xd4, 0xff, - 0x2d, 0x8c, 0xad, 0x02, 0x18, 0x5b, 0xd7, 0x7c, 0xcd, 0xc7, 0xd5, 0x3a, 0x15, 0x25, 0xe7, 0x66, - 0xd7, 0xb3, 0xc2, 0xec, 0x3a, 0xa5, 0x6f, 0x24, 0xad, 0xae, 0x58, 0x03, 0xb8, 0x8e, 0x26, 0x7c, - 0x48, 0xf5, 0xdd, 0x35, 0x42, 0x37, 0xd9, 0xac, 0x2c, 0x86, 0xc6, 0xb2, 0xbe, 0xd1, 0x80, 0x52, - 0x57, 0x80, 0x90, 0x6d, 0xf6, 0x04, 0x17, 0x6e, 0xa1, 0xf3, 0x11, 0xa0, 0xee, 0x6e, 0x19, 0xf7, - 0x3c, 0x61, 0xe9, 0xd6, 0xe7, 0xc4, 0x71, 0x00, 0x6a, 0xc1, 0x04, 0x52, 0x39, 0x8d, 0x5f, 0x2c, - 0xa8, 0x11, 0xa9, 0x9b, 0xb6, 0xa7, 0x34, 0xbc, 0x86, 0x26, 0x7d, 0xfc, 0x9b, 0xb5, 0xd5, 0x55, - 0xc7, 0xfa, 0x02, 0x6d, 0x7a, 0xf5, 0x39, 0x71, 0x52, 0x80, 0x14, 0x24, 0x7d, 0xa3, 0xb1, 0xd9, - 0xb4, 0xd9, 0xa0, 0x60, 0xb8, 0xa8, 0xf0, 0x54, 0x66, 0xfc, 0x0e, 0x3a, 0x2d, 0xc1, 0xeb, 0xa6, - 0xeb, 0x69, 0x66, 0x93, 0xd6, 0xe7, 0xc4, 0xf1, 0x01, 0x8e, 0x32, 0x42, 0xaa, 0x21, 0x90, 0x51, - 0xb1, 0xe9, 0xec, 0xe7, 0xaa, 0xe8, 0x54, 0x4a, 0x4f, 0xed, 0xcb, 0x66, 0xfd, 0x4a, 0x36, 0x1c, - 0x1c, 0xc7, 0xdc, 0x70, 0x9d, 0x45, 0x25, 0xff, 0x4d, 0xc4, 0x16, 0xa2, 0xf4, 0x1b, 0xe0, 0x71, - 0x19, 0x3e, 0x3e, 0xa2, 0x8e, 0x63, 0x6e, 0xcc, 0x1e, 0x86, 0x3a, 0x3e, 0xc8, 0x84, 0xea, 0x38, - 0xe6, 0x06, 0xee, 0x77, 0x73, 0xe1, 0xcc, 0x3e, 0xb1, 0x72, 0x0f, 0xcb, 0x58, 0x0a, 0x2f, 0x4e, - 0x0b, 0xfb, 0x08, 0x20, 0x93, 0x87, 0x66, 0xf1, 0x31, 0x87, 0xe6, 0x0f, 0x93, 0xfd, 0xc9, 0x0d, - 0x90, 0x63, 0xd9, 0x9f, 0x87, 0x30, 0x59, 0xf1, 0x0c, 0x1a, 0xf1, 0xff, 0xe7, 0x96, 0x5a, 0x5e, - 0xca, 0x87, 0xda, 0x10, 0x86, 0x5a, 0x94, 0x04, 0x7f, 0x0e, 0x9d, 0x89, 0x00, 0x56, 0x35, 0x47, - 0x6b, 0x53, 0x8f, 0x3a, 0xdc, 0x46, 0x10, 0xe5, 0xe7, 0x7c, 0xee, 0x86, 0x1d, 0xa0, 0xe5, 0x0a, - 0x6e, 0x7d, 0x24, 0x48, 0x83, 0xa3, 0xb8, 0x8f, 0x5b, 0xf5, 0x7f, 0xca, 0xa2, 0x91, 0x55, 0xcb, - 0xf5, 0x36, 0x1d, 0xea, 0xae, 0x6a, 0x8e, 0x4b, 0x9f, 0xde, 0x1e, 0xfd, 0x04, 0x1a, 0x81, 0x38, - 0xd9, 0x36, 0x35, 0x3d, 0xa9, 0x2e, 0x1d, 0xaf, 0xd1, 0xe0, 0x23, 0xc0, 0x6c, 0x24, 0x51, 0x42, - 0x5c, 0x41, 0x79, 0x3e, 0x06, 0xa4, 0xe8, 0x65, 0x3e, 0x00, 0x38, 0x5c, 0xfd, 0x7a, 0x0e, 0x0d, - 0xfb, 0x5a, 0x9e, 0x35, 0x8e, 0x6b, 0x16, 0xf0, 0xd1, 0x2a, 0x79, 0x1a, 0xa1, 0x55, 0xcb, 0xf1, - 0xb4, 0x96, 0x54, 0x12, 0x17, 0x8e, 0x0c, 0x36, 0x40, 0x39, 0x8f, 0x44, 0x82, 0xa7, 0x10, 0x92, - 0x26, 0x58, 0x11, 0x26, 0xd8, 0x68, 0xaf, 0x5b, 0x41, 0xe1, 0xbc, 0x22, 0x12, 0x85, 0xfa, 0x47, - 0x59, 0x34, 0xe6, 0x77, 0xd2, 0xfc, 0x03, 0xda, 0xec, 0x78, 0x4f, 0xf1, 0x64, 0x88, 0x6a, 0x3b, - 0xff, 0x50, 0x6d, 0xab, 0xff, 0x26, 0x2d, 0x24, 0xb5, 0x96, 0x75, 0xb2, 0x90, 0xfc, 0x4f, 0x8c, - 0x71, 0xf5, 0x67, 0x72, 0x68, 0xd2, 0xd7, 0xfa, 0x42, 0xc7, 0x04, 0x33, 0xa1, 0xa6, 0xb5, 0x5a, - 0x4f, 0xf3, 0xbe, 0x5c, 0xf6, 0x15, 0xb1, 0x22, 0x12, 0x4f, 0x46, 0xf8, 0x25, 0xdb, 0x3d, 0x01, - 0x6e, 0x58, 0x86, 0x4e, 0x64, 0x22, 0xfc, 0x06, 0x1a, 0xf6, 0x7f, 0x56, 0x9d, 0x4d, 0x7f, 0x33, - 0x86, 0xa3, 0x73, 0xc0, 0xa4, 0x39, 0x9b, 0x91, 0x62, 0xc3, 0x32, 0x83, 0xfa, 0xb5, 0x02, 0x3a, - 0xf7, 0xae, 0x61, 0xea, 0xd6, 0x8e, 0x2b, 0x8a, 0x71, 0x1d, 0x7f, 0xa3, 0xf7, 0xf0, 0x6a, 0xe0, - 0x84, 0x96, 0x49, 0x7e, 0x1f, 0x66, 0xeb, 0xdb, 0xe8, 0x74, 0x5c, 0xa5, 0x4e, 0x90, 0xef, 0x28, - 0x7a, 0x67, 0x87, 0x13, 0x34, 0xfc, 0x7a, 0x68, 0xc2, 0xff, 0x44, 0xd2, 0x39, 0xe3, 0x05, 0xd5, - 0x8a, 0x8f, 0x52, 0x50, 0xed, 0x63, 0xa8, 0x30, 0x67, 0xb5, 0x35, 0xc3, 0x0f, 0xf1, 0x85, 0x59, - 0x1c, 0xb4, 0x0b, 0x18, 0x22, 0x28, 0x98, 0x7c, 0xd1, 0x30, 0x74, 0xd9, 0x50, 0x28, 0xdf, 0x67, - 0xe8, 0xb8, 0xd4, 0x21, 0x32, 0x11, 0xb6, 0xd0, 0x88, 0x68, 0x4e, 0x78, 0x8b, 0x10, 0x78, 0x8b, - 0x5e, 0xf6, 0x75, 0xd4, 0x7f, 0x58, 0x4d, 0x45, 0xf8, 0xb8, 0xdb, 0x08, 0x9e, 0xce, 0x7f, 0x19, - 0xee, 0x37, 0x22, 0x51, 0xf9, 0x92, 0x12, 0x60, 0x91, 0x29, 0x27, 0x95, 0x00, 0xab, 0x8c, 0x4c, - 0x74, 0xee, 0x36, 0xc2, 0xc9, 0xc6, 0xf6, 0xe5, 0xf9, 0xf8, 0xf9, 0x2c, 0xc2, 0xb1, 0x03, 0xc4, - 0xfc, 0x53, 0x6c, 0x07, 0xa9, 0xbf, 0x93, 0x41, 0x13, 0x89, 0x4c, 0x5d, 0x7c, 0x03, 0x21, 0x0e, - 0x91, 0xb2, 0x6e, 0x21, 0xc7, 0x2e, 0xcc, 0xde, 0x15, 0x7b, 0x40, 0x48, 0x86, 0xa7, 0x51, 0x89, - 0xff, 0x0a, 0xaa, 0xc0, 0xc7, 0x59, 0x3a, 0x1d, 0x43, 0x27, 0x01, 0x51, 0xd8, 0x0a, 0x7c, 0x0f, - 0x21, 0x97, 0xca, 0xe2, 0xed, 0xda, 0x41, 0x2b, 0x8c, 0x4c, 0xfd, 0x76, 0x06, 0x0d, 0x07, 0x0f, - 0x5c, 0xd5, 0x8f, 0xaa, 0xeb, 0x0a, 0x22, 0xe9, 0x39, 0xf7, 0xb0, 0xa4, 0xe7, 0xd8, 0xa2, 0x22, - 0xb2, 0x9c, 0xff, 0x22, 0x83, 0xc6, 0x02, 0xda, 0x23, 0xf4, 0xb1, 0x1c, 0xf8, 0x45, 0x7e, 0x21, - 0x83, 0x94, 0x59, 0xa3, 0xd5, 0x32, 0xcc, 0xcd, 0xba, 0x79, 0xcf, 0x72, 0xda, 0x90, 0x5b, 0x78, - 0x74, 0x4e, 0x34, 0xf5, 0xe7, 0x32, 0x68, 0x42, 0x3c, 0x50, 0x4d, 0x73, 0xf4, 0xa3, 0xf3, 0x6e, - 0xc6, 0x9f, 0xe4, 0xe8, 0x7a, 0x19, 0xe2, 0xa3, 0x97, 0xac, 0xe6, 0xfd, 0x27, 0x20, 0xcc, 0x9b, - 0xbd, 0xc6, 0x31, 0x0f, 0x45, 0xfb, 0x72, 0x06, 0x4d, 0x12, 0xda, 0xb4, 0xb6, 0xa9, 0xb3, 0x5b, - 0xb3, 0x74, 0xfa, 0x26, 0x35, 0xa9, 0x73, 0x54, 0x83, 0xf4, 0x8f, 0xa1, 0xdc, 0x42, 0xf8, 0x30, - 0x77, 0x5d, 0xaa, 0x1f, 0x9f, 0xda, 0x18, 0xea, 0x1f, 0x14, 0x91, 0x92, 0x6a, 0x99, 0x1c, 0xdb, - 0x4d, 0xbd, 0xaf, 0xb9, 0x39, 0x78, 0x58, 0xe6, 0x66, 0x7e, 0x7f, 0xe6, 0x66, 0x61, 0xbf, 0xe6, - 0x66, 0xf1, 0x51, 0xcc, 0xcd, 0x76, 0xdc, 0xdc, 0x2c, 0x81, 0xb9, 0x79, 0x63, 0x4f, 0x73, 0x73, - 0xde, 0xd4, 0x1f, 0xd3, 0xd8, 0x3c, 0xb6, 0x15, 0x21, 0x1f, 0xc3, 0x4a, 0xc6, 0x57, 0xd8, 0xe2, - 0xd6, 0xb4, 0x1c, 0x9d, 0xf2, 0x0a, 0x8f, 0x25, 0xee, 0x0d, 0x76, 0x04, 0x8c, 0x04, 0xd8, 0x44, - 0x79, 0xcd, 0x91, 0x47, 0x29, 0xaf, 0x79, 0x08, 0x56, 0xf8, 0xf7, 0x32, 0x68, 0xa2, 0x46, 0x1d, - 0xcf, 0xb8, 0x67, 0x34, 0x35, 0xef, 0x30, 0xae, 0x20, 0xab, 0x68, 0x4c, 0x12, 0x28, 0x7d, 0x60, - 0x0b, 0xf2, 0xa2, 0x9b, 0xd4, 0xf1, 0xc0, 0x94, 0x94, 0x23, 0x02, 0x62, 0xf4, 0xac, 0x79, 0xbf, - 0xc4, 0x8d, 0x98, 0xbb, 0x41, 0xf3, 0x3e, 0x9c, 0x2b, 0xd2, 0x10, 0xbf, 0x48, 0x40, 0xaf, 0x7e, - 0x23, 0x83, 0x2e, 0x13, 0x6a, 0xd2, 0x1d, 0x6d, 0xa3, 0x45, 0x25, 0xc1, 0x62, 0x6d, 0x67, 0xf3, - 0xde, 0x70, 0xdb, 0x9a, 0xd7, 0xdc, 0x3a, 0xd0, 0x5b, 0x2e, 0x44, 0x3f, 0x72, 0xb5, 0x8f, 0xd5, - 0x29, 0xc2, 0xa7, 0xfe, 0x30, 0x83, 0x8a, 0x77, 0xcd, 0xfb, 0xa6, 0xb5, 0x73, 0xb0, 0x42, 0x48, - 0x37, 0x50, 0x59, 0x88, 0x91, 0x34, 0xce, 0xbf, 0x5a, 0xc6, 0xc1, 0x0d, 0xfe, 0x69, 0x33, 0x99, - 0x0a, 0xbf, 0x16, 0x30, 0x41, 0x98, 0x8a, 0xf4, 0x15, 0x2d, 0x9f, 0x29, 0xf6, 0x35, 0x33, 0x99, - 0x1c, 0x9f, 0x17, 0xdf, 0x18, 0x90, 0x52, 0x3f, 0xd9, 0xa3, 0xf0, 0x4f, 0x0c, 0xa8, 0xbf, 0x72, - 0x0d, 0xe5, 0x57, 0x4c, 0xba, 0x72, 0x0f, 0x5f, 0x97, 0x8a, 0x3d, 0x89, 0xf7, 0x9a, 0x90, 0xf5, - 0x04, 0x88, 0xc5, 0x01, 0x22, 0x95, 0x84, 0xba, 0x29, 0x97, 0xe2, 0x11, 0xba, 0xc5, 0x32, 0x0f, - 0xc7, 0x2c, 0x0e, 0x10, 0xb9, 0x64, 0xcf, 0x4d, 0xb9, 0x56, 0x8d, 0x18, 0x38, 0x11, 0x2e, 0x8e, - 0xf1, 0xb9, 0x84, 0xf1, 0xb2, 0x94, 0x56, 0x1a, 0x26, 0xee, 0xdd, 0x48, 0x52, 0x2c, 0x0e, 0x90, - 0xf4, 0x92, 0x32, 0x91, 0x4f, 0xcf, 0x08, 0xff, 0xc6, 0x64, 0x6c, 0xeb, 0x01, 0xdc, 0xe2, 0x00, - 0x89, 0x7e, 0xa6, 0xe6, 0x56, 0xe4, 0xa3, 0x1e, 0xf1, 0xf0, 0x1c, 0x09, 0xb5, 0x38, 0x40, 0x62, - 0x9f, 0xff, 0x88, 0x7c, 0x61, 0x42, 0x5c, 0xf7, 0xc4, 0x1b, 0x05, 0x9c, 0xd4, 0x28, 0xff, 0x1a, - 0xc5, 0xeb, 0xb1, 0xca, 0xef, 0x22, 0xfc, 0xed, 0x74, 0x8c, 0x99, 0x23, 0x17, 0x07, 0x48, 0xac, - 0x4e, 0xfc, 0x15, 0xbf, 0x18, 0xb8, 0x58, 0xcb, 0x47, 0x25, 0xe3, 0xcd, 0x78, 0x9f, 0x69, 0xc9, - 0x2f, 0x16, 0x7e, 0x53, 0x2e, 0x02, 0x2d, 0x16, 0x67, 0x1c, 0x6b, 0x65, 0xde, 0xd4, 0x59, 0xef, - 0x48, 0x96, 0xc3, 0xed, 0x78, 0xb9, 0x54, 0x51, 0x84, 0xf7, 0x99, 0x18, 0xa7, 0xc0, 0x2e, 0x0e, - 0x90, 0x78, 0x79, 0xd5, 0x5b, 0x91, 0x52, 0x9d, 0x22, 0x76, 0x3b, 0xae, 0x55, 0x86, 0x92, 0xb4, - 0x0a, 0x45, 0x3d, 0x6f, 0xc7, 0x6b, 0x47, 0x2a, 0x23, 0xa9, 0x4d, 0x0b, 0xac, 0xd4, 0xb4, 0x5f, - 0x6b, 0xf2, 0x56, 0xa4, 0xc6, 0x1f, 0x94, 0xd1, 0x4d, 0x69, 0x5a, 0xf3, 0x34, 0xb9, 0x69, 0x5e, - 0x0d, 0x30, 0x52, 0x6d, 0x4e, 0x19, 0x4b, 0xed, 0x50, 0xc0, 0x49, 0x1d, 0xca, 0x2b, 0xd3, 0xdd, - 0x8a, 0x14, 0x48, 0x51, 0xc6, 0xa3, 0x8d, 0x4a, 0x28, 0xd6, 0xa8, 0x5c, 0x4a, 0xe5, 0xa6, 0x5c, - 0x37, 0x44, 0x99, 0x88, 0x76, 0x50, 0x88, 0x61, 0x1d, 0x24, 0xd5, 0x17, 0xa9, 0x40, 0x4d, 0x02, - 0x05, 0x03, 0x79, 0x39, 0x78, 0xc2, 0xda, 0xea, 0xe2, 0x00, 0x81, 0x6a, 0x05, 0x2a, 0xaf, 0x76, - 0xa1, 0x9c, 0x02, 0x8a, 0xe1, 0xa0, 0x96, 0xe2, 0x03, 0xda, 0x5c, 0x1c, 0x20, 0xbc, 0x12, 0xc6, - 0x75, 0x29, 0x21, 0x5e, 0x99, 0x8c, 0x2e, 0x11, 0x01, 0x82, 0x2d, 0x11, 0x61, 0xda, 0xfc, 0x42, - 0x32, 0x69, 0x5c, 0x39, 0x1d, 0x3d, 0x3f, 0xc4, 0xf1, 0x8b, 0x03, 0x24, 0x99, 0x68, 0x7e, 0x2b, - 0x92, 0x47, 0xad, 0x3c, 0x13, 0x8b, 0x89, 0x0b, 0x51, 0x4c, 0x5d, 0x72, 0xc6, 0xf5, 0x4a, 0x6a, - 0x1d, 0x27, 0xe5, 0x0c, 0x08, 0x78, 0x36, 0x10, 0x90, 0x24, 0x59, 0x1c, 0x20, 0xa9, 0x15, 0xa0, - 0x6a, 0x89, 0x6c, 0x66, 0x45, 0x89, 0x1a, 0xae, 0x31, 0xf4, 0xe2, 0x00, 0x49, 0xe4, 0x3f, 0xdf, - 0x94, 0xd3, 0x88, 0x95, 0xb3, 0xd1, 0x4e, 0x0c, 0x31, 0xac, 0x13, 0xa5, 0x74, 0xe3, 0x9b, 0x72, - 0xd6, 0xae, 0x72, 0x2e, 0xc9, 0x15, 0xae, 0x9c, 0x52, 0x76, 0x2f, 0x49, 0x4f, 0x92, 0x55, 0x9e, - 0x05, 0xfe, 0xf3, 0x3e, 0x7f, 0x1a, 0xcd, 0xe2, 0x00, 0x49, 0x4f, 0xb0, 0x25, 0xe9, 0x79, 0xaa, - 0xca, 0xf9, 0xbd, 0x64, 0x06, 0x4f, 0x97, 0x9e, 0xe3, 0xaa, 0xed, 0x91, 0x2a, 0xaa, 0x3c, 0x17, - 0xcd, 0xe5, 0xe8, 0x4b, 0xb8, 0x38, 0x40, 0xf6, 0x48, 0x38, 0xbd, 0xdb, 0x27, 0x6f, 0x53, 0xb9, - 0x10, 0xad, 0xfa, 0x91, 0x4a, 0xb4, 0x38, 0x40, 0xfa, 0x64, 0x7d, 0xde, 0xed, 0x93, 0x3c, 0xa9, - 0x54, 0xf6, 0x14, 0x1b, 0xe8, 0xa3, 0x4f, 0xea, 0xe5, 0x4a, 0x6a, 0x06, 0xa3, 0x72, 0x31, 0x3a, - 0x74, 0x53, 0x48, 0xd8, 0xd0, 0x4d, 0xcb, 0x7d, 0x5c, 0x49, 0x4d, 0x21, 0x54, 0x9e, 0xdf, 0x43, - 0x60, 0xf0, 0x8c, 0xa9, 0xc9, 0x87, 0x2b, 0xa9, 0x39, 0x7c, 0x8a, 0x1a, 0x15, 0x98, 0x42, 0xc2, - 0x04, 0xa6, 0x65, 0xff, 0xad, 0xa4, 0x26, 0xd1, 0x29, 0x97, 0xf6, 0x10, 0x18, 0x3e, 0x61, 0x5a, - 0xfa, 0xdd, 0xad, 0x48, 0x16, 0x9b, 0xf2, 0x91, 0xe8, 0xba, 0x21, 0xa1, 0xd8, 0xba, 0x21, 0xe7, - 0xbb, 0xd5, 0x12, 0x81, 0xfe, 0xca, 0x47, 0xa3, 0xd3, 0x3c, 0x86, 0x66, 0xd3, 0x3c, 0x9e, 0x1a, - 0x50, 0x4b, 0x04, 0x9d, 0x2b, 0x97, 0xfb, 0x09, 0x01, 0x74, 0x54, 0x08, 0x0f, 0x53, 0xaf, 0xa7, - 0x44, 0x3d, 0x2b, 0x2f, 0x44, 0xbd, 0x8f, 0x09, 0x82, 0xc5, 0x01, 0x92, 0x12, 0x2b, 0x4d, 0xd2, - 0x83, 0xbb, 0x94, 0x2b, 0xd1, 0x69, 0x9b, 0x46, 0xc3, 0xa6, 0x6d, 0x6a, 0x60, 0xd8, 0x52, 0xda, - 0xfd, 0x80, 0x72, 0x35, 0x6a, 0x98, 0x25, 0x29, 0x98, 0x61, 0x96, 0x72, 0xaf, 0x40, 0xd2, 0xc3, - 0x95, 0x94, 0x8f, 0xed, 0xf9, 0x84, 0x40, 0x93, 0xf2, 0x84, 0x3c, 0x7a, 0x27, 0xb4, 0x9d, 0xee, - 0xda, 0x2d, 0x4b, 0xd3, 0x95, 0x17, 0x53, 0x6d, 0x27, 0x8e, 0x94, 0x6c, 0x27, 0x0e, 0x60, 0xbb, - 0xbc, 0xec, 0x3f, 0x57, 0xae, 0x45, 0x77, 0x79, 0x19, 0xc7, 0x76, 0xf9, 0x88, 0xaf, 0xbd, 0x96, - 0xf0, 0x5a, 0x2b, 0x2f, 0x45, 0x07, 0x40, 0x0c, 0xcd, 0x06, 0x40, 0xdc, 0xcf, 0xfd, 0x5e, 0x7f, - 0x8f, 0xb1, 0x32, 0x05, 0xd2, 0x2e, 0x06, 0xd5, 0xa2, 0xfb, 0xd0, 0x2d, 0x0e, 0x90, 0xfe, 0x5e, - 0xe7, 0x7a, 0x8a, 0x03, 0x58, 0x99, 0x8e, 0x0e, 0xb0, 0x04, 0x01, 0x1b, 0x60, 0x49, 0xb7, 0x71, - 0x3d, 0xc5, 0x83, 0xab, 0x7c, 0xbc, 0xaf, 0xa8, 0xe0, 0x9d, 0x53, 0xfc, 0xbe, 0x37, 0x65, 0x17, - 0xac, 0x72, 0x3d, 0xba, 0xd9, 0x85, 0x18, 0xb6, 0xd9, 0x49, 0xae, 0xda, 0x9b, 0xb2, 0xc7, 0x53, - 0x99, 0x49, 0x72, 0x85, 0x5b, 0xa4, 0xe4, 0x19, 0x25, 0xe9, 0x0e, 0x46, 0xe5, 0x46, 0x74, 0xd4, - 0xa5, 0xd1, 0xb0, 0x51, 0x97, 0xea, 0x9c, 0x5c, 0x48, 0xfa, 0x09, 0x95, 0x9b, 0x71, 0xcf, 0x69, - 0x14, 0xcf, 0x2c, 0x9f, 0x84, 0x6f, 0xf1, 0x76, 0x3c, 0xf2, 0x58, 0x79, 0x39, 0x6a, 0xdf, 0x46, - 0xb1, 0xcc, 0xbe, 0x8d, 0x45, 0x2a, 0xdf, 0x8e, 0x07, 0xeb, 0x2a, 0xaf, 0xa4, 0x4b, 0x08, 0xc6, - 0x4a, 0x3c, 0xb8, 0xf7, 0x76, 0x3c, 0xbe, 0x55, 0xb9, 0x95, 0x2e, 0x21, 0xd0, 0x6e, 0x3c, 0x1e, - 0xf6, 0xba, 0x94, 0xf3, 0xa7, 0x7c, 0x22, 0x6a, 0x3a, 0x06, 0x08, 0x66, 0x3a, 0x86, 0x99, 0x81, - 0xd7, 0xa5, 0x5c, 0x39, 0xe5, 0x93, 0x09, 0x96, 0xe0, 0x61, 0xa5, 0x8c, 0xba, 0xeb, 0x52, 0x8e, - 0x99, 0xf2, 0x6a, 0x82, 0x25, 0x78, 0x3a, 0x29, 0x13, 0x4d, 0xdf, 0x2b, 0x00, 0x40, 0xf9, 0x14, - 0xc8, 0x50, 0x1f, 0x7e, 0xa7, 0xbb, 0x38, 0x40, 0xf6, 0x0a, 0x24, 0x78, 0xaf, 0xbf, 0xd7, 0x55, - 0x79, 0x2d, 0x3a, 0x85, 0xfb, 0xd1, 0xb1, 0x29, 0xdc, 0xd7, 0x73, 0xfb, 0x7a, 0x2c, 0x18, 0x50, - 0x79, 0x3d, 0xba, 0xc4, 0x45, 0x90, 0x6c, 0x89, 0x8b, 0x87, 0x0e, 0x46, 0xa2, 0xdc, 0x94, 0x4f, - 0x47, 0x97, 0x38, 0x19, 0xc7, 0x96, 0xb8, 0x48, 0x44, 0x5c, 0x2d, 0x11, 0x7c, 0xa5, 0xbc, 0x11, - 0x5d, 0xe2, 0x62, 0x68, 0xb6, 0xc4, 0xc5, 0xc3, 0xb5, 0x5e, 0x8f, 0xc5, 0x20, 0x29, 0xb7, 0xd3, - 0x9f, 0x1f, 0x90, 0xf2, 0xf3, 0xf3, 0x88, 0x25, 0x92, 0x1e, 0x4c, 0xa3, 0x54, 0xa3, 0xf3, 0x37, - 0x8d, 0x86, 0xcd, 0xdf, 0xd4, 0x40, 0x9c, 0x95, 0xd4, 0x9a, 0x9b, 0xca, 0xec, 0x1e, 0x07, 0x87, - 0xd0, 0x14, 0x49, 0xab, 0xd6, 0x79, 0x3b, 0xfe, 0x9d, 0x31, 0xa5, 0xd6, 0xe7, 0x8c, 0xec, 0x1f, - 0x83, 0xe2, 0xdf, 0x25, 0xab, 0xa7, 0x38, 0x01, 0x95, 0xb9, 0xe8, 0xea, 0x9a, 0x20, 0x60, 0xab, - 0x6b, 0xd2, 0x75, 0xb8, 0x90, 0xfc, 0xbc, 0xa3, 0x32, 0x1f, 0xbb, 0x12, 0x8f, 0xe1, 0xd9, 0xea, - 0x94, 0xf8, 0x24, 0x24, 0x49, 0xff, 0x02, 0xa0, 0xb2, 0x10, 0xdb, 0xaf, 0x53, 0x68, 0x60, 0xbf, - 0x4e, 0xfb, 0x7a, 0xe0, 0xe7, 0xfa, 0x7e, 0xc8, 0x51, 0x79, 0x13, 0xc4, 0x56, 0xfa, 0x89, 0x15, - 0x64, 0x8b, 0x03, 0xa4, 0xef, 0xa7, 0x20, 0xef, 0xa2, 0xd3, 0x77, 0x76, 0xd7, 0xde, 0x5e, 0x0a, - 0xe2, 0xb7, 0x56, 0x1d, 0x6a, 0x6b, 0x0e, 0x55, 0x16, 0xa3, 0xb6, 0x7a, 0x2a, 0x11, 0xb3, 0xd5, - 0x53, 0x11, 0x49, 0xb1, 0xfe, 0x5c, 0xa8, 0xef, 0x25, 0x36, 0x9c, 0x11, 0xe9, 0xdc, 0x6c, 0x75, - 0x8a, 0x22, 0x98, 0x82, 0x96, 0x2c, 0x73, 0x13, 0x3c, 0x15, 0x9f, 0x89, 0xae, 0x4e, 0xfd, 0x29, - 0xd9, 0xea, 0xd4, 0x1f, 0xcb, 0x86, 0x7a, 0x14, 0xcb, 0xe7, 0xe0, 0x5b, 0xd1, 0xa1, 0x9e, 0x42, - 0xc2, 0x86, 0x7a, 0x0a, 0x38, 0x29, 0x90, 0x50, 0x97, 0x7a, 0xca, 0xd2, 0x5e, 0x02, 0x81, 0x24, - 0x29, 0x10, 0xc0, 0x49, 0x81, 0x0b, 0xd4, 0x6b, 0x6e, 0x29, 0x77, 0xf6, 0x12, 0x08, 0x24, 0x49, - 0x81, 0x00, 0x66, 0x87, 0xcd, 0x28, 0x78, 0xb6, 0xd3, 0xba, 0xef, 0xf7, 0xd9, 0x72, 0xf4, 0xb0, - 0xd9, 0x97, 0x90, 0x1d, 0x36, 0xfb, 0x22, 0xf1, 0x97, 0x1e, 0xd9, 0xc5, 0xad, 0xac, 0x40, 0x83, - 0x53, 0xa1, 0x5d, 0xf0, 0x28, 0x5c, 0x8b, 0x03, 0xe4, 0x51, 0x5d, 0xe8, 0x2f, 0x06, 0xde, 0x6b, - 0x65, 0x15, 0x9a, 0x1a, 0x0b, 0x7c, 0x15, 0x1c, 0xbc, 0x38, 0x40, 0x7c, 0x8a, 0xd9, 0x22, 0xca, - 0xc3, 0x17, 0x34, 0xd4, 0x5f, 0xcb, 0xa0, 0xe1, 0x35, 0xcf, 0xa1, 0x5a, 0x5b, 0x44, 0x76, 0x9d, - 0x43, 0x25, 0x6e, 0x13, 0x8b, 0xaf, 0x43, 0x0d, 0x91, 0xe0, 0x37, 0xbe, 0x8c, 0x46, 0x97, 0x34, - 0xd7, 0x03, 0x4e, 0xe9, 0xb3, 0xb7, 0x24, 0x06, 0xc5, 0x4b, 0x9c, 0x8e, 0xf3, 0xc1, 0x05, 0x50, - 0xee, 0xa1, 0x17, 0x40, 0xa5, 0x0f, 0xba, 0x95, 0x01, 0xb8, 0xe6, 0x89, 0xf1, 0xaa, 0xbd, 0x0c, - 0x4a, 0x58, 0xeb, 0x8f, 0xef, 0x9d, 0x5f, 0x41, 0x63, 0xb1, 0x4b, 0x47, 0xe1, 0xd4, 0x7e, 0xc4, - 0x3b, 0xc9, 0x38, 0x37, 0xbe, 0x84, 0x72, 0x77, 0xeb, 0x73, 0x72, 0x45, 0xfb, 0x4e, 0x24, 0x61, - 0x8d, 0x61, 0xf1, 0x0b, 0x81, 0xc7, 0xf5, 0x2e, 0x59, 0x12, 0x97, 0x8d, 0xf0, 0xd5, 0xad, 0x8e, - 0xd3, 0x22, 0x12, 0x4a, 0xfd, 0x4e, 0x39, 0xbc, 0x70, 0xc1, 0x97, 0xc5, 0x7d, 0xab, 0x54, 0xe1, - 0x3f, 0x96, 0xdd, 0xc8, 0xef, 0x57, 0x3f, 0x8d, 0x86, 0xeb, 0x6d, 0x9b, 0x3a, 0xae, 0x65, 0x42, - 0xed, 0xed, 0x6c, 0x78, 0x7b, 0x60, 0x48, 0x70, 0x39, 0x42, 0x52, 0xa6, 0x0f, 0x0b, 0x87, 0xe7, - 0x1e, 0x5a, 0x38, 0xfc, 0x2a, 0xca, 0xdf, 0x75, 0xf9, 0x77, 0xe7, 0x03, 0xd2, 0x4e, 0xec, 0x2b, - 0x5b, 0x9c, 0x02, 0x5f, 0x43, 0x05, 0xb8, 0x42, 0x70, 0x95, 0x3c, 0xd0, 0x42, 0xd6, 0x70, 0x0b, - 0x20, 0x72, 0x19, 0x0d, 0x4e, 0x83, 0xdf, 0x42, 0xe3, 0x61, 0x4d, 0x0e, 0x28, 0x79, 0xe2, 0x87, - 0x7a, 0x42, 0xa6, 0xa1, 0xf4, 0xed, 0x79, 0xa8, 0x95, 0x22, 0x8b, 0x48, 0x30, 0xe2, 0x45, 0x34, - 0x16, 0xc2, 0x98, 0x8a, 0xfc, 0x10, 0xf3, 0x0b, 0xbd, 0x6e, 0xe5, 0x9c, 0x24, 0x8b, 0xa9, 0x53, - 0x16, 0x15, 0x67, 0xc3, 0xf5, 0xf0, 0xe3, 0x09, 0xa5, 0x87, 0x8e, 0xe1, 0x53, 0xe2, 0x12, 0xb3, - 0x28, 0x3e, 0x9e, 0x10, 0xfd, 0x64, 0xc2, 0x02, 0x1a, 0x25, 0x56, 0xc7, 0xa3, 0xeb, 0x96, 0x5f, - 0xe2, 0x96, 0xc7, 0x20, 0xc2, 0x33, 0x39, 0x0c, 0xd3, 0xf0, 0x2c, 0x3f, 0x51, 0x53, 0x4e, 0x28, - 0x8d, 0x72, 0xe1, 0xe5, 0xb4, 0x6a, 0xb9, 0x52, 0xfa, 0xa4, 0xf4, 0x7a, 0x49, 0x61, 0x29, 0xe5, - 0x71, 0x7f, 0x36, 0x83, 0x0a, 0xeb, 0x8e, 0x66, 0x78, 0xae, 0x70, 0xe8, 0x9f, 0x9e, 0xda, 0x71, - 0x34, 0x9b, 0x8d, 0x8f, 0x29, 0xb8, 0xcb, 0x7c, 0x47, 0x6b, 0x75, 0xa8, 0x3b, 0xfb, 0x2e, 0x7b, - 0xbb, 0xbf, 0xef, 0x56, 0x3e, 0xb5, 0x09, 0x9e, 0xac, 0xa9, 0xa6, 0xd5, 0x9e, 0xde, 0x74, 0xb4, - 0x6d, 0x83, 0x97, 0x4e, 0xd7, 0x5a, 0xd3, 0x1e, 0x6d, 0x51, 0xdb, 0x72, 0xbc, 0x69, 0xcd, 0x36, - 0xa6, 0xbd, 0x5d, 0x9b, 0xba, 0xd3, 0x81, 0x24, 0xde, 0x02, 0x1b, 0x02, 0x1e, 0xfc, 0x27, 0x0f, - 0x01, 0x8e, 0xc3, 0xcb, 0x08, 0x89, 0x57, 0xad, 0xda, 0xb6, 0xb8, 0x1d, 0x90, 0x5c, 0x9f, 0x3e, - 0x86, 0x0f, 0xec, 0x40, 0x61, 0x9a, 0x2d, 0x17, 0xce, 0x91, 0x24, 0xb0, 0x51, 0xb0, 0x2e, 0x9e, - 0xc8, 0x57, 0xd3, 0x48, 0xa8, 0x71, 0xff, 0x61, 0x53, 0x94, 0x14, 0x67, 0xc3, 0x1b, 0x68, 0x4c, - 0xc8, 0x0d, 0x62, 0x0b, 0x47, 0xa3, 0x8b, 0x46, 0x0c, 0xcd, 0x07, 0x6d, 0xf0, 0x8c, 0xba, 0x00, - 0xcb, 0x6d, 0xc4, 0x38, 0xf0, 0x6c, 0x98, 0xb3, 0x04, 0x55, 0x7a, 0x94, 0x31, 0x18, 0xb1, 0x50, - 0x44, 0xde, 0xe7, 0xe7, 0xc5, 0x7d, 0xe4, 0x32, 0x32, 0x11, 0x16, 0x59, 0x06, 0x1f, 0xf5, 0xe3, - 0x29, 0x32, 0xe2, 0x63, 0x3e, 0xca, 0x82, 0x6b, 0x68, 0x24, 0x70, 0x4e, 0xdc, 0x65, 0x2b, 0xdb, - 0x44, 0x58, 0xcf, 0x26, 0x16, 0xb6, 0x28, 0x0b, 0x89, 0xf0, 0xe0, 0x1b, 0xa8, 0xc4, 0xdd, 0xfb, - 0x75, 0x7e, 0x1f, 0xe1, 0x5f, 0x39, 0x03, 0xac, 0x61, 0xc8, 0x3d, 0x16, 0x10, 0xe2, 0xd7, 0x51, - 0xb9, 0xfa, 0xee, 0x1a, 0x5b, 0x67, 0xaa, 0x64, 0xd9, 0x55, 0x4e, 0x85, 0x81, 0xde, 0x90, 0xca, - 0x6c, 0xb5, 0x68, 0x43, 0x73, 0x22, 0x8b, 0x87, 0x4c, 0x8f, 0xe7, 0x51, 0xec, 0xdb, 0xfc, 0xca, - 0x64, 0xf8, 0xd5, 0x45, 0x0d, 0x30, 0x0d, 0x51, 0xcb, 0x29, 0x92, 0xaf, 0x1d, 0x65, 0x62, 0xa3, - 0x66, 0xce, 0x70, 0xb5, 0x56, 0xcb, 0xda, 0x21, 0xd4, 0x70, 0xdd, 0x0e, 0x85, 0xcb, 0x8c, 0x12, - 0x1f, 0x35, 0xba, 0x40, 0x35, 0x1c, 0x8e, 0x8b, 0x64, 0xd3, 0x47, 0xd9, 0xd4, 0xff, 0xcc, 0xc8, - 0x03, 0x3a, 0xa8, 0xcf, 0x9b, 0x49, 0xad, 0xcf, 0x7b, 0x0d, 0x0d, 0x89, 0x6d, 0x20, 0x88, 0x14, - 0x85, 0x7c, 0x18, 0x3f, 0x1e, 0xc2, 0xd0, 0x49, 0x48, 0x00, 0xb9, 0x08, 0x61, 0x49, 0x8d, 0x9c, - 0x94, 0x8b, 0x10, 0x96, 0xd4, 0x88, 0x14, 0xd4, 0x98, 0x41, 0x65, 0x31, 0x98, 0xa5, 0x6c, 0x7b, - 0x88, 0x69, 0xf0, 0x33, 0xc3, 0x79, 0xc8, 0x84, 0x44, 0x84, 0x5f, 0x45, 0x28, 0xd4, 0xaf, 0xd8, - 0xb4, 0x60, 0xee, 0xc9, 0xdd, 0x21, 0xcf, 0xbd, 0x90, 0x5a, 0xfd, 0xbb, 0x4c, 0x62, 0xca, 0xb0, - 0x67, 0x10, 0xd1, 0x37, 0x92, 0x1e, 0xe0, 0x19, 0x44, 0xac, 0x8e, 0x78, 0x06, 0x89, 0x08, 0x5f, - 0x41, 0xa5, 0x58, 0x25, 0x02, 0x88, 0x36, 0x08, 0xca, 0x10, 0x04, 0x58, 0x3c, 0x83, 0x4a, 0x6c, - 0x00, 0x33, 0x11, 0x42, 0x21, 0x50, 0xe3, 0xa8, 0x23, 0x60, 0xf2, 0x88, 0xf3, 0xe9, 0x18, 0x4f, - 0x24, 0x58, 0x58, 0xf0, 0xa4, 0x4c, 0xd7, 0x30, 0x38, 0xf8, 0xf7, 0xb2, 0x7d, 0x4e, 0x17, 0x4f, - 0x6f, 0x5a, 0x47, 0x90, 0x62, 0x97, 0xef, 0x93, 0x62, 0xf7, 0xef, 0xd9, 0x3e, 0x47, 0xa7, 0xa7, - 0x3a, 0x15, 0x26, 0x50, 0x46, 0x34, 0x15, 0x26, 0xcc, 0x42, 0x32, 0x74, 0x22, 0x13, 0xc5, 0x92, - 0xe6, 0x0a, 0x0f, 0x4d, 0x9a, 0xfb, 0xad, 0xdc, 0x5e, 0x47, 0xcb, 0x13, 0xdd, 0xef, 0x47, 0xf7, - 0x33, 0xa8, 0x1c, 0x68, 0x56, 0x14, 0xc2, 0x19, 0x09, 0x82, 0xc2, 0x38, 0x18, 0x78, 0x24, 0x22, - 0x7c, 0x95, 0x3f, 0x2b, 0x7c, 0x53, 0xbc, 0x08, 0x0c, 0x50, 0x2b, 0x86, 0x3d, 0x5b, 0xc3, 0x35, - 0xde, 0xa7, 0x24, 0x40, 0xab, 0x7f, 0x9a, 0x4d, 0x3d, 0x9f, 0x9f, 0xf4, 0xd1, 0x3e, 0xfa, 0x28, - 0x45, 0x89, 0xdc, 0xb3, 0x70, 0xa2, 0xc4, 0x7d, 0x28, 0xf1, 0x27, 0xd9, 0x54, 0x3f, 0xcc, 0x89, - 0x12, 0xf7, 0xb3, 0x5a, 0x5c, 0x43, 0x43, 0xc4, 0xda, 0x71, 0x6b, 0x56, 0xc7, 0xf4, 0xc4, 0x5a, - 0x01, 0x0b, 0xb5, 0x63, 0xed, 0xb8, 0x8d, 0x26, 0x83, 0x92, 0x90, 0x40, 0xfd, 0x69, 0x76, 0x0f, - 0x4f, 0xd5, 0x89, 0xe2, 0x3f, 0xc4, 0x2d, 0xf2, 0x63, 0x2f, 0xa0, 0xb2, 0xf4, 0x29, 0x59, 0x3c, - 0x8c, 0x4a, 0x2b, 0xb3, 0x6b, 0xf3, 0xe4, 0x9d, 0xf9, 0xb9, 0xf1, 0x01, 0x8c, 0x50, 0x61, 0x6e, - 0x7e, 0xb9, 0x3e, 0x3f, 0x37, 0x9e, 0x99, 0x1d, 0xff, 0xe0, 0x1f, 0x2f, 0x0c, 0x7c, 0xf0, 0xe3, - 0x0b, 0x99, 0xef, 0xff, 0xf8, 0x42, 0xe6, 0x1f, 0x7e, 0x7c, 0x21, 0xb3, 0x51, 0x00, 0x23, 0xf4, - 0xc6, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0x7f, 0xeb, 0x35, 0x7a, 0x97, 0x97, 0x00, 0x00, + // 7240 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x3d, 0x5d, 0x6c, 0x1c, 0xc7, + 0x79, 0xbc, 0x3b, 0x92, 0x77, 0x9c, 0xe3, 0xef, 0x88, 0xb2, 0xd6, 0xb2, 0xac, 0xb3, 0xd7, 0x89, + 0x2c, 0xc5, 0x32, 0x19, 0xfd, 0xd8, 0x4a, 0x1c, 0x3b, 0xd6, 0xfd, 0x50, 0xe6, 0xc5, 0x94, 0x48, + 0x0f, 0x29, 0x3b, 0x40, 0x10, 0x1f, 0x96, 0xb7, 0x23, 0x72, 0xa3, 0xbb, 0xdb, 0xcd, 0xee, 0x9e, + 0x28, 0xfa, 0xa9, 0xff, 0x0d, 0x82, 0xb4, 0x28, 0xd2, 0x87, 0x3e, 0xf4, 0x21, 0x45, 0xda, 0x02, + 0x2d, 0x10, 0x34, 0x6d, 0x51, 0x24, 0x0d, 0xda, 0x97, 0xd6, 0x6d, 0xe1, 0xa0, 0x48, 0x9a, 0x36, + 0x45, 0x0a, 0xf4, 0xe1, 0xd2, 0xa6, 0xe8, 0xcb, 0xa1, 0x05, 0x02, 0xb4, 0x40, 0xd3, 0x3e, 0x15, + 0xf3, 0xcd, 0xec, 0xee, 0xcc, 0xee, 0x1e, 0x25, 0x8a, 0x74, 0x59, 0x9a, 0x7c, 0x22, 0xef, 0xfb, + 0x9b, 0xdd, 0x6f, 0x66, 0xbe, 0x99, 0xf9, 0xe6, 0xfb, 0xbe, 0x45, 0xe3, 0xf4, 0x1e, 0xed, 0xf8, + 0xde, 0x9c, 0xe3, 0xda, 0xbe, 0x8d, 0x47, 0xf9, 0xaf, 0xd3, 0xb3, 0x1b, 0xf6, 0x86, 0x0d, 0xa0, + 0x79, 0xf6, 0x1f, 0xc7, 0x9e, 0x2e, 0x6d, 0xd8, 0xf6, 0x46, 0x8b, 0xce, 0xc3, 0xaf, 0xf5, 0xee, + 0x9d, 0x79, 0xdf, 0x6a, 0x53, 0xcf, 0x37, 0xda, 0x8e, 0x20, 0x38, 0x13, 0x27, 0xf0, 0x7c, 0xb7, + 0xdb, 0xf4, 0x05, 0xb6, 0xba, 0x61, 0xf9, 0x9b, 0xdd, 0xf5, 0xb9, 0xa6, 0xdd, 0x9e, 0xdf, 0x70, + 0x8d, 0x7b, 0x96, 0x6f, 0xf8, 0x96, 0xdd, 0x31, 0x5a, 0xf3, 0x3e, 0x6d, 0x51, 0xc7, 0x76, 0xfd, + 0x79, 0xc3, 0xb1, 0xe6, 0xfd, 0x6d, 0x87, 0x7a, 0xf3, 0x5b, 0xae, 0xe1, 0x38, 0xd4, 0x8d, 0xfe, + 0xe1, 0x42, 0xf4, 0x2f, 0x67, 0x51, 0xe1, 0x26, 0xf5, 0x0d, 0xd3, 0xf0, 0x0d, 0x7c, 0x06, 0x8d, + 0xd4, 0x3b, 0x26, 0xbd, 0xaf, 0x65, 0x9e, 0xca, 0x9c, 0xcf, 0x55, 0x46, 0xfb, 0xbd, 0x52, 0x96, + 0x5a, 0x84, 0x03, 0xf1, 0x93, 0x68, 0x78, 0x6d, 0xdb, 0xa1, 0x5a, 0xf6, 0xa9, 0xcc, 0xf9, 0xb1, + 0xca, 0x58, 0xbf, 0x57, 0x1a, 0x81, 0xd7, 0x23, 0x00, 0xc6, 0x4f, 0xa3, 0x6c, 0xbd, 0xa6, 0xe5, + 0x00, 0x39, 0xd3, 0xef, 0x95, 0x26, 0xba, 0x96, 0x79, 0xd1, 0x6e, 0x5b, 0x3e, 0x6d, 0x3b, 0xfe, + 0x36, 0xc9, 0xd6, 0x6b, 0xf8, 0x1c, 0x1a, 0xae, 0xda, 0x26, 0xd5, 0x86, 0x81, 0x08, 0xf7, 0x7b, + 0xa5, 0xc9, 0xa6, 0x6d, 0x52, 0x89, 0x0a, 0xf0, 0xf8, 0x3a, 0x1a, 0x5e, 0xb3, 0xda, 0x54, 0x1b, + 0x79, 0x2a, 0x73, 0xbe, 0x78, 0xf9, 0xf4, 0x1c, 0x57, 0xc3, 0x5c, 0xa0, 0x86, 0xb9, 0xb5, 0x40, + 0x4f, 0x95, 0xe9, 0xf7, 0x7a, 0xa5, 0xa1, 0x7e, 0xaf, 0x34, 0xcc, 0x54, 0xf7, 0x2b, 0x3f, 0x2c, + 0x65, 0x08, 0x70, 0xe2, 0x97, 0x51, 0xb1, 0xda, 0xea, 0x7a, 0x3e, 0x75, 0x6f, 0x19, 0x6d, 0xaa, + 0x8d, 0x42, 0x83, 0xa7, 0xfb, 0xbd, 0xd2, 0x63, 0x4d, 0x0e, 0x6e, 0x74, 0x8c, 0xb6, 0xdc, 0xb0, + 0x4c, 0xae, 0x7f, 0x0e, 0x4d, 0xad, 0x52, 0xcf, 0xb3, 0xec, 0x4e, 0xa8, 0x9a, 0x0f, 0xa3, 0x31, + 0x01, 0xaa, 0xd7, 0x40, 0x3d, 0x63, 0x95, 0x7c, 0xbf, 0x57, 0xca, 0x79, 0x96, 0x49, 0x22, 0x0c, + 0xfe, 0x28, 0xca, 0xbf, 0x65, 0xf9, 0x9b, 0x37, 0x6f, 0x94, 0x85, 0x9a, 0x1e, 0xeb, 0xf7, 0x4a, + 0x78, 0xcb, 0xf2, 0x37, 0x1b, 0xed, 0x3b, 0x86, 0xd4, 0x5e, 0x40, 0xa6, 0xff, 0x56, 0x16, 0x8d, + 0xdf, 0xf6, 0xa8, 0x1b, 0xb6, 0x74, 0x0e, 0x0d, 0xb3, 0xdf, 0xa2, 0x11, 0x50, 0x52, 0xd7, 0xa3, + 0xae, 0xac, 0x24, 0x86, 0xc7, 0x17, 0xd0, 0xc8, 0x92, 0xbd, 0x61, 0x75, 0x44, 0x43, 0x27, 0xfa, + 0xbd, 0xd2, 0x54, 0x8b, 0x01, 0x24, 0x4a, 0x4e, 0x81, 0x3f, 0x89, 0xc6, 0xeb, 0x6d, 0xd6, 0xe9, + 0x76, 0xc7, 0xf0, 0x6d, 0x57, 0x74, 0x12, 0xa8, 0xc3, 0x92, 0xe0, 0x12, 0xa3, 0x42, 0x8f, 0x5f, + 0x42, 0xa8, 0xfc, 0xd6, 0x2a, 0xb1, 0x5b, 0xb4, 0x4c, 0x6e, 0x89, 0xde, 0x03, 0x6e, 0x63, 0xcb, + 0x6b, 0xb8, 0x76, 0x8b, 0x36, 0x0c, 0x57, 0x6e, 0x56, 0xa2, 0xc6, 0x0b, 0x68, 0xb2, 0xdc, 0x6c, + 0x52, 0xcf, 0x23, 0xf4, 0xf3, 0x5d, 0xea, 0xf9, 0x9e, 0x36, 0xf2, 0x54, 0xee, 0xfc, 0x58, 0xe5, + 0xc9, 0x7e, 0xaf, 0xf4, 0xb8, 0x01, 0x98, 0x86, 0x2b, 0x50, 0x92, 0x88, 0x18, 0x93, 0xfe, 0xfb, + 0x39, 0x34, 0xb9, 0x4a, 0xdd, 0x7b, 0x92, 0xa2, 0xca, 0xac, 0x97, 0x18, 0x84, 0xf5, 0x99, 0xe7, + 0x18, 0x4d, 0x2a, 0x74, 0x76, 0xaa, 0xdf, 0x2b, 0x9d, 0xe8, 0x04, 0x40, 0x49, 0x68, 0x9c, 0x1e, + 0x5f, 0x40, 0x05, 0x0e, 0xaa, 0xd7, 0x84, 0x1a, 0x27, 0xfa, 0xbd, 0xd2, 0x98, 0x07, 0xb0, 0x86, + 0x65, 0x92, 0x10, 0xcd, 0xde, 0x83, 0xff, 0xbf, 0x68, 0x7b, 0x3e, 0x13, 0x2e, 0xb4, 0x08, 0xef, + 0x21, 0x18, 0x36, 0x05, 0x4a, 0x7e, 0x0f, 0x95, 0x09, 0x7f, 0x1c, 0x21, 0x0e, 0x29, 0x9b, 0xa6, + 0x2b, 0x54, 0xf9, 0x78, 0xbf, 0x57, 0x3a, 0x29, 0x44, 0x18, 0xa6, 0x29, 0xf7, 0x83, 0x44, 0x8c, + 0xdb, 0x68, 0x9c, 0xff, 0x5a, 0x32, 0xd6, 0x69, 0x8b, 0xeb, 0xb1, 0x78, 0xf9, 0xfc, 0x9c, 0xb0, + 0x38, 0xaa, 0x76, 0xe6, 0x64, 0xd2, 0x85, 0x8e, 0xef, 0x6e, 0x57, 0x4a, 0x62, 0xae, 0x9c, 0x12, + 0x4d, 0xb5, 0x00, 0x27, 0x77, 0xba, 0xcc, 0x73, 0xfa, 0x55, 0x34, 0x93, 0x90, 0x81, 0xa7, 0x51, + 0xee, 0x2e, 0xdd, 0xe6, 0x7a, 0x26, 0xec, 0x5f, 0x3c, 0x8b, 0x46, 0xee, 0x19, 0xad, 0xae, 0x30, + 0x0b, 0x84, 0xff, 0x78, 0x29, 0xfb, 0xb1, 0x8c, 0xfe, 0xc7, 0x19, 0x84, 0xab, 0x76, 0xa7, 0x43, + 0x9b, 0xbe, 0x3c, 0x93, 0x5e, 0x44, 0x63, 0x4b, 0x76, 0xd3, 0x68, 0x81, 0x02, 0x78, 0x87, 0x69, + 0xfd, 0x5e, 0x69, 0x96, 0xbd, 0xf9, 0x5c, 0x8b, 0x61, 0xa4, 0x47, 0x8a, 0x48, 0x99, 0xe6, 0x08, + 0x6d, 0xdb, 0x3e, 0x05, 0xc6, 0x6c, 0xa4, 0x39, 0x60, 0x74, 0x01, 0x25, 0x6b, 0x2e, 0x22, 0xc6, + 0xf3, 0xa8, 0xb0, 0xc2, 0x6c, 0x47, 0xd3, 0x6e, 0x89, 0x5e, 0x83, 0xd9, 0x02, 0xf6, 0x44, 0x62, + 0x09, 0x89, 0xf4, 0x9f, 0xc9, 0xa2, 0xc7, 0x5f, 0xef, 0xae, 0x53, 0xb7, 0x43, 0x7d, 0xea, 0x09, + 0xd3, 0x10, 0xbe, 0xc1, 0x2d, 0x34, 0x93, 0x40, 0x8a, 0x37, 0x79, 0xaa, 0xdf, 0x2b, 0x9d, 0xb9, + 0x1b, 0x22, 0x1b, 0xc2, 0xda, 0x48, 0x8d, 0x24, 0x59, 0xf1, 0x22, 0x9a, 0x8a, 0x80, 0x6c, 0x6e, + 0x7b, 0x5a, 0x16, 0xe6, 0xc8, 0xd9, 0x7e, 0xaf, 0x74, 0x5a, 0x92, 0xc6, 0xec, 0x80, 0xdc, 0x61, + 0x71, 0x36, 0xfc, 0x3a, 0x9a, 0x8e, 0x40, 0xaf, 0xb9, 0x76, 0xd7, 0xf1, 0xb4, 0x1c, 0x88, 0x2a, + 0xf5, 0x7b, 0xa5, 0x27, 0x24, 0x51, 0x1b, 0x80, 0x94, 0x64, 0x25, 0x18, 0xf5, 0x7f, 0xcd, 0xa1, + 0x93, 0x11, 0x70, 0xc5, 0x36, 0x43, 0x05, 0x2c, 0xcb, 0x0a, 0x58, 0xb1, 0x4d, 0xb0, 0xb1, 0x5c, + 0x01, 0x4f, 0xf7, 0x7b, 0xa5, 0x27, 0xa5, 0x76, 0x1c, 0xdb, 0x8c, 0x9b, 0xda, 0x24, 0x2f, 0x7e, + 0x1b, 0x3d, 0x96, 0x00, 0xf2, 0x19, 0xcd, 0xfb, 0xf9, 0x5c, 0xbf, 0x57, 0xd2, 0x53, 0xa4, 0xc6, + 0x27, 0xf8, 0x00, 0x29, 0xd8, 0x40, 0xa7, 0x24, 0xb5, 0xdb, 0x1d, 0xdf, 0xb0, 0x3a, 0x62, 0x69, + 0xe0, 0xe3, 0xe1, 0xd9, 0x7e, 0xaf, 0xf4, 0x8c, 0xdc, 0x6f, 0x01, 0x4d, 0xfc, 0xe1, 0x07, 0xc9, + 0xc1, 0x26, 0xd2, 0x52, 0x50, 0xf5, 0xb6, 0xb1, 0x11, 0xac, 0x77, 0xe7, 0xfb, 0xbd, 0xd2, 0x87, + 0x52, 0xdb, 0xb0, 0x18, 0x95, 0xd4, 0xc8, 0x40, 0x49, 0x98, 0x20, 0x1c, 0xe1, 0x6e, 0xd9, 0x26, + 0x85, 0x77, 0x18, 0x01, 0xf9, 0x7a, 0xbf, 0x57, 0x3a, 0x2b, 0xc9, 0xef, 0xd8, 0x26, 0x8d, 0x3f, + 0x7e, 0x0a, 0xb7, 0xfe, 0xc3, 0x11, 0x66, 0x58, 0x60, 0x05, 0x5b, 0xf5, 0x0d, 0xd7, 0xc7, 0x2f, + 0x45, 0x5b, 0x02, 0xe8, 0xd5, 0xe2, 0xe5, 0xe9, 0xc0, 0xc8, 0x04, 0xf0, 0xca, 0x38, 0x33, 0x26, + 0xdf, 0xeb, 0x95, 0x32, 0xfd, 0x5e, 0x69, 0x88, 0x14, 0xa4, 0xd9, 0xcd, 0x57, 0xaf, 0x2c, 0xf0, + 0xcd, 0x06, 0x7c, 0xf2, 0x0a, 0x17, 0xe3, 0xe5, 0xab, 0xd9, 0xab, 0x28, 0x2f, 0x9e, 0x01, 0x7a, + 0xa4, 0x78, 0xf9, 0x54, 0x64, 0xd7, 0x94, 0x95, 0x38, 0xc6, 0x1d, 0x70, 0xe1, 0x97, 0xd1, 0x28, + 0x37, 0x57, 0xa0, 0xed, 0xe2, 0xe5, 0xc7, 0xd2, 0xed, 0x62, 0x8c, 0x5d, 0xf0, 0xe0, 0x45, 0x84, + 0x22, 0x53, 0x15, 0xee, 0x3b, 0x84, 0x84, 0xa4, 0x11, 0x8b, 0x49, 0x91, 0x78, 0xf1, 0x8b, 0x68, + 0x7c, 0x8d, 0xba, 0x6d, 0xab, 0x63, 0xb4, 0x56, 0xad, 0x77, 0x82, 0xad, 0x07, 0x2c, 0xe3, 0x9e, + 0xf5, 0x8e, 0xdc, 0x17, 0x0a, 0x1d, 0xfe, 0x6c, 0x9a, 0x51, 0xc9, 0xc3, 0x83, 0x3c, 0x1d, 0x3c, + 0xc8, 0x40, 0x93, 0x14, 0x7b, 0x9e, 0x14, 0x1b, 0xf3, 0x06, 0x9a, 0x50, 0xe6, 0x86, 0x56, 0x00, + 0xd1, 0x4f, 0x26, 0x45, 0x4b, 0x13, 0x3d, 0x26, 0x56, 0x95, 0xc0, 0x56, 0xc4, 0x7a, 0xc7, 0xf2, + 0x2d, 0xa3, 0x55, 0xb5, 0xdb, 0x6d, 0xa3, 0x63, 0x6a, 0x63, 0xd1, 0xca, 0x6e, 0x71, 0x4c, 0xa3, + 0xc9, 0x51, 0xf2, 0x8a, 0xa8, 0x32, 0x31, 0x9b, 0x25, 0xfa, 0x90, 0xd0, 0xa6, 0xed, 0x9a, 0x56, + 0x67, 0x43, 0x43, 0xa0, 0x34, 0xb0, 0x59, 0x1e, 0xc7, 0x35, 0xdc, 0x00, 0x29, 0xdb, 0xac, 0x38, + 0xe3, 0xa7, 0x86, 0x0b, 0xc5, 0xe9, 0xf1, 0xc4, 0xe6, 0xe1, 0x77, 0x73, 0xa8, 0x28, 0x48, 0x3f, + 0x65, 0x5b, 0x9d, 0xe3, 0x01, 0xbe, 0x97, 0x01, 0x9e, 0x3a, 0x50, 0x47, 0xf7, 0x6b, 0xa0, 0xea, + 0x5f, 0xca, 0x86, 0xd6, 0x68, 0xc5, 0xb5, 0x3a, 0x7b, 0xb3, 0x46, 0xe7, 0x10, 0xaa, 0x6e, 0x76, + 0x3b, 0x77, 0xf9, 0xa9, 0x26, 0x1b, 0x9d, 0x6a, 0x9a, 0x16, 0x91, 0x30, 0xec, 0x68, 0x53, 0x63, + 0xf2, 0x59, 0xcf, 0x8c, 0x57, 0xc6, 0xde, 0xe3, 0x92, 0x32, 0xcf, 0x13, 0x00, 0xe3, 0x12, 0x1a, + 0xa9, 0x6c, 0xfb, 0xd4, 0x03, 0xcd, 0xe7, 0xf8, 0xd1, 0x67, 0x9d, 0x01, 0x08, 0x87, 0xe3, 0xab, + 0x68, 0xa6, 0x46, 0x5b, 0xc6, 0xf6, 0x4d, 0xab, 0xd5, 0xb2, 0x3c, 0xda, 0xb4, 0x3b, 0xa6, 0x07, + 0x4a, 0x16, 0xcd, 0xb5, 0x3d, 0x92, 0x24, 0xc0, 0x3a, 0x1a, 0x5d, 0xbe, 0x73, 0xc7, 0xa3, 0x3e, + 0xa8, 0x2f, 0x57, 0x41, 0xfd, 0x5e, 0x69, 0xd4, 0x06, 0x08, 0x11, 0x18, 0xfd, 0xeb, 0x19, 0x34, + 0x5d, 0xa3, 0xde, 0x5d, 0xdf, 0x76, 0xc2, 0x51, 0xbe, 0x27, 0x95, 0x5c, 0x40, 0xf9, 0x9b, 0xd4, + 0xf3, 0xd8, 0xb2, 0x94, 0x85, 0xb7, 0x9d, 0x12, 0x6f, 0x9b, 0x6f, 0x73, 0x30, 0x09, 0xf0, 0xe9, + 0x6f, 0x95, 0x7b, 0xc0, 0x5b, 0xe9, 0x3f, 0xce, 0xa2, 0x53, 0xe2, 0x89, 0xab, 0x2d, 0xcb, 0x59, + 0xb7, 0x0d, 0xd7, 0x24, 0xb4, 0x49, 0xad, 0x7b, 0xf4, 0x70, 0x4e, 0x3c, 0x75, 0xea, 0x0c, 0xef, + 0x61, 0xea, 0x5c, 0x46, 0x45, 0xa1, 0x19, 0xd8, 0xc3, 0xf2, 0x65, 0x7b, 0xba, 0xdf, 0x2b, 0x8d, + 0x9b, 0x1c, 0x0c, 0xdb, 0x7f, 0x22, 0x13, 0xb1, 0x41, 0xb2, 0x44, 0x3b, 0x1b, 0xfe, 0x26, 0x0c, + 0x92, 0x11, 0x3e, 0x48, 0x5a, 0x00, 0x21, 0x02, 0xa3, 0xff, 0x7b, 0x16, 0xcd, 0xc6, 0x55, 0xbe, + 0x4a, 0x3b, 0xe6, 0xb1, 0xbe, 0xdf, 0x1f, 0x7d, 0xff, 0x5d, 0x16, 0x4d, 0x84, 0x4b, 0xcf, 0xe7, + 0x68, 0xf3, 0x60, 0xb6, 0x4c, 0xd1, 0x82, 0x90, 0xdb, 0xf3, 0x82, 0xb0, 0x17, 0x2d, 0xeb, 0x68, + 0x94, 0x50, 0xc3, 0x13, 0xcb, 0xca, 0x18, 0xd7, 0x98, 0x0b, 0x10, 0x22, 0x30, 0xf8, 0x69, 0x94, + 0xbf, 0x69, 0xdc, 0xb7, 0xda, 0xdd, 0xb6, 0xb0, 0x75, 0xe0, 0x3c, 0x69, 0x1b, 0xf7, 0x49, 0x00, + 0xd7, 0xff, 0x3e, 0xc3, 0x4e, 0xd8, 0xa0, 0x54, 0x21, 0x7c, 0x4f, 0x5a, 0x8d, 0xb4, 0x93, 0xdd, + 0xb3, 0x76, 0x72, 0x8f, 0xae, 0x1d, 0xfd, 0xeb, 0xc3, 0x4c, 0x3d, 0x6c, 0xeb, 0x77, 0xd4, 0x67, + 0x63, 0xd4, 0x23, 0x23, 0x8f, 0xd0, 0x23, 0x47, 0x66, 0x5f, 0xad, 0xff, 0x57, 0x1e, 0x21, 0xa1, + 0xfd, 0x85, 0x63, 0x1b, 0xbe, 0xb7, 0x51, 0x53, 0x43, 0x33, 0x0b, 0x9d, 0x4d, 0xa3, 0xd3, 0xa4, + 0x66, 0x74, 0xba, 0x60, 0x43, 0xa7, 0xc0, 0x3d, 0xb3, 0x54, 0x20, 0xa3, 0xe3, 0x05, 0x49, 0x32, + 0xe0, 0x4b, 0xa8, 0x58, 0xef, 0xf8, 0xd4, 0x35, 0x9a, 0xbe, 0x75, 0x8f, 0xc2, 0xe8, 0x29, 0x54, + 0xa6, 0xfa, 0xbd, 0x52, 0xd1, 0x8a, 0xc0, 0x44, 0xa6, 0xc1, 0x57, 0xd1, 0xf8, 0x8a, 0xe1, 0xfa, + 0x56, 0xd3, 0x72, 0x8c, 0x8e, 0xef, 0x69, 0x05, 0x38, 0x1a, 0xc1, 0xda, 0xe3, 0x48, 0x70, 0xa2, + 0x50, 0xe1, 0xcf, 0xa2, 0x31, 0x38, 0x82, 0x83, 0xf7, 0x7b, 0xec, 0x81, 0xde, 0xef, 0x67, 0x22, + 0x8f, 0x1e, 0x3f, 0x24, 0x79, 0x8c, 0x39, 0x9a, 0x0a, 0xe0, 0x10, 0x8f, 0x24, 0xe2, 0x4f, 0xa3, + 0xfc, 0x42, 0xc7, 0x04, 0xe1, 0xe8, 0x81, 0xc2, 0x75, 0x21, 0xfc, 0xb1, 0x48, 0xb8, 0xed, 0xc4, + 0x64, 0x07, 0xe2, 0xd2, 0x67, 0x59, 0xf1, 0xfd, 0x9b, 0x65, 0xe3, 0xef, 0xc3, 0xe9, 0x75, 0x62, + 0xbf, 0x4e, 0xaf, 0x93, 0x8f, 0x78, 0x7a, 0xd5, 0xdf, 0x41, 0xc5, 0xca, 0xca, 0x8d, 0x70, 0xf6, + 0x3e, 0x8e, 0x72, 0x2b, 0xe2, 0xb6, 0x61, 0x98, 0x2f, 0x98, 0x8e, 0x65, 0x12, 0x06, 0xc3, 0x17, + 0x50, 0xa1, 0x0a, 0x2e, 0x3c, 0xe1, 0xb8, 0x1e, 0xe6, 0x8e, 0xeb, 0x26, 0xc0, 0xc0, 0x71, 0x1d, + 0xa0, 0xf1, 0x87, 0x51, 0x7e, 0xc5, 0xb5, 0x37, 0x5c, 0xa3, 0x2d, 0x7c, 0x5d, 0x45, 0xb6, 0xd9, + 0x77, 0x38, 0x88, 0x04, 0x38, 0xfd, 0x57, 0x33, 0x68, 0x74, 0xd5, 0x37, 0xfc, 0xae, 0xc7, 0x38, + 0x56, 0xbb, 0x70, 0x82, 0x86, 0xb6, 0x0b, 0x9c, 0xc3, 0xe3, 0x20, 0x12, 0xe0, 0xf0, 0x05, 0x34, + 0xb2, 0xe0, 0xba, 0xb6, 0x2b, 0x5f, 0x40, 0x50, 0x06, 0x90, 0x2f, 0x20, 0x80, 0x02, 0x5f, 0x43, + 0x45, 0x6e, 0x73, 0xf8, 0xc1, 0x83, 0x3f, 0xc7, 0xc9, 0x7e, 0xaf, 0x34, 0x23, 0x0e, 0x1d, 0xf2, + 0x4d, 0x8c, 0x44, 0xa9, 0xbf, 0x9b, 0x93, 0x36, 0x05, 0x5c, 0xe3, 0x47, 0xf0, 0xf0, 0x7e, 0x05, + 0xe5, 0x2a, 0x2b, 0x37, 0x84, 0x01, 0x3c, 0x11, 0xb0, 0x4a, 0x43, 0x25, 0xc6, 0xc7, 0xa8, 0xf1, + 0x19, 0x34, 0xbc, 0xc2, 0x86, 0xcf, 0x28, 0x0c, 0x8f, 0x42, 0xbf, 0x57, 0x1a, 0x76, 0xd8, 0xf8, + 0x01, 0x28, 0x60, 0x0d, 0x7f, 0x13, 0x6c, 0xd9, 0x98, 0xc0, 0x1a, 0xfe, 0x26, 0x01, 0x28, 0xc3, + 0x96, 0xdd, 0x8d, 0x7b, 0xc2, 0x6a, 0x01, 0xd6, 0x70, 0x37, 0xee, 0x11, 0x80, 0xe2, 0x79, 0x84, + 0x08, 0xf5, 0xbb, 0x6e, 0x07, 0x2e, 0xf3, 0xc6, 0x60, 0x9b, 0x0c, 0xd6, 0xd0, 0x05, 0x68, 0xa3, + 0x69, 0x9b, 0x94, 0x48, 0x24, 0xfa, 0x6f, 0x47, 0xfe, 0x97, 0x9a, 0xe5, 0xdd, 0x3d, 0xee, 0xc2, + 0x5d, 0x74, 0xa1, 0x21, 0x4e, 0x22, 0xc9, 0x4e, 0x2a, 0xa1, 0x91, 0x1b, 0x2d, 0x63, 0xc3, 0x83, + 0x3e, 0x1c, 0xe1, 0x5e, 0x89, 0x3b, 0x0c, 0x40, 0x38, 0x3c, 0xd6, 0x4f, 0x85, 0x07, 0xf7, 0xd3, + 0xaf, 0x8d, 0x84, 0xb3, 0xed, 0x16, 0xf5, 0xb7, 0x6c, 0xf7, 0xb8, 0xab, 0x1e, 0xb6, 0xab, 0xce, + 0xa1, 0xfc, 0xaa, 0xdb, 0x84, 0x63, 0x26, 0xef, 0xad, 0xf1, 0x7e, 0xaf, 0x54, 0xf0, 0xdc, 0x26, + 0x3f, 0x62, 0x06, 0x48, 0x46, 0x57, 0xf3, 0x7c, 0xa0, 0xcb, 0x47, 0x74, 0xa6, 0xe7, 0x0b, 0x3a, + 0x81, 0x14, 0x74, 0x2b, 0xb6, 0xeb, 0x8b, 0x8e, 0x0b, 0xe9, 0x1c, 0xdb, 0xf5, 0x49, 0x80, 0xc4, + 0xcf, 0x21, 0xb4, 0x56, 0x5d, 0x79, 0x93, 0xba, 0xa0, 0x2e, 0x3e, 0x17, 0xc1, 0x5c, 0xdf, 0xe3, + 0x20, 0x22, 0xa1, 0xf1, 0x1a, 0x1a, 0x5b, 0x76, 0xa8, 0x0b, 0x61, 0x02, 0xb0, 0x03, 0x98, 0xbc, + 0xfc, 0x6c, 0x4c, 0xb5, 0xa2, 0xdf, 0xe7, 0xc4, 0xdf, 0x90, 0x9c, 0xaf, 0x2f, 0x76, 0xf0, 0x93, + 0x44, 0x82, 0xf0, 0x35, 0x34, 0x5a, 0xe6, 0xfb, 0xbc, 0x22, 0x88, 0x0c, 0x55, 0xb6, 0xc0, 0xfe, + 0x70, 0x14, 0x3f, 0x14, 0x1a, 0xf0, 0x3f, 0x11, 0xe4, 0xfa, 0x05, 0x34, 0x1d, 0x6f, 0x06, 0x17, + 0x51, 0xbe, 0xba, 0x7c, 0xeb, 0xd6, 0x42, 0x75, 0x6d, 0x7a, 0x08, 0x17, 0xd0, 0xf0, 0xea, 0xc2, + 0xad, 0xda, 0x74, 0x46, 0xff, 0x9a, 0x64, 0x41, 0xd8, 0xd0, 0x3a, 0xf6, 0xe0, 0xee, 0xc9, 0x2d, + 0x32, 0x0d, 0x6e, 0xcb, 0x35, 0xd7, 0xe8, 0x78, 0x6d, 0xcb, 0xf7, 0xa9, 0x29, 0x56, 0x09, 0x70, + 0xeb, 0xf9, 0xf7, 0x49, 0x02, 0x8f, 0x2f, 0xa2, 0x09, 0x80, 0x09, 0x4f, 0x9e, 0x09, 0xa3, 0x57, + 0x30, 0xb8, 0xf7, 0x89, 0x8a, 0xd4, 0xff, 0x3a, 0x72, 0xe2, 0x2e, 0x51, 0xe3, 0xb0, 0x3a, 0xfe, + 0xfe, 0x9f, 0xf4, 0x97, 0xfe, 0x9b, 0x39, 0x34, 0xc6, 0xde, 0x88, 0x07, 0x73, 0x1c, 0x84, 0x2a, + 0xaf, 0x06, 0x7b, 0x43, 0xa1, 0xc9, 0xc9, 0x50, 0x13, 0x00, 0x4d, 0x68, 0x80, 0xef, 0x23, 0x2f, + 0xa2, 0xd1, 0x9b, 0xd4, 0xdf, 0xb4, 0x4d, 0x71, 0x01, 0x3a, 0xdb, 0xef, 0x95, 0xa6, 0xdb, 0x00, + 0x91, 0xf6, 0x7b, 0x82, 0x06, 0xdf, 0x45, 0xb8, 0x6e, 0xd2, 0x8e, 0x6f, 0xf9, 0xdb, 0x65, 0xdf, + 0x77, 0xad, 0xf5, 0xae, 0x4f, 0x3d, 0xa1, 0xb7, 0x53, 0x89, 0x73, 0xca, 0x2a, 0x44, 0x42, 0xc1, + 0x9d, 0xe7, 0xac, 0x11, 0x92, 0x47, 0x62, 0xff, 0xa7, 0x57, 0x1a, 0xe5, 0x34, 0x24, 0x45, 0x2c, + 0x7e, 0x03, 0x8d, 0xdd, 0xbc, 0x51, 0xae, 0xd1, 0x7b, 0x56, 0x93, 0x8a, 0xcb, 0x8b, 0xc7, 0x43, + 0x2d, 0x06, 0x88, 0x50, 0x25, 0x10, 0x9f, 0xd0, 0xbe, 0x63, 0x34, 0x4c, 0x80, 0xcb, 0xf1, 0x09, + 0x21, 0xb1, 0xfe, 0x6f, 0x19, 0x34, 0x4d, 0xa8, 0x67, 0x77, 0xdd, 0x88, 0x13, 0x9f, 0x43, 0xc3, + 0xd2, 0xe5, 0x38, 0x78, 0x2b, 0x62, 0x37, 0xb2, 0x80, 0xc7, 0xab, 0x28, 0xbf, 0x70, 0xdf, 0xb1, + 0x5c, 0xea, 0x89, 0xbe, 0xd9, 0xe9, 0x64, 0xf6, 0xa4, 0x38, 0x99, 0xcd, 0x50, 0xce, 0x92, 0x38, + 0x94, 0x71, 0x30, 0x7e, 0x11, 0x8d, 0xdd, 0x76, 0x4c, 0xc3, 0xa7, 0x66, 0x65, 0x5b, 0xec, 0xb9, + 0xe1, 0x4d, 0xba, 0x1c, 0xd8, 0x58, 0xdf, 0x96, 0xdf, 0x24, 0x24, 0xc5, 0xcf, 0xa0, 0xdc, 0xda, + 0xda, 0x92, 0xe8, 0x34, 0x08, 0xe5, 0xf2, 0x7d, 0x39, 0x28, 0x83, 0x61, 0xf5, 0x2f, 0x67, 0x11, + 0x62, 0x63, 0xa3, 0xea, 0x52, 0xc3, 0x3f, 0x98, 0x09, 0x5e, 0x41, 0x85, 0x40, 0xe1, 0x62, 0x5c, + 0x6a, 0x01, 0x6f, 0xbc, 0x23, 0xe2, 0x6d, 0x07, 0x78, 0xb6, 0x89, 0x22, 0x76, 0x0b, 0xae, 0x76, + 0x72, 0x41, 0x54, 0x9b, 0xcb, 0x00, 0x84, 0xc3, 0xf1, 0x73, 0x68, 0x4c, 0x4c, 0x45, 0x3b, 0xf0, + 0x20, 0xf3, 0xa3, 0x56, 0x00, 0x24, 0x11, 0x5e, 0xff, 0x8b, 0x0c, 0x57, 0x4a, 0x8d, 0xb6, 0xe8, + 0xe1, 0x55, 0x8a, 0xfe, 0x85, 0x0c, 0xc2, 0x4c, 0xd8, 0x8a, 0xe1, 0x79, 0x5b, 0xb6, 0x6b, 0x56, + 0x37, 0x8d, 0xce, 0xc6, 0x81, 0xbc, 0x8e, 0xfe, 0xc5, 0x11, 0x74, 0x42, 0xb9, 0xcd, 0x3d, 0xe4, + 0xe3, 0xed, 0x82, 0x3a, 0xde, 0xe0, 0xd0, 0x0c, 0xe3, 0x4d, 0x3e, 0x34, 0xf3, 0x91, 0xf7, 0x21, + 0x34, 0x26, 0xde, 0xb9, 0x5e, 0x13, 0x23, 0x0f, 0x96, 0x5b, 0xcb, 0x24, 0x11, 0x02, 0x3f, 0x8f, + 0xc6, 0xc5, 0x0f, 0x66, 0x75, 0x03, 0xbf, 0x28, 0x8c, 0x63, 0x8f, 0x01, 0x88, 0x82, 0xc6, 0x2f, + 0xa0, 0x31, 0x36, 0x38, 0x37, 0x20, 0x0e, 0x30, 0x1f, 0x85, 0xcb, 0x99, 0x01, 0x50, 0x36, 0x09, + 0x21, 0x25, 0x33, 0xe5, 0xc2, 0xc7, 0x5f, 0x88, 0x4c, 0x39, 0xf7, 0xf1, 0xcb, 0xa6, 0x5c, 0x78, + 0xfb, 0xdf, 0x46, 0xc5, 0x72, 0xa7, 0x63, 0xf3, 0x78, 0x54, 0x4f, 0x38, 0xb2, 0x06, 0xda, 0xf0, + 0x67, 0x20, 0x88, 0x2b, 0xa2, 0x4f, 0x35, 0xe2, 0xb2, 0x40, 0x7c, 0x99, 0x75, 0xc4, 0x3d, 0x8b, + 0x6e, 0x51, 0x57, 0x84, 0x0a, 0x80, 0x33, 0xcf, 0x15, 0x30, 0x39, 0xa4, 0x2b, 0xa0, 0xc3, 0x15, + 0x34, 0xb1, 0xe2, 0xda, 0x8e, 0xed, 0x51, 0x93, 0x2b, 0xaa, 0x08, 0x8c, 0x67, 0xfa, 0xbd, 0x92, + 0xe6, 0x08, 0x44, 0x03, 0x34, 0x26, 0xb1, 0xab, 0x2c, 0xfa, 0xd7, 0x33, 0xb1, 0xc1, 0x78, 0x80, + 0xf3, 0x5c, 0x19, 0x1d, 0xb9, 0x01, 0xa3, 0x43, 0xff, 0x4a, 0x16, 0x15, 0xd9, 0x39, 0xe1, 0x86, + 0xed, 0x6e, 0x19, 0xee, 0xc1, 0x38, 0x4f, 0xf6, 0xed, 0x2e, 0x45, 0xda, 0x86, 0x0c, 0xef, 0x62, + 0x1b, 0x72, 0x06, 0x0d, 0x4b, 0xd7, 0x7f, 0xdc, 0x99, 0xc1, 0xce, 0x5a, 0x00, 0xd5, 0x7f, 0x2a, + 0x8b, 0xd0, 0xa7, 0x2f, 0x5d, 0x3a, 0xc2, 0x0a, 0xd2, 0x7f, 0x3d, 0x83, 0xa6, 0x84, 0x77, 0x4d, + 0x8a, 0x77, 0xce, 0x07, 0x7e, 0xd1, 0x4c, 0xe4, 0x35, 0x14, 0xfe, 0x50, 0x12, 0xe0, 0xd8, 0x4c, + 0x5c, 0xb8, 0x6f, 0xf9, 0xe0, 0x60, 0x90, 0x02, 0x9e, 0xa9, 0x80, 0xc9, 0x33, 0x31, 0xa0, 0xc3, + 0xcf, 0x07, 0x7e, 0xc3, 0x5c, 0x64, 0x7e, 0x18, 0xc3, 0x42, 0xaa, 0xef, 0x50, 0xff, 0xc6, 0x30, + 0x1a, 0x5e, 0xb8, 0x4f, 0x9b, 0x87, 0xbc, 0x6b, 0xa4, 0xd3, 0xc8, 0xf0, 0x1e, 0x4f, 0x23, 0x8f, + 0x72, 0x11, 0xf2, 0x6a, 0xd4, 0x9f, 0xa3, 0x6a, 0xf3, 0xb1, 0x9e, 0x8f, 0x37, 0x1f, 0xf4, 0xf4, + 0xe1, 0xbb, 0x47, 0xfb, 0xcb, 0x1c, 0xca, 0xad, 0x56, 0x57, 0x8e, 0xc7, 0xcd, 0x81, 0x8e, 0x9b, + 0x9d, 0x1d, 0xcd, 0x7a, 0xe8, 0x3b, 0x2a, 0x44, 0xb1, 0x03, 0x31, 0x37, 0xd1, 0x97, 0xb2, 0x68, + 0x6c, 0xb5, 0xbb, 0xee, 0x6d, 0x7b, 0x3e, 0x6d, 0x1f, 0xf2, 0xde, 0x3c, 0x23, 0xce, 0x83, 0xc3, + 0x91, 0x36, 0xd8, 0x79, 0x50, 0x9c, 0x02, 0x9f, 0x09, 0x2c, 0xa3, 0x74, 0xce, 0x08, 0x2d, 0x63, + 0x60, 0x0f, 0xff, 0x30, 0x8b, 0xa6, 0xab, 0x2d, 0x8b, 0x76, 0xfc, 0x9a, 0xe5, 0x35, 0xf7, 0x21, + 0x52, 0xe2, 0xe0, 0xb5, 0xb2, 0x37, 0x47, 0xcb, 0x43, 0xc4, 0x9f, 0xe8, 0x3f, 0x9d, 0x45, 0xc5, + 0x72, 0xd7, 0xdf, 0x2c, 0xfb, 0xb0, 0xb8, 0x1c, 0xc9, 0x65, 0xfe, 0xdb, 0x19, 0x34, 0xc5, 0x1e, + 0x64, 0xcd, 0xbe, 0x4b, 0x3b, 0xfb, 0x70, 0x8c, 0x92, 0x8f, 0x43, 0xd9, 0x47, 0x3c, 0x0e, 0x05, + 0xba, 0xcc, 0xed, 0xf2, 0x58, 0xc8, 0x0e, 0xda, 0xec, 0x94, 0xf4, 0x01, 0x79, 0x8d, 0x7d, 0x38, + 0x47, 0x1c, 0xe4, 0x6b, 0x7c, 0x37, 0x83, 0x66, 0xd7, 0x5c, 0xb6, 0x90, 0x9b, 0x62, 0x3d, 0x3f, + 0xe4, 0xfd, 0x92, 0x7c, 0xa1, 0x43, 0xde, 0x43, 0xdf, 0xcf, 0xa0, 0xc7, 0xd5, 0x17, 0xfa, 0x20, + 0x58, 0x81, 0xbf, 0xc9, 0xa0, 0x93, 0xaf, 0x41, 0x12, 0x6c, 0xe8, 0x82, 0xfb, 0xe0, 0xbd, 0xd1, + 0x21, 0x1f, 0x79, 0xdf, 0xc9, 0xa0, 0x13, 0xcb, 0xf5, 0x5a, 0xf5, 0x83, 0xd2, 0x43, 0x89, 0xf7, + 0xf9, 0x00, 0xf4, 0xcf, 0x6a, 0xf9, 0xe6, 0xd2, 0x07, 0xa9, 0x7f, 0x94, 0xf7, 0x39, 0xe4, 0xfd, + 0xf3, 0xb3, 0xa3, 0xa8, 0xc8, 0xce, 0xb5, 0xc2, 0xa7, 0x77, 0xa4, 0x77, 0xfa, 0x97, 0x51, 0x51, + 0xa8, 0x01, 0x8e, 0x94, 0x52, 0x3c, 0xbf, 0xc8, 0x20, 0x6f, 0xc0, 0xd1, 0x52, 0x26, 0x62, 0x27, + 0xae, 0x37, 0xa9, 0xbb, 0x2e, 0xc7, 0xd0, 0xdc, 0xa3, 0xee, 0x3a, 0x01, 0x28, 0x5e, 0x8a, 0xee, + 0xec, 0xca, 0x2b, 0x75, 0x48, 0x7c, 0x15, 0x27, 0x55, 0xc8, 0xe4, 0x75, 0x05, 0xae, 0x61, 0x38, + 0x16, 0x4f, 0x99, 0x95, 0xe3, 0xf7, 0xe2, 0x9c, 0xf8, 0x16, 0x9a, 0x09, 0x60, 0x51, 0x06, 0x6b, + 0x21, 0x45, 0x5c, 0x5a, 0xee, 0x6a, 0x92, 0x15, 0xbf, 0x8a, 0xc6, 0x03, 0xe0, 0xeb, 0x16, 0xe4, + 0xd7, 0x31, 0x51, 0x4f, 0xf4, 0x7b, 0xa5, 0x53, 0xa1, 0xa8, 0xbb, 0x96, 0x12, 0x9f, 0xa8, 0x30, + 0xc8, 0x02, 0xe0, 0xd8, 0x89, 0x52, 0x04, 0xc4, 0xee, 0x23, 0x15, 0x06, 0xfc, 0x02, 0x08, 0x70, + 0xec, 0x8e, 0x47, 0xc1, 0xc7, 0x57, 0x84, 0x00, 0x13, 0xb8, 0x13, 0x74, 0x05, 0x9c, 0x87, 0x11, + 0x29, 0x64, 0x78, 0x19, 0xa1, 0xc8, 0x17, 0x23, 0x82, 0x35, 0x77, 0xed, 0x25, 0x92, 0x44, 0xe8, + 0x7f, 0xcb, 0xce, 0x6f, 0x8e, 0x13, 0x8e, 0xe4, 0xe7, 0xd1, 0x68, 0xd9, 0x71, 0x6e, 0x93, 0xba, + 0xf0, 0x4e, 0x42, 0x2c, 0xa1, 0xe1, 0x38, 0x8d, 0xae, 0x6b, 0xc9, 0x17, 0x12, 0x9c, 0x08, 0x57, + 0xd1, 0x44, 0xd9, 0x71, 0x56, 0xba, 0xeb, 0x2d, 0xab, 0x29, 0xa5, 0x8f, 0xf3, 0x1a, 0x04, 0x8e, + 0xd3, 0x70, 0x00, 0x13, 0x4f, 0xbe, 0x57, 0x79, 0xf0, 0xdb, 0x68, 0xac, 0xec, 0x38, 0x22, 0xf9, + 0x3e, 0x07, 0xc9, 0xf7, 0x7a, 0xf0, 0x4e, 0xd2, 0xb3, 0xcd, 0x85, 0x44, 0x3c, 0xed, 0xfe, 0x8c, + 0xb8, 0xad, 0x9d, 0x65, 0x0d, 0x25, 0x72, 0xee, 0x23, 0x91, 0xf8, 0xa3, 0x28, 0x5f, 0x76, 0x1c, + 0xc9, 0x3d, 0x00, 0xae, 0x54, 0xc6, 0x15, 0xeb, 0xa2, 0x80, 0xec, 0xf4, 0xcb, 0x68, 0x52, 0x6d, + 0x6c, 0x57, 0xf9, 0xf9, 0x3f, 0xc9, 0xc0, 0x0b, 0x1d, 0xf2, 0x0b, 0xb5, 0x2b, 0x28, 0x57, 0x76, + 0x1c, 0x61, 0x4e, 0x4e, 0xa4, 0xf4, 0x47, 0x3c, 0x5a, 0xab, 0xec, 0x38, 0xc1, 0xab, 0xf3, 0x2b, + 0xef, 0xa3, 0xf5, 0xea, 0xef, 0xf2, 0x57, 0x3f, 0xe4, 0x37, 0xd4, 0xdf, 0xc8, 0xa1, 0xa9, 0xb2, + 0xe3, 0x1c, 0xa7, 0xad, 0xef, 0x57, 0x4c, 0xd8, 0x25, 0x84, 0x24, 0xf3, 0x98, 0x0f, 0x43, 0x3f, + 0x8a, 0x92, 0x69, 0xd4, 0x32, 0x44, 0x22, 0x0a, 0x86, 0x5f, 0x61, 0x57, 0xc3, 0xef, 0xcf, 0x94, + 0x8e, 0x83, 0x14, 0xdc, 0xe3, 0x8e, 0x1b, 0xd9, 0xd3, 0x8e, 0x6a, 0x52, 0x56, 0xa6, 0x08, 0xf8, + 0x16, 0x37, 0xf4, 0x41, 0xfa, 0x41, 0x93, 0xa1, 0x1a, 0x96, 0x49, 0x62, 0xb4, 0x41, 0x1f, 0xe6, + 0x77, 0xd5, 0x87, 0x5f, 0xcd, 0xa2, 0x99, 0xa8, 0x0f, 0xf7, 0x63, 0x63, 0x3a, 0x8f, 0x10, 0x77, + 0x52, 0x86, 0x17, 0x89, 0x13, 0x3c, 0x52, 0xd9, 0x03, 0xa8, 0x88, 0x54, 0x8e, 0x48, 0xc2, 0x5b, + 0x85, 0x5c, 0xea, 0xad, 0xc2, 0x05, 0x54, 0x20, 0xc6, 0xd6, 0x1b, 0x5d, 0xea, 0x6e, 0x8b, 0xa5, + 0x14, 0x5c, 0xe9, 0xae, 0xb1, 0xd5, 0xf8, 0x3c, 0x03, 0x92, 0x10, 0x8d, 0xf5, 0x30, 0x46, 0x4d, + 0x72, 0x1e, 0xf3, 0x18, 0xb5, 0x30, 0x32, 0x4d, 0x28, 0x69, 0x74, 0x57, 0x4a, 0xfa, 0xfe, 0x28, + 0x9a, 0xae, 0x19, 0xbe, 0xb1, 0x6e, 0x78, 0x54, 0x3a, 0x48, 0x4c, 0x05, 0x30, 0x36, 0x10, 0xac, + 0xb0, 0x64, 0x11, 0xc4, 0x65, 0x99, 0xeb, 0x0d, 0x8f, 0x43, 0xe5, 0x1a, 0x2f, 0x31, 0x06, 0xfc, + 0x89, 0x48, 0x6e, 0x58, 0xd4, 0x86, 0x6f, 0x67, 0x40, 0x63, 0xe6, 0x7a, 0xc3, 0x11, 0x60, 0x92, + 0x20, 0xc4, 0x17, 0x51, 0x31, 0x80, 0xb1, 0xcd, 0x53, 0x2e, 0x7a, 0x67, 0x73, 0x9d, 0xed, 0x9d, + 0x88, 0x8c, 0xc6, 0x1f, 0x47, 0xe3, 0xc1, 0x4f, 0x69, 0x5b, 0x02, 0x7b, 0x2d, 0x73, 0x3d, 0xb1, + 0x71, 0x94, 0x49, 0x65, 0x56, 0x98, 0x9f, 0x23, 0x0a, 0x6b, 0xac, 0xa0, 0x95, 0x42, 0x8a, 0x3f, + 0x8f, 0x26, 0x83, 0xdf, 0x62, 0xb3, 0x35, 0x0a, 0x9b, 0xad, 0x8b, 0x81, 0xe6, 0xe3, 0x6a, 0x9d, + 0x53, 0xc9, 0xf9, 0xb6, 0xeb, 0x09, 0xb1, 0xed, 0x3a, 0x61, 0xae, 0x27, 0x77, 0x5d, 0xb1, 0x06, + 0x70, 0x1d, 0xcd, 0x04, 0x90, 0xf2, 0x5b, 0xab, 0x84, 0x6e, 0xb0, 0x59, 0x99, 0x8f, 0x36, 0xcb, + 0xe6, 0x7a, 0x03, 0x4a, 0x5d, 0x01, 0x42, 0xde, 0xb3, 0x27, 0xb8, 0x70, 0x0b, 0x9d, 0x51, 0x80, + 0xa6, 0xb7, 0x69, 0xdd, 0xf1, 0xc5, 0x4e, 0xb7, 0x5e, 0x13, 0xc7, 0x01, 0xa8, 0x05, 0x13, 0x4a, + 0xe5, 0x34, 0x41, 0xb1, 0xa0, 0x86, 0x52, 0x37, 0x6d, 0x47, 0x69, 0x78, 0x15, 0xcd, 0x06, 0xf8, + 0xd7, 0xaa, 0x2b, 0x2b, 0xae, 0xfd, 0x39, 0xda, 0xf4, 0xeb, 0x35, 0x71, 0x52, 0x80, 0x14, 0x24, + 0x73, 0xbd, 0xb1, 0xd1, 0x74, 0xd8, 0xa0, 0x60, 0x38, 0x55, 0x78, 0x2a, 0x33, 0x7e, 0x13, 0x9d, + 0x94, 0xe0, 0xf5, 0x8e, 0xe7, 0x1b, 0x9d, 0x26, 0xad, 0xd7, 0xc4, 0xf1, 0x01, 0x8e, 0x32, 0x42, + 0xaa, 0x25, 0x90, 0xaa, 0xd8, 0x74, 0xf6, 0xd3, 0x65, 0x74, 0x22, 0xa5, 0xa7, 0x76, 0xb5, 0x67, + 0xfd, 0x52, 0x36, 0x1a, 0x1c, 0x87, 0x7c, 0xe3, 0x5a, 0x41, 0x85, 0xe0, 0x4d, 0xc4, 0x12, 0xa2, + 0x0d, 0x1a, 0xe0, 0x71, 0x19, 0x01, 0x5e, 0x51, 0xc7, 0x21, 0xdf, 0xcc, 0xee, 0x87, 0x3a, 0xde, + 0xcb, 0x44, 0xea, 0x38, 0xe4, 0x1b, 0xdc, 0xef, 0xe4, 0xa2, 0x99, 0x7d, 0xbc, 0xcb, 0xdd, 0xaf, + 0xcd, 0x52, 0x74, 0x71, 0x3a, 0xba, 0x8b, 0x00, 0x32, 0x79, 0x68, 0xe6, 0x1f, 0x71, 0x68, 0xfe, + 0x20, 0xd9, 0x9f, 0x7c, 0x03, 0x72, 0x28, 0xfb, 0x73, 0x1f, 0x26, 0x2b, 0xbe, 0x8c, 0x26, 0x82, + 0xff, 0xf9, 0x4e, 0x6d, 0x44, 0xca, 0x87, 0x5a, 0x17, 0x1b, 0x35, 0x95, 0x04, 0x7f, 0x06, 0x9d, + 0x52, 0x00, 0x2b, 0x86, 0x6b, 0xb4, 0xa9, 0x4f, 0x5d, 0xbe, 0x47, 0x10, 0xe5, 0xe7, 0x02, 0xee, + 0x86, 0x13, 0xa2, 0xe5, 0x0a, 0x6e, 0x03, 0x24, 0x48, 0x83, 0x23, 0xbf, 0x8b, 0x5b, 0xf5, 0x7f, + 0xc9, 0xa2, 0x89, 0x15, 0xdb, 0xf3, 0x37, 0x5c, 0xea, 0xad, 0x18, 0xae, 0x47, 0x8f, 0x6e, 0x8f, + 0x7e, 0x0c, 0x4d, 0x40, 0x9c, 0x6c, 0x9b, 0x76, 0x7c, 0xa9, 0x2e, 0x1d, 0xaf, 0xd1, 0x10, 0x20, + 0x60, 0xdb, 0x48, 0x54, 0x42, 0x5c, 0x42, 0x23, 0x7c, 0x0c, 0x48, 0xd1, 0xcb, 0x7c, 0x00, 0x70, + 0xb8, 0xfe, 0xd5, 0x1c, 0x1a, 0x0f, 0xb4, 0x5c, 0xb1, 0x0e, 0x6b, 0x16, 0xf0, 0xc1, 0x2a, 0x79, + 0x1e, 0xa1, 0x15, 0xdb, 0xf5, 0x8d, 0x96, 0x54, 0x12, 0x17, 0x8e, 0x0c, 0x0e, 0x40, 0x39, 0x8f, + 0x44, 0x82, 0xe7, 0x10, 0x92, 0x26, 0x58, 0x1e, 0x26, 0xd8, 0x64, 0xbf, 0x57, 0x42, 0xd1, 0xbc, + 0x22, 0x12, 0x85, 0xfe, 0x27, 0x59, 0x34, 0x15, 0x74, 0xd2, 0xc2, 0x7d, 0xda, 0xec, 0xfa, 0x47, + 0x78, 0x32, 0xa8, 0xda, 0x1e, 0x79, 0xa0, 0xb6, 0xf5, 0xff, 0x90, 0x0c, 0x49, 0xb5, 0x65, 0x1f, + 0x1b, 0x92, 0xff, 0x8b, 0x31, 0xae, 0xff, 0x5c, 0x0e, 0xcd, 0x06, 0x5a, 0xbf, 0xd1, 0xed, 0xc0, + 0x36, 0xa1, 0x6a, 0xb4, 0x5a, 0x47, 0x79, 0x5d, 0x2e, 0x06, 0x8a, 0x58, 0x16, 0x89, 0x27, 0x13, + 0xfc, 0x92, 0xed, 0x8e, 0x00, 0x37, 0x6c, 0xcb, 0x24, 0x32, 0x11, 0x7e, 0x15, 0x8d, 0x07, 0x3f, + 0xcb, 0xee, 0x46, 0xb0, 0x18, 0xc3, 0xd1, 0x39, 0x64, 0x32, 0xdc, 0x0d, 0xa5, 0xd8, 0xb0, 0xcc, + 0xa0, 0x7f, 0x65, 0x14, 0x9d, 0x7e, 0xcb, 0xea, 0x98, 0xf6, 0x96, 0x27, 0x8a, 0x71, 0x1d, 0xfe, + 0x4d, 0xef, 0xfe, 0xd5, 0xc0, 0x89, 0x76, 0x26, 0x23, 0xbb, 0xd8, 0xb6, 0xbe, 0x81, 0x4e, 0xc6, + 0x55, 0xea, 0x86, 0xf9, 0x8e, 0xa2, 0x77, 0xb6, 0x38, 0x41, 0x23, 0xa8, 0x87, 0x26, 0xfc, 0x4f, + 0x24, 0x9d, 0x33, 0x5e, 0x50, 0x2d, 0xff, 0x30, 0x05, 0xd5, 0x3e, 0x82, 0x46, 0x6b, 0x76, 0xdb, + 0xb0, 0x82, 0x10, 0x5f, 0x98, 0xc5, 0x61, 0xbb, 0x80, 0x21, 0x82, 0x82, 0xc9, 0x17, 0x0d, 0x43, + 0x97, 0x8d, 0x45, 0xf2, 0x03, 0x86, 0xae, 0x47, 0x5d, 0x22, 0x13, 0x61, 0x1b, 0x4d, 0x88, 0xe6, + 0x84, 0xb7, 0x08, 0x81, 0xb7, 0xe8, 0x85, 0x40, 0x47, 0x83, 0x87, 0xd5, 0x9c, 0xc2, 0xc7, 0xdd, + 0x46, 0xf0, 0x74, 0xc1, 0xcb, 0x70, 0xbf, 0x11, 0x51, 0xe5, 0x4b, 0x4a, 0x00, 0x23, 0x53, 0x4c, + 0x2a, 0x01, 0xac, 0x8c, 0x4c, 0x74, 0xfa, 0x3a, 0xc2, 0xc9, 0xc6, 0x76, 0xe5, 0xf9, 0xf8, 0xa5, + 0x2c, 0xc2, 0xb1, 0x03, 0xc4, 0xc2, 0x11, 0xde, 0x07, 0xe9, 0xbf, 0x97, 0x41, 0x33, 0x89, 0x4c, + 0x5d, 0x7c, 0x05, 0x21, 0x0e, 0x91, 0xb2, 0x6e, 0x21, 0xc7, 0x2e, 0xca, 0xde, 0x15, 0x6b, 0x40, + 0x44, 0x86, 0xe7, 0x51, 0x81, 0xff, 0x0a, 0xab, 0xc0, 0xc7, 0x59, 0xba, 0x5d, 0xcb, 0x24, 0x21, + 0x51, 0xd4, 0x0a, 0x7c, 0x0f, 0x21, 0x97, 0xca, 0xe2, 0x6f, 0x3b, 0x61, 0x2b, 0x8c, 0x4c, 0x7f, + 0x37, 0x83, 0xc6, 0xc3, 0x07, 0x2e, 0x9b, 0x07, 0xd5, 0x75, 0xa3, 0x22, 0xe9, 0x39, 0xf7, 0xa0, + 0xa4, 0xe7, 0x98, 0x51, 0x11, 0x59, 0xce, 0x7f, 0x95, 0x41, 0x53, 0x21, 0xed, 0x01, 0xfa, 0x58, + 0xf6, 0xfc, 0x22, 0xbf, 0x9c, 0x41, 0x5a, 0xc5, 0x6a, 0xb5, 0xac, 0xce, 0x46, 0xbd, 0x73, 0xc7, + 0x76, 0xdb, 0x90, 0x5b, 0x78, 0x70, 0x4e, 0x34, 0xfd, 0x17, 0x33, 0x68, 0x46, 0x3c, 0x50, 0xd5, + 0x70, 0xcd, 0x83, 0xf3, 0x6e, 0xc6, 0x9f, 0xe4, 0xe0, 0x7a, 0x19, 0xe2, 0xa3, 0x97, 0xec, 0xe6, + 0xdd, 0x0f, 0x40, 0x98, 0x37, 0x7b, 0x8d, 0x43, 0x1e, 0x8a, 0xf6, 0xc5, 0x0c, 0x9a, 0x25, 0xb4, + 0x69, 0xdf, 0xa3, 0xee, 0x76, 0xd5, 0x36, 0xe9, 0x6b, 0xb4, 0x43, 0xdd, 0x83, 0x1a, 0xa4, 0x7f, + 0x0a, 0xe5, 0x16, 0xa2, 0x87, 0xb9, 0xed, 0x51, 0xf3, 0xf0, 0xd4, 0xc6, 0xd0, 0xff, 0x28, 0x8f, + 0xb4, 0xd4, 0x9d, 0xc9, 0xa1, 0x5d, 0xd4, 0x07, 0x6e, 0x37, 0x87, 0xf7, 0x6b, 0xbb, 0x39, 0xb2, + 0xbb, 0xed, 0xe6, 0xe8, 0x6e, 0xb7, 0x9b, 0xf9, 0x87, 0xd9, 0x6e, 0xb6, 0xe3, 0xdb, 0xcd, 0x02, + 0x6c, 0x37, 0xaf, 0xec, 0xb8, 0xdd, 0x5c, 0xe8, 0x98, 0x8f, 0xb8, 0xd9, 0x3c, 0xb4, 0x15, 0x21, + 0x1f, 0x61, 0x97, 0x8c, 0xcf, 0x33, 0xe3, 0xd6, 0xb4, 0x5d, 0x93, 0xf2, 0x0a, 0x8f, 0x05, 0xee, + 0x0d, 0x76, 0x05, 0x8c, 0x84, 0xd8, 0x44, 0x79, 0xcd, 0x89, 0x87, 0x29, 0xaf, 0xb9, 0x0f, 0xbb, + 0xf0, 0xef, 0x66, 0xd0, 0x4c, 0x95, 0xba, 0xbe, 0x75, 0xc7, 0x6a, 0x1a, 0xfe, 0x7e, 0x5c, 0x41, + 0x96, 0xd1, 0x94, 0x24, 0x50, 0xfa, 0xc0, 0x16, 0xe4, 0x45, 0x37, 0xa9, 0xeb, 0xc3, 0x56, 0x52, + 0x8e, 0x08, 0x88, 0xd1, 0xb3, 0xe6, 0x83, 0x12, 0x37, 0x62, 0xee, 0x86, 0xcd, 0x07, 0x70, 0xae, + 0x48, 0x4b, 0xfc, 0x22, 0x21, 0xbd, 0xfe, 0xb5, 0x0c, 0x3a, 0x47, 0x68, 0x87, 0x6e, 0x19, 0xeb, + 0x2d, 0x2a, 0x09, 0x16, 0xb6, 0x9d, 0xcd, 0x7b, 0xcb, 0x6b, 0x1b, 0x7e, 0x73, 0x73, 0x4f, 0x6f, + 0x79, 0x43, 0xfd, 0xc8, 0xd5, 0x2e, 0xac, 0x93, 0xc2, 0xa7, 0xff, 0x20, 0x83, 0xf2, 0xb7, 0x3b, + 0x77, 0x3b, 0xf6, 0xd6, 0xde, 0x0a, 0x21, 0x5d, 0x41, 0x45, 0x21, 0x46, 0xd2, 0x38, 0xff, 0x6a, + 0x19, 0x07, 0x37, 0xf8, 0xa7, 0xcd, 0x64, 0x2a, 0xfc, 0x72, 0xc8, 0x04, 0x61, 0x2a, 0xd2, 0x57, + 0xb4, 0x02, 0xa6, 0xd8, 0xd7, 0xcc, 0x64, 0x72, 0x7c, 0x46, 0x7c, 0x63, 0x40, 0x4a, 0xfd, 0x64, + 0x8f, 0xc2, 0x3f, 0x31, 0xa0, 0xbf, 0x3b, 0x8f, 0x46, 0x96, 0x3b, 0x74, 0xf9, 0x0e, 0xbe, 0x24, + 0x15, 0x7b, 0x12, 0xef, 0x35, 0x23, 0xeb, 0x09, 0x10, 0x8b, 0x43, 0x44, 0x2a, 0x09, 0x75, 0x55, + 0x2e, 0xc5, 0x23, 0x74, 0x8b, 0x65, 0x1e, 0x8e, 0x59, 0x1c, 0x22, 0x72, 0xc9, 0x9e, 0xab, 0x72, + 0xad, 0x1a, 0x31, 0x70, 0x14, 0x2e, 0x8e, 0x09, 0xb8, 0xc4, 0xe6, 0x65, 0x29, 0xad, 0x34, 0x4c, + 0xdc, 0xbb, 0x91, 0xa4, 0x58, 0x1c, 0x22, 0xe9, 0x25, 0x65, 0x94, 0x4f, 0xcf, 0x08, 0xff, 0xc6, + 0x6c, 0x6c, 0xe9, 0x01, 0xdc, 0xe2, 0x10, 0x51, 0x3f, 0x53, 0x73, 0x4d, 0xf9, 0xa8, 0x47, 0x3c, + 0x3c, 0x47, 0x42, 0x2d, 0x0e, 0x91, 0xd8, 0xe7, 0x3f, 0x94, 0x2f, 0x4c, 0x88, 0xeb, 0x9e, 0x78, + 0xa3, 0x80, 0x93, 0x1a, 0xe5, 0x5f, 0xa3, 0x78, 0x25, 0x56, 0xf9, 0x5d, 0x84, 0xbf, 0x9d, 0x8c, + 0x31, 0x73, 0xe4, 0xe2, 0x10, 0x89, 0xd5, 0x89, 0x3f, 0x1f, 0x14, 0x03, 0x17, 0xb6, 0x7c, 0x52, + 0xda, 0xbc, 0x59, 0xef, 0x30, 0x2d, 0x05, 0xc5, 0xc2, 0xaf, 0xca, 0x45, 0xa0, 0x85, 0x71, 0xc6, + 0xb1, 0x56, 0x16, 0x3a, 0x26, 0xeb, 0x1d, 0x69, 0xe7, 0x70, 0x3d, 0x5e, 0x2e, 0x55, 0x14, 0xe1, + 0x7d, 0x2c, 0xc6, 0x29, 0xb0, 0x8b, 0x43, 0x24, 0x5e, 0x5e, 0xf5, 0x9a, 0x52, 0xaa, 0x53, 0xc4, + 0x6e, 0xc7, 0xb5, 0xca, 0x50, 0x92, 0x56, 0xa1, 0xa8, 0xe7, 0xf5, 0x78, 0xed, 0x48, 0x6d, 0x22, + 0xb5, 0x69, 0x81, 0x95, 0x9a, 0x0e, 0x6a, 0x4d, 0x5e, 0x53, 0x6a, 0xfc, 0x41, 0x19, 0xdd, 0x94, + 0xa6, 0x0d, 0xdf, 0x90, 0x9b, 0xe6, 0xd5, 0x00, 0x95, 0x6a, 0x73, 0xda, 0x54, 0x6a, 0x87, 0x02, + 0x4e, 0xea, 0x50, 0x5e, 0x99, 0xee, 0x9a, 0x52, 0x20, 0x45, 0x9b, 0x56, 0x1b, 0x95, 0x50, 0xac, + 0x51, 0xb9, 0x94, 0xca, 0x55, 0xb9, 0x6e, 0x88, 0x36, 0xa3, 0x76, 0x50, 0x84, 0x61, 0x1d, 0x24, + 0xd5, 0x17, 0x29, 0x41, 0x4d, 0x02, 0x0d, 0x03, 0x79, 0x31, 0x7c, 0xc2, 0xea, 0xca, 0xe2, 0x10, + 0x81, 0x6a, 0x05, 0x3a, 0xaf, 0x76, 0xa1, 0x9d, 0x00, 0x8a, 0xf1, 0xb0, 0x96, 0xe2, 0x7d, 0xda, + 0x5c, 0x1c, 0x22, 0xbc, 0x12, 0xc6, 0x25, 0x29, 0x21, 0x5e, 0x9b, 0x55, 0x4d, 0x44, 0x88, 0x60, + 0x26, 0x22, 0x4a, 0x9b, 0xbf, 0x91, 0x4c, 0x1a, 0xd7, 0x4e, 0xaa, 0xe7, 0x87, 0x38, 0x7e, 0x71, + 0x88, 0x24, 0x13, 0xcd, 0xaf, 0x29, 0x79, 0xd4, 0xda, 0x63, 0xb1, 0x98, 0xb8, 0x08, 0xc5, 0xd4, + 0x25, 0x67, 0x5c, 0x2f, 0xa7, 0xd6, 0x71, 0xd2, 0x4e, 0x81, 0x80, 0x27, 0x42, 0x01, 0x49, 0x92, + 0xc5, 0x21, 0x92, 0x5a, 0x01, 0xaa, 0x9a, 0xc8, 0x66, 0xd6, 0x34, 0x75, 0xe3, 0x1a, 0x43, 0x2f, + 0x0e, 0x91, 0x44, 0xfe, 0xf3, 0x55, 0x39, 0x8d, 0x58, 0x7b, 0x5c, 0xed, 0xc4, 0x08, 0xc3, 0x3a, + 0x51, 0x4a, 0x37, 0xbe, 0x2a, 0x67, 0xed, 0x6a, 0xa7, 0x93, 0x5c, 0x91, 0xe5, 0x94, 0xb2, 0x7b, + 0x49, 0x7a, 0x92, 0xac, 0xf6, 0x04, 0xf0, 0x9f, 0x09, 0xf8, 0xd3, 0x68, 0x16, 0x87, 0x48, 0x7a, + 0x82, 0x2d, 0x49, 0xcf, 0x53, 0xd5, 0xce, 0xec, 0x24, 0x33, 0x7c, 0xba, 0xf4, 0x1c, 0x57, 0x63, + 0x87, 0x54, 0x51, 0xed, 0x49, 0x35, 0x97, 0x63, 0x20, 0xe1, 0xe2, 0x10, 0xd9, 0x21, 0xe1, 0xf4, + 0xf6, 0x80, 0xbc, 0x4d, 0xed, 0xac, 0x5a, 0xf5, 0x23, 0x95, 0x68, 0x71, 0x88, 0x0c, 0xc8, 0xfa, + 0xbc, 0x3d, 0x20, 0x79, 0x52, 0x2b, 0xed, 0x28, 0x36, 0xd4, 0xc7, 0x80, 0xd4, 0xcb, 0xe5, 0xd4, + 0x0c, 0x46, 0xed, 0x29, 0x75, 0xe8, 0xa6, 0x90, 0xb0, 0xa1, 0x9b, 0x96, 0xfb, 0xb8, 0x9c, 0x9a, + 0x42, 0xa8, 0x3d, 0xbd, 0x83, 0xc0, 0xf0, 0x19, 0x53, 0x93, 0x0f, 0x97, 0x53, 0x73, 0xf8, 0x34, + 0x5d, 0x15, 0x98, 0x42, 0xc2, 0x04, 0xa6, 0x65, 0xff, 0x2d, 0xa7, 0x26, 0xd1, 0x69, 0xcf, 0xec, + 0x20, 0x30, 0x7a, 0xc2, 0xb4, 0xf4, 0xbb, 0x6b, 0x4a, 0x16, 0x9b, 0xf6, 0x21, 0xd5, 0x6e, 0x48, + 0x28, 0x66, 0x37, 0xe4, 0x7c, 0xb7, 0x6a, 0x22, 0xd0, 0x5f, 0xfb, 0xb0, 0x3a, 0xcd, 0x63, 0x68, + 0x36, 0xcd, 0xe3, 0xa9, 0x01, 0xd5, 0x44, 0xd0, 0xb9, 0x76, 0x6e, 0x90, 0x10, 0x40, 0xab, 0x42, + 0x78, 0x98, 0x7a, 0x3d, 0x25, 0xea, 0x59, 0x7b, 0x56, 0xf5, 0x3e, 0x26, 0x08, 0x16, 0x87, 0x48, + 0x4a, 0xac, 0x34, 0x49, 0x0f, 0xee, 0xd2, 0xce, 0xab, 0xd3, 0x36, 0x8d, 0x86, 0x4d, 0xdb, 0xd4, + 0xc0, 0xb0, 0xa5, 0xb4, 0xfb, 0x01, 0xed, 0x82, 0xba, 0x31, 0x4b, 0x52, 0xb0, 0x8d, 0x59, 0xca, + 0xbd, 0x02, 0x49, 0x0f, 0x57, 0xd2, 0x3e, 0xb2, 0xe3, 0x13, 0x02, 0x4d, 0xca, 0x13, 0xf2, 0xe8, + 0x9d, 0x68, 0xef, 0x74, 0xdb, 0x69, 0xd9, 0x86, 0xa9, 0x3d, 0x97, 0xba, 0x77, 0xe2, 0x48, 0x69, + 0xef, 0xc4, 0x01, 0x6c, 0x95, 0x97, 0xfd, 0xe7, 0xda, 0x45, 0x75, 0x95, 0x97, 0x71, 0x6c, 0x95, + 0x57, 0x7c, 0xed, 0xd5, 0x84, 0xd7, 0x5a, 0x7b, 0x5e, 0x1d, 0x00, 0x31, 0x34, 0x1b, 0x00, 0x71, + 0x3f, 0xf7, 0xdb, 0x83, 0x3d, 0xc6, 0xda, 0x1c, 0x48, 0x7b, 0x2a, 0xac, 0x16, 0x3d, 0x80, 0x6e, + 0x71, 0x88, 0x0c, 0xf6, 0x3a, 0xd7, 0x53, 0x1c, 0xc0, 0xda, 0xbc, 0x3a, 0xc0, 0x12, 0x04, 0x6c, + 0x80, 0x25, 0xdd, 0xc6, 0xf5, 0x14, 0x0f, 0xae, 0xf6, 0xd1, 0x81, 0xa2, 0xc2, 0x77, 0x4e, 0xf1, + 0xfb, 0x5e, 0x95, 0x5d, 0xb0, 0xda, 0x25, 0x75, 0xb1, 0x8b, 0x30, 0x6c, 0xb1, 0x93, 0x5c, 0xb5, + 0x57, 0x65, 0x8f, 0xa7, 0x76, 0x39, 0xc9, 0x15, 0x2d, 0x91, 0x92, 0x67, 0x94, 0xa4, 0x3b, 0x18, + 0xb5, 0x2b, 0xea, 0xa8, 0x4b, 0xa3, 0x61, 0xa3, 0x2e, 0xd5, 0x39, 0x79, 0x23, 0xe9, 0x27, 0xd4, + 0xae, 0xc6, 0x3d, 0xa7, 0x2a, 0x9e, 0xed, 0x7c, 0x12, 0xbe, 0xc5, 0xeb, 0xf1, 0xc8, 0x63, 0xed, + 0x05, 0x75, 0x7f, 0xab, 0x62, 0xd9, 0xfe, 0x36, 0x16, 0xa9, 0x7c, 0x3d, 0x1e, 0xac, 0xab, 0xbd, + 0x98, 0x2e, 0x21, 0x1c, 0x2b, 0xf1, 0xe0, 0xde, 0xeb, 0xf1, 0xf8, 0x56, 0xed, 0x5a, 0xba, 0x84, + 0x50, 0xbb, 0xf1, 0x78, 0xd8, 0x4b, 0x52, 0xce, 0x9f, 0xf6, 0x31, 0x75, 0xeb, 0x18, 0x22, 0xd8, + 0xd6, 0x31, 0xca, 0x0c, 0xbc, 0x24, 0xe5, 0xca, 0x69, 0x1f, 0x4f, 0xb0, 0x84, 0x0f, 0x2b, 0x65, + 0xd4, 0x5d, 0x92, 0x72, 0xcc, 0xb4, 0x97, 0x12, 0x2c, 0xe1, 0xd3, 0x49, 0x99, 0x68, 0xe6, 0x4e, + 0x01, 0x00, 0xda, 0x27, 0x40, 0x86, 0xfe, 0xe0, 0x3b, 0xdd, 0xc5, 0x21, 0xb2, 0x53, 0x20, 0xc1, + 0xdb, 0x83, 0xbd, 0xae, 0xda, 0xcb, 0xea, 0x14, 0x1e, 0x44, 0xc7, 0xa6, 0xf0, 0x40, 0xcf, 0xed, + 0x2b, 0xb1, 0x60, 0x40, 0xed, 0x15, 0xd5, 0xc4, 0x29, 0x48, 0x66, 0xe2, 0xe2, 0xa1, 0x83, 0x4a, + 0x94, 0x9b, 0xf6, 0x49, 0xd5, 0xc4, 0xc9, 0x38, 0x66, 0xe2, 0x94, 0x88, 0xb8, 0x6a, 0x22, 0xf8, + 0x4a, 0x7b, 0x55, 0x35, 0x71, 0x31, 0x34, 0x33, 0x71, 0xf1, 0x70, 0xad, 0x57, 0x62, 0x31, 0x48, + 0xda, 0xf5, 0xf4, 0xe7, 0x07, 0xa4, 0xfc, 0xfc, 0x3c, 0x62, 0x89, 0xa4, 0x07, 0xd3, 0x68, 0x65, + 0x75, 0xfe, 0xa6, 0xd1, 0xb0, 0xf9, 0x9b, 0x1a, 0x88, 0xb3, 0x9c, 0x5a, 0x73, 0x53, 0xab, 0xec, + 0x70, 0x70, 0x88, 0xb6, 0x22, 0x69, 0xd5, 0x3a, 0xaf, 0xc7, 0xbf, 0x33, 0xa6, 0x55, 0x07, 0x9c, + 0x91, 0x83, 0x63, 0x50, 0xfc, 0xbb, 0x64, 0xf5, 0x14, 0x27, 0xa0, 0x56, 0x53, 0xad, 0x6b, 0x82, + 0x80, 0x59, 0xd7, 0xa4, 0xeb, 0xf0, 0x46, 0xf2, 0xf3, 0x8e, 0xda, 0x42, 0xec, 0x4a, 0x3c, 0x86, + 0x67, 0xd6, 0x29, 0xf1, 0x49, 0x48, 0x92, 0xfe, 0x05, 0x40, 0xed, 0x46, 0x6c, 0xbd, 0x4e, 0xa1, + 0x81, 0xf5, 0x3a, 0xed, 0xeb, 0x81, 0x9f, 0x19, 0xf8, 0x21, 0x47, 0xed, 0x35, 0x10, 0x5b, 0x1a, + 0x24, 0x56, 0x90, 0x2d, 0x0e, 0x91, 0x81, 0x9f, 0x82, 0xbc, 0x8d, 0x4e, 0xde, 0xdc, 0x5e, 0x7d, + 0x63, 0x29, 0x8c, 0xdf, 0x5a, 0x71, 0xa9, 0x63, 0xb8, 0x54, 0x5b, 0x54, 0xf7, 0xea, 0xa9, 0x44, + 0x6c, 0xaf, 0x9e, 0x8a, 0x48, 0x8a, 0x0d, 0xe6, 0x42, 0x7d, 0x27, 0xb1, 0xd1, 0x8c, 0x48, 0xe7, + 0x66, 0xd6, 0x49, 0x45, 0x30, 0x05, 0x2d, 0xd9, 0x9d, 0x0d, 0xf0, 0x54, 0x7c, 0x4a, 0xb5, 0x4e, + 0x83, 0x29, 0x99, 0x75, 0x1a, 0x8c, 0x65, 0x43, 0x5d, 0xc5, 0xf2, 0x39, 0xf8, 0xba, 0x3a, 0xd4, + 0x53, 0x48, 0xd8, 0x50, 0x4f, 0x01, 0x27, 0x05, 0x12, 0xea, 0x51, 0x5f, 0x5b, 0xda, 0x49, 0x20, + 0x90, 0x24, 0x05, 0x02, 0x38, 0x29, 0xf0, 0x06, 0xf5, 0x9b, 0x9b, 0xda, 0xcd, 0x9d, 0x04, 0x02, + 0x49, 0x52, 0x20, 0x80, 0xd9, 0x61, 0x53, 0x05, 0x57, 0xba, 0xad, 0xbb, 0x41, 0x9f, 0xdd, 0x52, + 0x0f, 0x9b, 0x03, 0x09, 0xd9, 0x61, 0x73, 0x20, 0x12, 0x7f, 0xe1, 0xa1, 0x5d, 0xdc, 0xda, 0x32, + 0x34, 0x38, 0x17, 0xed, 0x0b, 0x1e, 0x86, 0x6b, 0x71, 0x88, 0x3c, 0xac, 0x0b, 0xfd, 0xb9, 0xd0, + 0x7b, 0xad, 0xad, 0x40, 0x53, 0x53, 0xa1, 0xaf, 0x82, 0x83, 0x17, 0x87, 0x48, 0xe8, 0xdf, 0xbe, + 0x86, 0x8a, 0xf0, 0x52, 0xf5, 0x8e, 0xe5, 0xd7, 0x2a, 0xda, 0x1b, 0xea, 0x91, 0x49, 0x42, 0xb1, + 0x23, 0x93, 0xf4, 0x93, 0x19, 0x71, 0xf8, 0xc9, 0x4d, 0x4c, 0xad, 0xa2, 0x11, 0xd5, 0x88, 0x2b, + 0x48, 0x66, 0xc4, 0x15, 0x40, 0xd8, 0x6e, 0xcd, 0xb5, 0x9d, 0x5a, 0x45, 0x5b, 0x4d, 0x69, 0x97, + 0xa3, 0xc2, 0x76, 0xf9, 0xcf, 0xb0, 0xdd, 0xd5, 0xcd, 0xae, 0x5f, 0x63, 0xef, 0xb8, 0x96, 0xd2, + 0x6e, 0x80, 0x0c, 0xdb, 0x0d, 0x00, 0xcc, 0x14, 0x02, 0x60, 0xc5, 0xb5, 0x99, 0xd1, 0x7e, 0xdd, + 0x6a, 0xb5, 0xb4, 0xdb, 0xaa, 0x29, 0x8c, 0xe3, 0x99, 0x29, 0x8c, 0xc3, 0xd8, 0xd6, 0x93, 0x3f, + 0x15, 0x5d, 0xef, 0x6e, 0x68, 0x6f, 0xaa, 0x5b, 0xcf, 0x08, 0xc3, 0xb6, 0x9e, 0xd1, 0x2f, 0x38, + 0x5d, 0xb0, 0x5f, 0x84, 0xde, 0x71, 0xa9, 0xb7, 0xa9, 0xbd, 0x15, 0x3b, 0x5d, 0x48, 0x38, 0x38, + 0x5d, 0x48, 0xbf, 0x2b, 0x79, 0x34, 0x02, 0xdf, 0x3a, 0xd1, 0x7f, 0x23, 0x83, 0xc6, 0x57, 0x7d, + 0x97, 0x1a, 0x6d, 0x11, 0x83, 0x77, 0x1a, 0x15, 0xf8, 0xe9, 0x45, 0x7c, 0xc7, 0x6b, 0x8c, 0x84, + 0xbf, 0xf1, 0x39, 0x34, 0xb9, 0x64, 0x78, 0x3e, 0x70, 0x4a, 0x1f, 0x28, 0x26, 0x31, 0x28, 0x5e, + 0xe2, 0x74, 0x9c, 0x0f, 0xae, 0xea, 0x72, 0x0f, 0xbc, 0xaa, 0x2b, 0xbc, 0xd7, 0x2b, 0x0d, 0xc1, + 0x85, 0x5c, 0x8c, 0x57, 0xef, 0x67, 0x50, 0xe2, 0x5c, 0xf5, 0xe8, 0xf7, 0x28, 0xcb, 0x68, 0x2a, + 0x76, 0x3d, 0x2c, 0xae, 0x1f, 0x1e, 0xf2, 0xf6, 0x38, 0xce, 0x8d, 0x9f, 0x41, 0xb9, 0xdb, 0xf5, + 0x9a, 0xfc, 0xed, 0x81, 0xae, 0x92, 0x5a, 0xc8, 0xb0, 0xf8, 0xd9, 0xd0, 0x37, 0x7e, 0x9b, 0x2c, + 0x89, 0x6b, 0x61, 0xf8, 0x3e, 0x5a, 0xd7, 0x6d, 0x11, 0x09, 0xa5, 0x7f, 0xbb, 0x18, 0x5d, 0x8d, + 0xe1, 0x73, 0xe2, 0x66, 0x5c, 0xfa, 0x16, 0x43, 0x2c, 0x0f, 0x95, 0xdf, 0x84, 0x7f, 0x12, 0x8d, + 0xd7, 0xdb, 0x0e, 0x75, 0x3d, 0xbb, 0x03, 0x55, 0xd2, 0xb3, 0xd1, 0x3d, 0x8f, 0x25, 0xc1, 0xe5, + 0x58, 0x56, 0x99, 0x3e, 0x2a, 0xf1, 0x9e, 0x7b, 0x60, 0x89, 0xf7, 0x0b, 0x68, 0xe4, 0x36, 0x7c, + 0x11, 0x4d, 0xaa, 0x06, 0xdf, 0x8d, 0x7d, 0x0f, 0x8d, 0x53, 0xe0, 0x8b, 0x68, 0x14, 0x2e, 0x7b, + 0x3c, 0x6d, 0x04, 0x68, 0x21, 0xbf, 0xbb, 0x05, 0x10, 0xb9, 0xe0, 0x09, 0xa7, 0xc1, 0xaf, 0xa3, + 0xe9, 0xa8, 0x7a, 0x0a, 0x14, 0xa7, 0x09, 0x82, 0x72, 0x21, 0x27, 0xf4, 0x6e, 0x88, 0xe3, 0x55, + 0x6d, 0x64, 0x11, 0x09, 0x46, 0xbc, 0x88, 0xa6, 0x22, 0x18, 0x53, 0x51, 0x90, 0x0c, 0x70, 0xb6, + 0xdf, 0x2b, 0x9d, 0x96, 0x64, 0x31, 0x75, 0xca, 0xa2, 0xe2, 0x6c, 0xb8, 0x1e, 0x7d, 0xe6, 0xa2, + 0xf0, 0xc0, 0x31, 0x7c, 0x42, 0x5c, 0x37, 0xe7, 0xc5, 0x67, 0x2e, 0xd4, 0x8f, 0x5b, 0xdc, 0x40, + 0x93, 0xc4, 0xee, 0xfa, 0x74, 0xcd, 0x0e, 0x8a, 0x11, 0xf3, 0x68, 0x51, 0x78, 0x26, 0x97, 0x61, + 0x1a, 0xbe, 0x1d, 0xa4, 0xd4, 0xca, 0xa9, 0xbf, 0x2a, 0x17, 0xbe, 0x95, 0x56, 0xd7, 0x58, 0x4a, + 0x74, 0x95, 0x5e, 0x2f, 0x29, 0x2c, 0xa5, 0x90, 0xf1, 0x2f, 0x64, 0xd0, 0xe8, 0x9a, 0x6b, 0x58, + 0xbe, 0x27, 0xae, 0x5e, 0x4e, 0xce, 0x6d, 0xb9, 0x86, 0xc3, 0xc6, 0xc7, 0x1c, 0xdc, 0x3a, 0xbf, + 0x69, 0xb4, 0xba, 0xd4, 0xab, 0xbc, 0xc5, 0xde, 0xee, 0x1f, 0x7b, 0xa5, 0x4f, 0x6c, 0x80, 0xcf, + 0x71, 0xae, 0x69, 0xb7, 0xe7, 0x37, 0x5c, 0xe3, 0x9e, 0xc5, 0x8b, 0xdc, 0x1b, 0xad, 0x79, 0x9f, + 0xb6, 0xa8, 0x63, 0xbb, 0xfe, 0xbc, 0xe1, 0x58, 0xf3, 0xfe, 0xb6, 0x43, 0xbd, 0xf9, 0x50, 0x12, + 0x6f, 0x81, 0x0d, 0x01, 0x1f, 0xfe, 0x93, 0x87, 0x00, 0xc7, 0xe1, 0x5b, 0x08, 0x89, 0x57, 0x2d, + 0x3b, 0x8e, 0xb8, 0xc7, 0x91, 0x9c, 0xd4, 0x01, 0x86, 0x0f, 0xec, 0x50, 0x61, 0x86, 0x23, 0x97, + 0x38, 0x92, 0x24, 0xb0, 0x51, 0xb0, 0x26, 0x9e, 0x28, 0x50, 0xd3, 0x44, 0xa4, 0xf1, 0xe0, 0x61, + 0x53, 0x94, 0x14, 0x67, 0xc3, 0xeb, 0x68, 0x4a, 0xc8, 0x0d, 0xa3, 0x40, 0x27, 0x55, 0xa3, 0x11, + 0x43, 0xf3, 0x41, 0x1b, 0x3e, 0xa3, 0x29, 0xc0, 0x72, 0x1b, 0x31, 0x0e, 0x5c, 0x89, 0xb2, 0xcb, + 0xa0, 0x9e, 0x92, 0x36, 0x05, 0x23, 0x16, 0xca, 0xfd, 0x07, 0xfc, 0xbc, 0x0c, 0x93, 0x5c, 0xf0, + 0x47, 0x61, 0x91, 0x65, 0xf0, 0x51, 0x3f, 0x9d, 0x22, 0x23, 0x3e, 0xe6, 0x55, 0x16, 0x5c, 0x45, + 0x13, 0xa1, 0x1b, 0xe9, 0x36, 0xb3, 0x6c, 0x33, 0x51, 0xe5, 0xa1, 0x58, 0x80, 0xa9, 0x2c, 0x44, + 0xe1, 0xc1, 0x57, 0x50, 0x81, 0x5f, 0xc4, 0xd4, 0xf9, 0xcd, 0x51, 0x10, 0x1c, 0x00, 0xb0, 0x86, + 0x25, 0xf7, 0x58, 0x48, 0x88, 0x5f, 0x41, 0xc5, 0xf2, 0x5b, 0xab, 0xcc, 0xce, 0x94, 0xc9, 0x2d, + 0x4f, 0x3b, 0x11, 0x85, 0xe4, 0x43, 0xd2, 0xb9, 0xdd, 0xa2, 0x0d, 0xc3, 0x55, 0x8c, 0x87, 0x4c, + 0x8f, 0x17, 0xd0, 0xa4, 0x72, 0x78, 0xf2, 0xb4, 0xd9, 0xe8, 0xfb, 0x98, 0x06, 0x60, 0x1a, 0xa2, + 0xea, 0x96, 0x92, 0x59, 0xaf, 0x32, 0xb1, 0x51, 0x53, 0xb3, 0x3c, 0xa3, 0xd5, 0xb2, 0xb7, 0x08, + 0xb5, 0x3c, 0xaf, 0x4b, 0xe1, 0xda, 0xa9, 0xc0, 0x47, 0x8d, 0x29, 0x50, 0x0d, 0x97, 0xe3, 0x94, + 0xba, 0x07, 0x2a, 0x9b, 0xfe, 0xdf, 0x19, 0x79, 0x40, 0x87, 0x95, 0x94, 0x33, 0xa9, 0x95, 0x94, + 0x2f, 0xa2, 0x31, 0xb1, 0x0c, 0x84, 0x31, 0xbd, 0x90, 0xb9, 0x14, 0x44, 0xae, 0x58, 0x26, 0x89, + 0x08, 0x20, 0x6b, 0x24, 0x2a, 0x7e, 0x92, 0x93, 0xb2, 0x46, 0xa2, 0xe2, 0x27, 0x4a, 0xe9, 0x93, + 0xcb, 0xa8, 0x28, 0x06, 0xb3, 0x54, 0x17, 0x01, 0xa2, 0x4f, 0x82, 0x1c, 0x7e, 0x1e, 0xdc, 0x22, + 0x11, 0xe1, 0x97, 0x10, 0x8a, 0xf4, 0x2b, 0x16, 0x2d, 0x98, 0x7b, 0x72, 0x77, 0xc8, 0x73, 0x2f, + 0xa2, 0xd6, 0xff, 0x21, 0x93, 0x98, 0x32, 0xec, 0x19, 0x44, 0x9c, 0x94, 0xa4, 0x07, 0x78, 0x06, + 0x11, 0x55, 0x25, 0x9e, 0x41, 0x22, 0xc2, 0xe7, 0x51, 0x21, 0x56, 0x33, 0x02, 0xe2, 0x42, 0xc2, + 0x82, 0x11, 0x21, 0x16, 0x5f, 0x46, 0x05, 0x36, 0x80, 0x99, 0x08, 0xa1, 0x10, 0xa8, 0x46, 0xd5, + 0x15, 0x30, 0x79, 0xc4, 0x05, 0x74, 0x8c, 0x47, 0x09, 0xeb, 0x16, 0x3c, 0x29, 0xd3, 0x35, 0x0a, + 0xe3, 0xfe, 0x83, 0xec, 0x80, 0x73, 0xe0, 0xd1, 0x4d, 0xc0, 0x09, 0x93, 0x21, 0x47, 0x06, 0x24, + 0x43, 0xfe, 0x67, 0x76, 0xc0, 0x21, 0xf7, 0x48, 0x27, 0x2d, 0x85, 0xca, 0x50, 0x93, 0x96, 0xa2, + 0x7c, 0x31, 0xcb, 0x24, 0x32, 0x51, 0x2c, 0xbd, 0x71, 0xf4, 0x81, 0xe9, 0x8d, 0xbf, 0x93, 0xdb, + 0xc9, 0x09, 0x70, 0xac, 0xfb, 0xdd, 0xe8, 0xfe, 0x32, 0x2a, 0x86, 0x9a, 0x15, 0x25, 0x8b, 0x26, + 0xc2, 0xf0, 0x3d, 0x0e, 0x06, 0x1e, 0x89, 0x08, 0x5f, 0xe0, 0xcf, 0x0a, 0x5f, 0x7f, 0xcf, 0x03, + 0x03, 0x54, 0xf5, 0x61, 0xcf, 0xd6, 0xf0, 0xac, 0x77, 0x28, 0x09, 0xd1, 0xfa, 0x9f, 0x67, 0x53, + 0x3d, 0x29, 0xc7, 0x7d, 0xb4, 0x8b, 0x3e, 0x4a, 0x51, 0x22, 0xf7, 0x01, 0x1d, 0x2b, 0x71, 0x17, + 0x4a, 0xfc, 0x71, 0x36, 0xd5, 0x63, 0x76, 0xac, 0xc4, 0xdd, 0x58, 0x8b, 0x8b, 0x68, 0x8c, 0xd8, + 0x5b, 0x5e, 0xd5, 0xee, 0x76, 0x7c, 0x61, 0x2b, 0xc0, 0x50, 0xbb, 0xf6, 0x96, 0xd7, 0x68, 0x32, + 0x28, 0x89, 0x08, 0xf4, 0x9f, 0x64, 0x77, 0xf0, 0x29, 0x1e, 0x2b, 0xfe, 0xfd, 0x5c, 0x22, 0xbf, + 0x99, 0x55, 0x7c, 0x96, 0x47, 0x3a, 0xfb, 0x7f, 0xb5, 0xb9, 0x49, 0xdb, 0x46, 0x3c, 0xfb, 0xdf, + 0x03, 0xa8, 0xc8, 0x41, 0x8c, 0x48, 0xf4, 0x6f, 0x65, 0x63, 0x4e, 0xdb, 0x63, 0xdd, 0x3d, 0xb4, + 0xee, 0xc2, 0x51, 0x27, 0xfc, 0xd0, 0xc7, 0x9a, 0x7b, 0x58, 0xcd, 0x7d, 0x21, 0x1b, 0x73, 0xd9, + 0x1f, 0xdd, 0x7c, 0xe2, 0x6f, 0x65, 0x93, 0xd7, 0x0f, 0x47, 0x77, 0x24, 0x5d, 0x44, 0x63, 0x42, + 0x0f, 0xe1, 0x52, 0xc1, 0xed, 0x3e, 0x07, 0x82, 0xff, 0x24, 0x24, 0xd0, 0x7f, 0x3e, 0x8b, 0xd4, + 0xab, 0x94, 0x23, 0x3a, 0x86, 0xbe, 0x99, 0x55, 0x2f, 0x91, 0x8e, 0xee, 0xf8, 0x99, 0x43, 0x68, + 0xb5, 0xbb, 0x2e, 0x3e, 0x17, 0x29, 0x2c, 0x11, 0x77, 0xc0, 0x85, 0x50, 0x22, 0x51, 0x7c, 0xe4, + 0x59, 0x54, 0x84, 0x1b, 0x2f, 0xfe, 0xc9, 0x37, 0x3c, 0x8e, 0x0a, 0xcb, 0x95, 0xd5, 0x05, 0xf2, + 0xe6, 0x42, 0x6d, 0x7a, 0x08, 0x23, 0x34, 0x5a, 0x5b, 0xb8, 0x55, 0x5f, 0xa8, 0x4d, 0x67, 0x2a, + 0xd3, 0xef, 0xfd, 0xf3, 0xd9, 0xa1, 0xf7, 0x7e, 0x74, 0x36, 0xf3, 0xbd, 0x1f, 0x9d, 0xcd, 0xfc, + 0xd3, 0x8f, 0xce, 0x66, 0xd6, 0x47, 0xc1, 0x7b, 0x75, 0xe5, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, + 0x38, 0x80, 0x31, 0xf0, 0x7a, 0xa1, 0x00, 0x00, } func (m *Metadata) Marshal() (dAtA []byte, err error) { @@ -14789,6 +15252,167 @@ func (m *OneOf_Unknown) MarshalToSizedBuffer(dAtA []byte) (int, error) { } return len(dAtA) - i, nil } +func (m *OneOf_MySQLInitDB) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_MySQLInitDB) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MySQLInitDB != nil { + { + size, err := m.MySQLInitDB.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x8a + } + return len(dAtA) - i, nil +} +func (m *OneOf_MySQLCreateDB) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_MySQLCreateDB) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MySQLCreateDB != nil { + { + size, err := m.MySQLCreateDB.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x92 + } + return len(dAtA) - i, nil +} +func (m *OneOf_MySQLDropDB) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_MySQLDropDB) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MySQLDropDB != nil { + { + size, err := m.MySQLDropDB.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0x9a + } + return len(dAtA) - i, nil +} +func (m *OneOf_MySQLShutDown) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_MySQLShutDown) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MySQLShutDown != nil { + { + size, err := m.MySQLShutDown.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xa2 + } + return len(dAtA) - i, nil +} +func (m *OneOf_MySQLProcessKill) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_MySQLProcessKill) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MySQLProcessKill != nil { + { + size, err := m.MySQLProcessKill.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xaa + } + return len(dAtA) - i, nil +} +func (m *OneOf_MySQLDebug) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_MySQLDebug) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MySQLDebug != nil { + { + size, err := m.MySQLDebug.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xb2 + } + return len(dAtA) - i, nil +} +func (m *OneOf_MySQLRefresh) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_MySQLRefresh) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.MySQLRefresh != nil { + { + size, err := m.MySQLRefresh.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x5 + i-- + dAtA[i] = 0xba + } + return len(dAtA) - i, nil +} func (m *StreamStatus) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -14813,12 +15437,12 @@ func (m *StreamStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n357, err357 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) - if err357 != nil { - return 0, err357 + n364, err364 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) + if err364 != nil { + return 0, err364 } - i -= n357 - i = encodeVarintEvents(dAtA, i, uint64(n357)) + i -= n364 + i = encodeVarintEvents(dAtA, i, uint64(n364)) i-- dAtA[i] = 0x1a if m.LastEventIndex != 0 { @@ -15048,12 +15672,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x4a } - n363, err363 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err363 != nil { - return 0, err363 + n370, err370 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err370 != nil { + return 0, err370 } - i -= n363 - i = encodeVarintEvents(dAtA, i, uint64(n363)) + i -= n370 + i = encodeVarintEvents(dAtA, i, uint64(n370)) i-- dAtA[i] = 0x42 if len(m.KubernetesUsers) > 0 { @@ -15774,208 +16398,710 @@ func (m *MySQLStatementBulkExecute) MarshalToSizedBuffer(dAtA []byte) (int, erro return len(dAtA) - i, nil } -func encodeVarintEvents(dAtA []byte, offset int, v uint64) int { - offset -= sovEvents(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ +func (m *MySQLInitDB) 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 *Metadata) Size() (n int) { - if m == nil { - return 0 - } + +func (m *MySQLInitDB) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MySQLInitDB) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - if m.Index != 0 { - n += 1 + sovEvents(uint64(m.Index)) + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) } - l = len(m.Type) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + if len(m.SchemaName) > 0 { + i -= len(m.SchemaName) + copy(dAtA[i:], m.SchemaName) + i = encodeVarintEvents(dAtA, i, uint64(len(m.SchemaName))) + i-- + dAtA[i] = 0x2a } - l = len(m.ID) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + { + size, err := m.DatabaseMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - l = len(m.Code) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + i-- + dAtA[i] = 0x22 + { + size, err := m.SessionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - l = github_com_gogo_protobuf_types.SizeOfStdTime(m.Time) - n += 1 + l + sovEvents(uint64(l)) - l = len(m.ClusterName) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - return n + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil } -func (m *SessionMetadata) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.SessionID) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) - } - l = len(m.WithMFA) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) +func (m *MySQLCreateDB) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *UserMetadata) Size() (n int) { - if m == nil { - return 0 - } +func (m *MySQLCreateDB) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MySQLCreateDB) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.User) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) } - l = len(m.Login) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + if len(m.SchemaName) > 0 { + i -= len(m.SchemaName) + copy(dAtA[i:], m.SchemaName) + i = encodeVarintEvents(dAtA, i, uint64(len(m.SchemaName))) + i-- + dAtA[i] = 0x2a } - l = len(m.Impersonator) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + { + size, err := m.DatabaseMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - l = len(m.AWSRoleARN) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + i-- + dAtA[i] = 0x22 + { + size, err := m.SessionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - if len(m.AccessRequests) > 0 { - for _, s := range m.AccessRequests { - l = len(s) - n += 1 + l + sovEvents(uint64(l)) + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - return n + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil } -func (m *ServerMetadata) Size() (n int) { - if m == nil { - return 0 +func (m *MySQLDropDB) 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 *MySQLDropDB) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MySQLDropDB) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.ServerNamespace) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) } - l = len(m.ServerID) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + if len(m.SchemaName) > 0 { + i -= len(m.SchemaName) + copy(dAtA[i:], m.SchemaName) + i = encodeVarintEvents(dAtA, i, uint64(len(m.SchemaName))) + i-- + dAtA[i] = 0x2a } - l = len(m.ServerHostname) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + { + size, err := m.DatabaseMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - l = len(m.ServerAddr) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + i-- + dAtA[i] = 0x22 + { + size, err := m.SessionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - if len(m.ServerLabels) > 0 { - for k, v := range m.ServerLabels { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovEvents(uint64(len(k))) + 1 + len(v) + sovEvents(uint64(len(v))) - n += mapEntrySize + 1 + sovEvents(uint64(mapEntrySize)) + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - return n + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil } -func (m *ConnectionMetadata) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.LocalAddr) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) - } - l = len(m.RemoteAddr) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) - } - l = len(m.Protocol) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) +func (m *MySQLShutDown) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *KubernetesClusterMetadata) Size() (n int) { - if m == nil { - return 0 - } +func (m *MySQLShutDown) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MySQLShutDown) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.KubernetesCluster) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) } - if len(m.KubernetesUsers) > 0 { - for _, s := range m.KubernetesUsers { - l = len(s) - n += 1 + l + sovEvents(uint64(l)) + { + size, err := m.DatabaseMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - if len(m.KubernetesGroups) > 0 { - for _, s := range m.KubernetesGroups { - l = len(s) - n += 1 + l + sovEvents(uint64(l)) + i-- + dAtA[i] = 0x22 + { + size, err := m.SessionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) } - return n + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil } -func (m *KubernetesPodMetadata) Size() (n int) { - if m == nil { - return 0 +func (m *MySQLProcessKill) 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 *MySQLProcessKill) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MySQLProcessKill) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.KubernetesPodName) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) } - l = len(m.KubernetesPodNamespace) - if l > 0 { - n += 1 + l + sovEvents(uint64(l)) + if m.ProcessID != 0 { + i = encodeVarintEvents(dAtA, i, uint64(m.ProcessID)) + i-- + dAtA[i] = 0x28 } - l = len(m.KubernetesContainerName) - if l > 0 { + { + size, err := m.DatabaseMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size, err := m.SessionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *MySQLDebug) 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 *MySQLDebug) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MySQLDebug) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + { + size, err := m.DatabaseMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size, err := m.SessionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *MySQLRefresh) 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 *MySQLRefresh) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MySQLRefresh) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.Subcommand) > 0 { + i -= len(m.Subcommand) + copy(dAtA[i:], m.Subcommand) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Subcommand))) + i-- + dAtA[i] = 0x2a + } + { + size, err := m.DatabaseMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size, err := m.SessionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func encodeVarintEvents(dAtA []byte, offset int, v uint64) int { + offset -= sovEvents(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *Metadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Index != 0 { + n += 1 + sovEvents(uint64(m.Index)) + } + l = len(m.Type) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.ID) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Code) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = github_com_gogo_protobuf_types.SizeOfStdTime(m.Time) + n += 1 + l + sovEvents(uint64(l)) + l = len(m.ClusterName) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *SessionMetadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SessionID) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.WithMFA) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *UserMetadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.User) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Login) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Impersonator) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.AWSRoleARN) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if len(m.AccessRequests) > 0 { + for _, s := range m.AccessRequests { + l = len(s) + n += 1 + l + sovEvents(uint64(l)) + } + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *ServerMetadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ServerNamespace) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.ServerID) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.ServerHostname) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.ServerAddr) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if len(m.ServerLabels) > 0 { + for k, v := range m.ServerLabels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovEvents(uint64(len(k))) + 1 + len(v) + sovEvents(uint64(len(v))) + n += mapEntrySize + 1 + sovEvents(uint64(mapEntrySize)) + } + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *ConnectionMetadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.LocalAddr) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.RemoteAddr) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Protocol) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *KubernetesClusterMetadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.KubernetesCluster) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if len(m.KubernetesUsers) > 0 { + for _, s := range m.KubernetesUsers { + l = len(s) + n += 1 + l + sovEvents(uint64(l)) + } + } + if len(m.KubernetesGroups) > 0 { + for _, s := range m.KubernetesGroups { + l = len(s) + n += 1 + l + sovEvents(uint64(l)) + } + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *KubernetesPodMetadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.KubernetesPodName) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.KubernetesPodNamespace) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.KubernetesContainerName) + if l > 0 { n += 1 + l + sovEvents(uint64(l)) } l = len(m.KubernetesContainerImage) @@ -18986,6 +20112,90 @@ func (m *OneOf_Unknown) Size() (n int) { } return n } +func (m *OneOf_MySQLInitDB) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MySQLInitDB != nil { + l = m.MySQLInitDB.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_MySQLCreateDB) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MySQLCreateDB != nil { + l = m.MySQLCreateDB.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_MySQLDropDB) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MySQLDropDB != nil { + l = m.MySQLDropDB.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_MySQLShutDown) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MySQLShutDown != nil { + l = m.MySQLShutDown.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_MySQLProcessKill) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MySQLProcessKill != nil { + l = m.MySQLProcessKill.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_MySQLDebug) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MySQLDebug != nil { + l = m.MySQLDebug.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_MySQLRefresh) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.MySQLRefresh != nil { + l = m.MySQLRefresh.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} func (m *StreamStatus) Size() (n int) { if m == nil { return 0 @@ -19383,6 +20593,165 @@ func (m *MySQLStatementBulkExecute) Size() (n int) { return n } +func (m *MySQLInitDB) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.SessionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.DatabaseMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = len(m.SchemaName) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *MySQLCreateDB) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.SessionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.DatabaseMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = len(m.SchemaName) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *MySQLDropDB) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.SessionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.DatabaseMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = len(m.SchemaName) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *MySQLShutDown) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.SessionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.DatabaseMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *MySQLProcessKill) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.SessionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.DatabaseMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if m.ProcessID != 0 { + n += 1 + sovEvents(uint64(m.ProcessID)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *MySQLDebug) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.SessionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.DatabaseMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *MySQLRefresh) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.SessionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.DatabaseMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = len(m.Subcommand) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func sovEvents(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -40771,62 +42140,11 @@ func (m *OneOf) Unmarshal(dAtA []byte) error { } m.Event = &OneOf_Unknown{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *StreamStatus) 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 ErrIntOverflowEvents - } - 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: StreamStatus: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: StreamStatus: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 81: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UploadID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MySQLInitDB", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -40836,46 +42154,342 @@ func (m *StreamStatus) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.UploadID = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field LastEventIndex", wireType) - } - m.LastEventIndex = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.LastEventIndex |= int64(b&0x7F) << shift - if b < 0x80 { - break - } + v := &MySQLInitDB{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - case 3: + m.Event = &OneOf_MySQLInitDB{v} + iNdEx = postIndex + case 82: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LastUploadTime", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MySQLCreateDB", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &MySQLCreateDB{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_MySQLCreateDB{v} + iNdEx = postIndex + case 83: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MySQLDropDB", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &MySQLDropDB{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_MySQLDropDB{v} + iNdEx = postIndex + case 84: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MySQLShutDown", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &MySQLShutDown{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_MySQLShutDown{v} + iNdEx = postIndex + case 85: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MySQLProcessKill", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &MySQLProcessKill{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_MySQLProcessKill{v} + iNdEx = postIndex + case 86: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MySQLDebug", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &MySQLDebug{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_MySQLDebug{v} + iNdEx = postIndex + case 87: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MySQLRefresh", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &MySQLRefresh{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_MySQLRefresh{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StreamStatus) 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 ErrIntOverflowEvents + } + 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: StreamStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StreamStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UploadID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UploadID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field LastEventIndex", wireType) + } + m.LastEventIndex = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.LastEventIndex |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LastUploadTime", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -41853,17 +43467,1298 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: RouteToApp: wiretype end group for non-group") + return fmt.Errorf("proto: RouteToApp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RouteToApp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SessionID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PublicAddr", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PublicAddr = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClusterName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AWSRoleARN", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AWSRoleARN = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RouteToDatabase) 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 ErrIntOverflowEvents + } + 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: RouteToDatabase: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RouteToDatabase: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ServiceName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ServiceName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Protocol", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Protocol = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Username", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Username = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Database", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Database = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MySQLStatementPrepare) 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 ErrIntOverflowEvents + } + 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: MySQLStatementPrepare: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MySQLStatementPrepare: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Query = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MySQLStatementExecute) 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 ErrIntOverflowEvents + } + 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: MySQLStatementExecute: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MySQLStatementExecute: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + } + m.StatementID = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.StatementID |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MySQLStatementSendLongData) 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 ErrIntOverflowEvents + } + 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: MySQLStatementSendLongData: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MySQLStatementSendLongData: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + } + m.StatementID = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.StatementID |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ParameterID", wireType) + } + m.ParameterID = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ParameterID |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DataSize", wireType) + } + m.DataSize = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.DataSize |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MySQLStatementClose) 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 ErrIntOverflowEvents + } + 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: MySQLStatementClose: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MySQLStatementClose: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + } + m.StatementID = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.StatementID |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MySQLStatementReset) 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 ErrIntOverflowEvents + } + 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: MySQLStatementReset: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: RouteToApp: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementReset: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -41873,29 +44768,30 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Name = string(dAtA[iNdEx:postIndex]) + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -41905,29 +44801,30 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.SessionID = string(dAtA[iNdEx:postIndex]) + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PublicAddr", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -41937,29 +44834,30 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.PublicAddr = string(dAtA[iNdEx:postIndex]) + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -41969,29 +44867,30 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.ClusterName = string(dAtA[iNdEx:postIndex]) + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AWSRoleARN", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) } - var stringLen uint64 + m.StatementID = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -42001,24 +44900,11 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.StatementID |= uint32(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AWSRoleARN = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -42041,7 +44927,7 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } return nil } -func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -42064,17 +44950,17 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: RouteToDatabase: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementFetch: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: RouteToDatabase: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementFetch: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServiceName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -42084,29 +44970,30 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.ServiceName = string(dAtA[iNdEx:postIndex]) + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Protocol", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -42116,29 +45003,30 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Protocol = string(dAtA[iNdEx:postIndex]) + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Username", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -42148,29 +45036,30 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Username = string(dAtA[iNdEx:postIndex]) + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Database", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -42180,24 +45069,63 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Database = string(dAtA[iNdEx:postIndex]) + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + } + m.StatementID = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.StatementID |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field RowsCount", wireType) + } + m.RowsCount = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.RowsCount |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -42220,7 +45148,7 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -42243,10 +45171,10 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementPrepare: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementBulkExecute: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementPrepare: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementBulkExecute: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -42382,8 +45310,27 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + } + m.StatementID = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.StatementID |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -42411,7 +45358,7 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Query = string(dAtA[iNdEx:postIndex]) + m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -42435,7 +45382,7 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { +func (m *MySQLInitDB) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -42458,10 +45405,10 @@ func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementExecute: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLInitDB: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementExecute: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLInitDB: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -42597,27 +45544,8 @@ func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) - } - m.StatementID = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.StatementID |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SchemaName", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -42645,7 +45573,7 @@ func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) + m.SchemaName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -42669,7 +45597,7 @@ func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { +func (m *MySQLCreateDB) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -42692,10 +45620,10 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementSendLongData: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLCreateDB: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementSendLongData: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLCreateDB: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -42727,13 +45655,79 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -42760,13 +45754,96 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 3: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SchemaName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + 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 ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SchemaName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MySQLDropDB) 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 ErrIntOverflowEvents + } + 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: MySQLDropDB: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MySQLDropDB: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -42793,13 +45870,13 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 4: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -42826,15 +45903,15 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } - m.StatementID = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -42844,16 +45921,30 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.StatementID |= uint32(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ParameterID", wireType) + if msglen < 0 { + return ErrInvalidLengthEvents } - m.ParameterID = 0 + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + } + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -42863,16 +45954,30 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.ParameterID |= uint32(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 7: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field DataSize", wireType) + if msglen < 0 { + return ErrInvalidLengthEvents } - m.DataSize = 0 + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SchemaName", wireType) + } + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -42882,11 +45987,24 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.DataSize |= uint32(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SchemaName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -42909,7 +46027,7 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementClose) Unmarshal(dAtA []byte) error { +func (m *MySQLShutDown) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -42932,10 +46050,10 @@ func (m *MySQLStatementClose) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementClose: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLShutDown: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementClose: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLShutDown: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -43070,25 +46188,6 @@ func (m *MySQLStatementClose) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) - } - m.StatementID = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.StatementID |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -43111,7 +46210,7 @@ func (m *MySQLStatementClose) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { +func (m *MySQLProcessKill) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -43134,10 +46233,10 @@ func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementReset: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLProcessKill: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementReset: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLProcessKill: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -43274,9 +46373,9 @@ func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 5: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ProcessID", wireType) } - m.StatementID = 0 + m.ProcessID = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -43286,7 +46385,7 @@ func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.StatementID |= uint32(b&0x7F) << shift + m.ProcessID |= uint32(b&0x7F) << shift if b < 0x80 { break } @@ -43313,7 +46412,7 @@ func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { +func (m *MySQLDebug) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -43336,10 +46435,10 @@ func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementFetch: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLDebug: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementFetch: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLDebug: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -43474,44 +46573,6 @@ func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) - } - m.StatementID = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.StatementID |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field RowsCount", wireType) - } - m.RowsCount = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.RowsCount |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -43534,7 +46595,7 @@ func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { +func (m *MySQLRefresh) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -43557,10 +46618,10 @@ func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementBulkExecute: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLRefresh: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementBulkExecute: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLRefresh: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -43696,27 +46757,8 @@ func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) - } - m.StatementID = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.StatementID |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Subcommand", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -43744,7 +46786,7 @@ func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) + m.Subcommand = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex diff --git a/api/types/events/events.proto b/api/types/events/events.proto index 7a1e69e52b463..d07294eb1c4ec 100644 --- a/api/types/events/events.proto +++ b/api/types/events/events.proto @@ -1884,6 +1884,13 @@ message OneOf { events.MySQLStatementBulkExecute MySQLStatementBulkExecute = 78; events.RenewableCertificateGenerationMismatch RenewableCertificateGenerationMismatch = 79; events.Unknown Unknown = 80; + events.MySQLInitDB MySQLInitDB = 81; + events.MySQLCreateDB MySQLCreateDB = 82; + events.MySQLDropDB MySQLDropDB = 83; + events.MySQLShutDown MySQLShutDown = 84; + events.MySQLProcessKill MySQLProcessKill = 85; + events.MySQLDebug MySQLDebug = 86; + events.MySQLRefresh MySQLRefresh = 87; } } @@ -2150,3 +2157,128 @@ message MySQLStatementBulkExecute { // Parameters are the parameters used to execute the prepared statement. repeated string Parameters = 6 [ (gogoproto.jsontag) = "parameters" ]; } + +// MySQLInitDB is emitted when a MySQL client changes the default schema for +// the connection. +message MySQLInitDB { + // Metadata is a common event metadata. + Metadata Metadata = 1 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // User is a common user event metadata. + UserMetadata User = 2 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SessionMetadata is a common event session metadata. + SessionMetadata Session = 3 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // Database contains database related metadata. + DatabaseMetadata Database = 4 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SchemaName is the name of the schema to use. + string SchemaName = 5 [ (gogoproto.jsontag) = "schema_name" ]; +} + +// MySQLCreateDB is emitted when a MySQL client creates a schema. +message MySQLCreateDB { + // Metadata is a common event metadata. + Metadata Metadata = 1 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // User is a common user event metadata. + UserMetadata User = 2 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SessionMetadata is a common event session metadata. + SessionMetadata Session = 3 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // Database contains database related metadata. + DatabaseMetadata Database = 4 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SchemaName is the name of the schema to create. + string SchemaName = 5 [ (gogoproto.jsontag) = "schema_name" ]; +} + +// MySQLDropDB is emitted when a MySQL client drops a schema. +message MySQLDropDB { + // Metadata is a common event metadata. + Metadata Metadata = 1 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // User is a common user event metadata. + UserMetadata User = 2 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SessionMetadata is a common event session metadata. + SessionMetadata Session = 3 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // Database contains database related metadata. + DatabaseMetadata Database = 4 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SchemaName is the name of the schema to drop. + string SchemaName = 5 [ (gogoproto.jsontag) = "schema_name" ]; +} + +// MySQLShutDown is emitted when a MySQL client asks the server to shut down. +message MySQLShutDown { + // Metadata is a common event metadata. + Metadata Metadata = 1 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // User is a common user event metadata. + UserMetadata User = 2 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SessionMetadata is a common event session metadata. + SessionMetadata Session = 3 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // Database contains database related metadata. + DatabaseMetadata Database = 4 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; +} + +// MySQLProcessKill is emitted when a MySQL client asks the server to terminate +// a connection. +message MySQLProcessKill { + // Metadata is a common event metadata. + Metadata Metadata = 1 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // User is a common user event metadata. + UserMetadata User = 2 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SessionMetadata is a common event session metadata. + SessionMetadata Session = 3 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // Database contains database related metadata. + DatabaseMetadata Database = 4 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // ProcessID is the process ID of a connection. + uint32 ProcessID = 5 [ (gogoproto.jsontag) = "process_id" ]; +} + +// MySQLDebug is emitted when a MySQL client asks the server to dump internal +// debug info to stdout. +message MySQLDebug { + // Metadata is a common event metadata. + Metadata Metadata = 1 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // User is a common user event metadata. + UserMetadata User = 2 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SessionMetadata is a common event session metadata. + SessionMetadata Session = 3 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // Database contains database related metadata. + DatabaseMetadata Database = 4 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; +} + +// MySQLRefresh is emitted when a MySQL client sends refresh commands. +message MySQLRefresh { + // Metadata is a common event metadata. + Metadata Metadata = 1 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // User is a common user event metadata. + UserMetadata User = 2 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // SessionMetadata is a common event session metadata. + SessionMetadata Session = 3 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // Database contains database related metadata. + DatabaseMetadata Database = 4 + [ (gogoproto.nullable) = false, (gogoproto.embed) = true, (gogoproto.jsontag) = "" ]; + // Subcommand is the string representation of the subcommand. + string Subcommand = 5 [ (gogoproto.jsontag) = "subcommand" ]; +} diff --git a/api/types/events/oneof.go b/api/types/events/oneof.go index 8181e7c98bcc0..b64eabe43f7f1 100644 --- a/api/types/events/oneof.go +++ b/api/types/events/oneof.go @@ -351,6 +351,34 @@ func ToOneOf(in AuditEvent) (*OneOf, error) { out.Event = &OneOf_MySQLStatementBulkExecute{ MySQLStatementBulkExecute: e, } + case *MySQLInitDB: + out.Event = &OneOf_MySQLInitDB{ + MySQLInitDB: e, + } + case *MySQLCreateDB: + out.Event = &OneOf_MySQLCreateDB{ + MySQLCreateDB: e, + } + case *MySQLDropDB: + out.Event = &OneOf_MySQLDropDB{ + MySQLDropDB: e, + } + case *MySQLShutDown: + out.Event = &OneOf_MySQLShutDown{ + MySQLShutDown: e, + } + case *MySQLProcessKill: + out.Event = &OneOf_MySQLProcessKill{ + MySQLProcessKill: e, + } + case *MySQLDebug: + out.Event = &OneOf_MySQLDebug{ + MySQLDebug: e, + } + case *MySQLRefresh: + out.Event = &OneOf_MySQLRefresh{ + MySQLRefresh: e, + } case *RenewableCertificateGenerationMismatch: out.Event = &OneOf_RenewableCertificateGenerationMismatch{ RenewableCertificateGenerationMismatch: e, diff --git a/lib/events/api.go b/lib/events/api.go index 4b40284672bd8..d9b02688087a2 100644 --- a/lib/events/api.go +++ b/lib/events/api.go @@ -447,6 +447,28 @@ const ( // statement protocol. DatabaseSessionMySQLStatementBulkExecuteEvent = "db.session.mysql.statements.bulk_execute" + // DatabaseSessionMySQLInitDBEvent is emitted when a MySQL client changes + // the default schema for the connection. + DatabaseSessionMySQLInitDBEvent = "db.session.mysql.init_db" + // DatabaseSessionMySQLCreateDBEvent is emitted when a MySQL client creates + // a schema. + DatabaseSessionMySQLCreateDBEvent = "db.session.mysql.create_db" + // DatabaseSessionMySQLDropDBEvent is emitted when a MySQL client drops a + // schema. + DatabaseSessionMySQLDropDBEvent = "db.session.mysql.drop_db" + // DatabaseSessionMySQLShutDownEvent is emitted when a MySQL client asks + // the server to shut down. + DatabaseSessionMySQLShutDownEvent = "db.session.mysql.shut_down" + // DatabaseSessionMySQLProcessKillEvent is emitted when a MySQL client asks + // the server to terminate a connection. + DatabaseSessionMySQLProcessKillEvent = "db.session.mysql.process_kill" + // DatabaseSessionMySQLDebugEvent is emitted when a MySQL client asks the + // server to dump internal debug info to stdout. + DatabaseSessionMySQLDebugEvent = "db.session.mysql.debug" + // DatabaseSessionMySQLRefreshEvent is emitted when a MySQL client sends + // refresh commands. + DatabaseSessionMySQLRefreshEvent = "db.session.mysql.refresh" + // SessionRejectedReasonMaxConnections indicates that a session.rejected event // corresponds to enforcement of the max_connections control. SessionRejectedReasonMaxConnections = "max_connections limit reached" diff --git a/lib/events/codes.go b/lib/events/codes.go index 9d0032d94c5b2..01f8d98f5400a 100644 --- a/lib/events/codes.go +++ b/lib/events/codes.go @@ -386,6 +386,20 @@ const ( MySQLStatementFetchCode = "TMY05I" // MySQLStatementBulkExecuteCode is the db.session.mysql.statements.bulk_execute event code. MySQLStatementBulkExecuteCode = "TMY06I" + // MySQLInitDBCode is the db.session.mysql.init_db event code. + MySQLInitDBCode = "TMY07I" + // MySQLCreateDBCode is the db.session.mysql.create_db event code. + MySQLCreateDBCode = "TMY08I" + // MySQLDropDBCode is the db.session.mysql.drop_db event code. + MySQLDropDBCode = "TMY09I" + // MySQLShutDownCode is the db.session.mysql.shut_down event code. + MySQLShutDownCode = "TMY10I" + // MySQLProcessKillCode is the db.session.mysql.process_kill event code. + MySQLProcessKillCode = "TMY11I" + // MySQLDebugCode is the db.session.mysql.debug event code. + MySQLDebugCode = "TMY12I" + // MySQLRefreshCode is the db.session.mysql.refresh event code. + MySQLRefreshCode = "TMY13I" // DatabaseCreateCode is the db.create event code. DatabaseCreateCode = "TDB03I" diff --git a/lib/events/dynamic.go b/lib/events/dynamic.go index 9f53bbcd0bffd..7b2ae4f3173d4 100644 --- a/lib/events/dynamic.go +++ b/lib/events/dynamic.go @@ -180,6 +180,20 @@ func FromEventFields(fields EventFields) (apievents.AuditEvent, error) { e = &events.MySQLStatementFetch{} case DatabaseSessionMySQLStatementBulkExecuteEvent: e = &events.MySQLStatementBulkExecute{} + case DatabaseSessionMySQLInitDBEvent: + e = &events.MySQLInitDB{} + case DatabaseSessionMySQLCreateDBEvent: + e = &events.MySQLCreateDB{} + case DatabaseSessionMySQLDropDBEvent: + e = &events.MySQLDropDB{} + case DatabaseSessionMySQLShutDownEvent: + e = &events.MySQLShutDown{} + case DatabaseSessionMySQLProcessKillEvent: + e = &events.MySQLProcessKill{} + case DatabaseSessionMySQLDebugEvent: + e = &events.MySQLDebug{} + case DatabaseSessionMySQLRefreshEvent: + e = &events.MySQLRefresh{} case KubeRequestEvent: e = &events.KubeRequest{} case MFADeviceAddEvent: diff --git a/lib/srv/db/mysql/engine.go b/lib/srv/db/mysql/engine.go index 6b987b171b018..9f980ccb57012 100644 --- a/lib/srv/db/mysql/engine.go +++ b/lib/srv/db/mysql/engine.go @@ -299,6 +299,21 @@ func (e *Engine) receiveFromClient(clientConn, serverConn net.Conn, clientErrCh case *protocol.Quit: return + case *protocol.InitDB: + e.Audit.EmitEvent(e.Context, makeInitDBEvent(sessionCtx, pkt)) + case *protocol.CreateDB: + e.Audit.EmitEvent(e.Context, makeCreateDBEvent(sessionCtx, pkt)) + case *protocol.DropDB: + e.Audit.EmitEvent(e.Context, makeDropDBEvent(sessionCtx, pkt)) + case *protocol.ShutDown: + e.Audit.EmitEvent(e.Context, makeShutDownEvent(sessionCtx, pkt)) + case *protocol.ProcessKill: + e.Audit.EmitEvent(e.Context, makeProcessKillEvent(sessionCtx, pkt)) + case *protocol.Debug: + e.Audit.EmitEvent(e.Context, makeDebugEvent(sessionCtx, pkt)) + case *protocol.Refresh: + e.Audit.EmitEvent(e.Context, makeRefreshEvent(sessionCtx, pkt)) + case *protocol.StatementPreparePacket: e.Audit.EmitEvent(e.Context, makeStatementPrepareEvent(sessionCtx, pkt)) case *protocol.StatementExecutePacket: diff --git a/lib/srv/db/mysql/events.go b/lib/srv/db/mysql/events.go index 3ab0fc9d0c142..f6979e9b327f3 100644 --- a/lib/srv/db/mysql/events.go +++ b/lib/srv/db/mysql/events.go @@ -125,3 +125,92 @@ func makeStatementBulkExecuteEvent(session *common.Session, packet *protocol.Sta StatementID: packet.StatementID(), } } + +// makeInitDBEvent creates an audit event for MySQL init DB command. +func makeInitDBEvent(session *common.Session, packet *protocol.InitDB) events.AuditEvent { + return &events.MySQLInitDB{ + Metadata: common.MakeEventMetadata(session, + libevents.DatabaseSessionMySQLInitDBEvent, + libevents.MySQLInitDBCode), + UserMetadata: common.MakeUserMetadata(session), + SessionMetadata: common.MakeSessionMetadata(session), + DatabaseMetadata: common.MakeDatabaseMetadata(session), + SchemaName: packet.SchemaName(), + } +} + +// makeCreateDBEvent creates an audit event for MySQL create DB command. +func makeCreateDBEvent(session *common.Session, packet *protocol.CreateDB) events.AuditEvent { + return &events.MySQLCreateDB{ + Metadata: common.MakeEventMetadata(session, + libevents.DatabaseSessionMySQLCreateDBEvent, + libevents.MySQLCreateDBCode), + UserMetadata: common.MakeUserMetadata(session), + SessionMetadata: common.MakeSessionMetadata(session), + DatabaseMetadata: common.MakeDatabaseMetadata(session), + SchemaName: packet.SchemaName(), + } +} + +// makeDropDBEvent creates an audit event for MySQL drop DB command. +func makeDropDBEvent(session *common.Session, packet *protocol.DropDB) events.AuditEvent { + return &events.MySQLDropDB{ + Metadata: common.MakeEventMetadata(session, + libevents.DatabaseSessionMySQLDropDBEvent, + libevents.MySQLDropDBCode), + UserMetadata: common.MakeUserMetadata(session), + SessionMetadata: common.MakeSessionMetadata(session), + DatabaseMetadata: common.MakeDatabaseMetadata(session), + SchemaName: packet.SchemaName(), + } +} + +// makeShutDownEvent creates an audit event for MySQL shut down command. +func makeShutDownEvent(session *common.Session, packet *protocol.ShutDown) events.AuditEvent { + return &events.MySQLShutDown{ + Metadata: common.MakeEventMetadata(session, + libevents.DatabaseSessionMySQLShutDownEvent, + libevents.MySQLShutDownCode), + UserMetadata: common.MakeUserMetadata(session), + SessionMetadata: common.MakeSessionMetadata(session), + DatabaseMetadata: common.MakeDatabaseMetadata(session), + } +} + +// makeProcessKillEvent creates an audit event for MySQL process kill command. +func makeProcessKillEvent(session *common.Session, packet *protocol.ProcessKill) events.AuditEvent { + return &events.MySQLProcessKill{ + Metadata: common.MakeEventMetadata(session, + libevents.DatabaseSessionMySQLProcessKillEvent, + libevents.MySQLProcessKillCode), + UserMetadata: common.MakeUserMetadata(session), + SessionMetadata: common.MakeSessionMetadata(session), + DatabaseMetadata: common.MakeDatabaseMetadata(session), + ProcessID: packet.ProcessID(), + } +} + +// makeDebugEvent creates an audit event for MySQL debug command. +func makeDebugEvent(session *common.Session, packet *protocol.Debug) events.AuditEvent { + return &events.MySQLDebug{ + Metadata: common.MakeEventMetadata(session, + libevents.DatabaseSessionMySQLDebugEvent, + libevents.MySQLDebugCode), + UserMetadata: common.MakeUserMetadata(session), + SessionMetadata: common.MakeSessionMetadata(session), + DatabaseMetadata: common.MakeDatabaseMetadata(session), + } +} + +// makeRefreshEvent creates an audit event for MySQL refresh command. +func makeRefreshEvent(session *common.Session, packet *protocol.Refresh) events.AuditEvent { + return &events.MySQLRefresh{ + Metadata: common.MakeEventMetadata(session, + libevents.DatabaseSessionMySQLRefreshEvent, + libevents.MySQLRefreshCode), + UserMetadata: common.MakeUserMetadata(session), + SessionMetadata: common.MakeSessionMetadata(session), + DatabaseMetadata: common.MakeDatabaseMetadata(session), + Subcommand: packet.Subcommand(), + } +} diff --git a/lib/srv/db/mysql/protocol/command.go b/lib/srv/db/mysql/protocol/command.go index 67d6a4aea14c4..8bf5b9e8038d2 100644 --- a/lib/srv/db/mysql/protocol/command.go +++ b/lib/srv/db/mysql/protocol/command.go @@ -62,6 +62,113 @@ func (p *ChangeUser) User() string { return p.user } +// schemaNamePacket is a common packet format that the packet type is followed +// by the schema name. +type schemaNamePacket struct { + packet + + // schemaName is the schema name. + schemaName string +} + +// SchemaName returns the schema name. +func (p *schemaNamePacket) SchemaName() string { + return p.schemaName +} + +// InitDB represents the COM_INIT_DB command. +// +// COM_INIT_DB is used to specify the default schema for the connection. For +// example, "USE " from "mysql" client sends COM_INIT_DB command +// with the schema name. +// +// https://dev.mysql.com/doc/internals/en/com-init-db.html +// https://mariadb.com/kb/en/com_init_db/ +type InitDB struct { + schemaNamePacket +} + +// CreateDB represents the COM_CREATE_DB command. +// +// https://dev.mysql.com/doc/internals/en/com-create-db.html +// https://mariadb.com/kb/en/com_create_db/ +// +// COM_CREATE_DB creates a schema. COM_CREATE_DB is deprecated in both MySQL +// and MariaDB. +type CreateDB struct { + schemaNamePacket +} + +// DropDB represents the COM_DROP_DB command. +// +// https://dev.mysql.com/doc/internals/en/com-drop-db.html +// https://mariadb.com/kb/en/com_drop_db/ +// +// COM_DROP_DB drops a schema. COM_DROP_DB is deprecated in both MySQL and +// MariaDB. +type DropDB struct { + schemaNamePacket +} + +// ShutDown represents the COM_SHUTDOWN command. +// +// https://dev.mysql.com/doc/internals/en/com-shutdown.html +// https://mariadb.com/kb/en/com_shutdown/ +// +// COM_SHUTDOWN is used to shut down the MySQL server. COM_SHUTDOWN requires +// SHUTDOWN privileges. COM_SHUTDOWN is deprecated as of MySQL 5.7.9. +type ShutDown struct { + packet +} + +// ProcessKill represents the COM_PROCESS_KILL command. +// +// https://dev.mysql.com/doc/internals/en/com-process-kill.html +// https://mariadb.com/kb/en/com_process_kill/ +// +// COM_PROCESS_KILL asks the server to terminate a connection. COM_PROCESS_KILL +// is deprecated as of MySQL 5.7.11. +type ProcessKill struct { + packet + + // processID is the process ID of a connection. + processID uint32 +} + +// ProcessID returns the process ID of a connection. +func (p *ProcessKill) ProcessID() uint32 { + return p.processID +} + +// Debug represents the COM_DEBUG command. +// +// https://dev.mysql.com/doc/internals/en/com-debug.html +// https://mariadb.com/kb/en/com_debug/ +// +// COM_DEBUG forces the server to dump debug information to stdout. COM_DEBUG +// requires SUPER privileges. +type Debug struct { + packet +} + +// Refresh represents the COM_REFRESH command. +// +// https://dev.mysql.com/doc/internals/en/com-refresh.html +// +// COM_REFRESH calls REFRESH or FLUSH statements. COM_REFRESH is deprecated as +// of MySQL 5.7.11. +type Refresh struct { + packet + + // subcommand is the string representation of the subcommand. + subcommand string +} + +// Subcommand returns the string representation of the subcommand. +func (p *Refresh) Subcommand() string { + return p.subcommand +} + // parseQueryPacket parses packet bytes and returns a Packet if successful. func parseQueryPacket(packetBytes []byte) (Packet, error) { // Be a bit paranoid and make sure the packet is not truncated. @@ -93,7 +200,7 @@ func parseChangeUserPacket(packetBytes []byte) (Packet, error) { // User is the first null-terminated string in the payload: // https://dev.mysql.com/doc/internals/en/com-change-user.html#packet-COM_CHANGE_USER idx := bytes.IndexByte(packetBytes[packetHeaderAndTypeSize:], 0x00) - if idx < -1 { + if idx < 0 { return nil, trace.BadParameter("failed to parse COM_CHANGE_USER packet: %v", packetBytes) } @@ -102,3 +209,125 @@ func parseChangeUserPacket(packetBytes []byte) (Packet, error) { user: string(packetBytes[packetHeaderAndTypeSize : packetHeaderAndTypeSize+idx]), }, nil } + +// parseSchemaNamePacket parses packet bytes and returns a schemaNamePacket if +// successful. +func parseSchemaNamePacket(packetBytes []byte) (schemaNamePacket, bool) { + unread, ok := skipHeaderAndType(packetBytes) + if !ok { + return schemaNamePacket{}, false + } + + return schemaNamePacket{ + packet: packet{bytes: packetBytes}, + schemaName: string(unread), + }, true +} + +// parseInitDBPacket parses packet bytes and returns a Packet if successful. +func parseInitDBPacket(packetBytes []byte) (Packet, error) { + parent, ok := parseSchemaNamePacket(packetBytes) + if !ok { + return nil, trace.BadParameter("failed to parse COM_INIT_DB packet: %v", packetBytes) + } + + return &InitDB{ + schemaNamePacket: parent, + }, nil +} + +// parseCreateDBPacket parses packet bytes and returns a Packet if successful. +func parseCreateDBPacket(packetBytes []byte) (Packet, error) { + parent, ok := parseSchemaNamePacket(packetBytes) + if !ok { + return nil, trace.BadParameter("failed to parse COM_CREATE_DB packet: %v", packetBytes) + } + + return &CreateDB{ + schemaNamePacket: parent, + }, nil +} + +// parseDropDBPacket parses packet bytes and returns a Packet if successful. +func parseDropDBPacket(packetBytes []byte) (Packet, error) { + parent, ok := parseSchemaNamePacket(packetBytes) + if !ok { + return nil, trace.BadParameter("failed to parse COM_DROP_DB packet: %v", packetBytes) + } + + return &DropDB{ + schemaNamePacket: parent, + }, nil +} + +// parseShutDownPacket parses packet bytes and returns a Packet if successful. +func parseShutDownPacket(packetBytes []byte) (Packet, error) { + return &ShutDown{ + packet: packet{bytes: packetBytes}, + }, nil +} + +// parseProcessKillPacket parses packet bytes and returns a Packet if successful. +func parseProcessKillPacket(packetBytes []byte) (Packet, error) { + unread, ok := skipHeaderAndType(packetBytes) + if !ok { + return nil, trace.BadParameter("failed to parse COM_PROCESS_KILL packet: %v", packetBytes) + } + + _, processID, ok := readUint32(unread) + if !ok { + return nil, trace.BadParameter("failed to parse COM_PROCESS_KILL packet: %v", packetBytes) + } + + return &ProcessKill{ + packet: packet{bytes: packetBytes}, + processID: processID, + }, nil +} + +// parseDebugPacket parses packet bytes and returns a Packet if successful. +func parseDebugPacket(packetBytes []byte) (Packet, error) { + return &Debug{ + packet: packet{bytes: packetBytes}, + }, nil +} + +// parseRefreshPacket parses packet bytes and returns a Packet if successful. +func parseRefreshPacket(packetBytes []byte) (Packet, error) { + unread, ok := skipHeaderAndType(packetBytes) + if !ok { + return nil, trace.BadParameter("failed to parse COM_REFRESH packet: %v", packetBytes) + } + + _, subcommandByte, ok := readByte(unread) + if !ok { + return nil, trace.BadParameter("failed to parse COM_REFRESH packet: %v", packetBytes) + } + + var subcommand string + switch subcommandByte { + case 0x01: + subcommand = "REFRESH_GRANT" + case 0x02: + subcommand = "REFRESH_LOG" + case 0x04: + subcommand = "REFRESH_TABLES" + case 0x08: + subcommand = "REFRESH_HOSTS" + case 0x10: + subcommand = "REFRESH_STATUS" + case 0x20: + subcommand = "REFRESH_THREADS" + case 0x40: + subcommand = "REFRESH_SLAVE" + case 0x80: + subcommand = "REFRESH_MASTER" + default: + return nil, trace.BadParameter("failed to parse COM_REFRESH packet: %v", packetBytes) + } + + return &Refresh{ + packet: packet{bytes: packetBytes}, + subcommand: subcommand, + }, nil +} diff --git a/lib/srv/db/mysql/protocol/packet.go b/lib/srv/db/mysql/protocol/packet.go index 668e1bdb7b2ab..a83f625a46d28 100644 --- a/lib/srv/db/mysql/protocol/packet.go +++ b/lib/srv/db/mysql/protocol/packet.go @@ -129,9 +129,16 @@ var packetParsersByType = []func([]byte) (Packet, error){ mysql.ERR_HEADER: parseErrorPacket, // Text protocol commands. - mysql.COM_QUERY: parseQueryPacket, - mysql.COM_QUIT: parseQuitPacket, - mysql.COM_CHANGE_USER: parseChangeUserPacket, + mysql.COM_QUERY: parseQueryPacket, + mysql.COM_QUIT: parseQuitPacket, + mysql.COM_CHANGE_USER: parseChangeUserPacket, + mysql.COM_INIT_DB: parseInitDBPacket, + mysql.COM_CREATE_DB: parseCreateDBPacket, + mysql.COM_DROP_DB: parseDropDBPacket, + mysql.COM_SHUTDOWN: parseShutDownPacket, + mysql.COM_PROCESS_KILL: parseProcessKillPacket, + mysql.COM_DEBUG: parseDebugPacket, + mysql.COM_REFRESH: parseRefreshPacket, // Prepared statement commands. mysql.COM_STMT_PREPARE: parseStatementPreparePacket, diff --git a/lib/srv/db/mysql/protocol/packet_test.go b/lib/srv/db/mysql/protocol/packet_test.go index fe9181a959e9b..916349c568530 100644 --- a/lib/srv/db/mysql/protocol/packet_test.go +++ b/lib/srv/db/mysql/protocol/packet_test.go @@ -96,6 +96,86 @@ var ( user: "bob", } + sampleInitDBPacket = &InitDB{ + schemaNamePacket: schemaNamePacket{ + packet: packet{ + bytes: []byte{ + 0x05, 0x00, 0x00, 0x00, // header + 0x02, // type + 0x74, 0x65, 0x73, 0x74, // schema "test" + }, + }, + schemaName: "test", + }, + } + + sampleCreateDBPacket = &CreateDB{ + schemaNamePacket: schemaNamePacket{ + packet: packet{ + bytes: []byte{ + 0x05, 0x00, 0x00, 0x00, // header + 0x05, // type + 0x74, 0x65, 0x73, 0x74, // schema "test" + }, + }, + schemaName: "test", + }, + } + + sampleDropDBPacket = &DropDB{ + schemaNamePacket: schemaNamePacket{ + packet: packet{ + bytes: []byte{ + 0x05, 0x00, 0x00, 0x00, // header + 0x06, // type + 0x74, 0x65, 0x73, 0x74, // schema "test" + }, + }, + schemaName: "test", + }, + } + + sampleShutDownPacket = &ShutDown{ + packet: packet{ + bytes: []byte{ + 0x02, 0x00, 0x00, 0x00, // header + 0x08, // type + 0x00, // optional shutdown type + }, + }, + } + + sampleProcessKillPacket = &ProcessKill{ + packet: packet{ + bytes: []byte{ + 0x05, 0x00, 0x00, 0x00, // header + 0x0c, // type + 0x15, 0x00, 0x00, 0x00, // process ID + }, + }, + processID: 21, + } + + sampleDebugPacket = &Debug{ + packet: packet{ + bytes: []byte{ + 0x01, 0x00, 0x00, 0x00, // header + 0x0d, // type + }, + }, + } + + sampleRefreshPacket = &Refresh{ + packet: packet{ + bytes: []byte{ + 0x02, 0x00, 0x00, 0x00, // header + 0x07, // type + 0x40, // subcommand + }, + }, + subcommand: "REFRESH_SLAVE", + } + sampleStatementPreparePacket = &StatementPreparePacket{ packet: packet{ bytes: []byte{ @@ -289,6 +369,50 @@ func TestParsePacket(t *testing.T) { input: bytes.NewBuffer(sampleChangeUserPacket.Bytes()), expectedPacket: sampleChangeUserPacket, }, + { + name: "COM_CHANGE_USER invalid", + input: bytes.NewBuffer([]byte{ + 0x04, 0x00, 0x00, 0x00, // header + 0x11, // type + 0x62, 0x6f, 0x62, // missing null at the end of the string + }), + expectErrorIs: trace.IsBadParameter, + }, + { + name: "COM_INIT_DB", + input: bytes.NewBuffer(sampleInitDBPacket.Bytes()), + expectedPacket: sampleInitDBPacket, + }, + { + name: "COM_CREATE_DB", + input: bytes.NewBuffer(sampleCreateDBPacket.Bytes()), + expectedPacket: sampleCreateDBPacket, + }, + { + name: "COM_DROP_DB", + input: bytes.NewBuffer(sampleDropDBPacket.Bytes()), + expectedPacket: sampleDropDBPacket, + }, + { + name: "COM_SHUTDOWN", + input: bytes.NewBuffer(sampleShutDownPacket.Bytes()), + expectedPacket: sampleShutDownPacket, + }, + { + name: "COM_PROCESS_KILL", + input: bytes.NewBuffer(sampleProcessKillPacket.Bytes()), + expectedPacket: sampleProcessKillPacket, + }, + { + name: "COM_DEBUG", + input: bytes.NewBuffer(sampleDebugPacket.Bytes()), + expectedPacket: sampleDebugPacket, + }, + { + name: "COM_REFRESH", + input: bytes.NewBuffer(sampleRefreshPacket.Bytes()), + expectedPacket: sampleRefreshPacket, + }, { name: "COM_STMT_PREPARE", input: bytes.NewBuffer(sampleStatementPreparePacket.Bytes()),