storj/satellite/internalpb/inspector.pb.go

515 lines
21 KiB
Go
Raw Normal View History

// Code generated by protoc-gen-gogo. DO NOT EDIT.
// source: inspector.proto
package internalpb
import (
fmt "fmt"
math "math"
proto "github.com/gogo/protobuf/proto"
pb "storj.io/common/pb"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
type ListIrreparableSegmentsRequest struct {
Limit int32 `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`
LastSeenSegmentPath []byte `protobuf:"bytes,2,opt,name=last_seen_segment_path,json=lastSeenSegmentPath,proto3" json:"last_seen_segment_path,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ListIrreparableSegmentsRequest) Reset() { *m = ListIrreparableSegmentsRequest{} }
func (m *ListIrreparableSegmentsRequest) String() string { return proto.CompactTextString(m) }
func (*ListIrreparableSegmentsRequest) ProtoMessage() {}
func (*ListIrreparableSegmentsRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_a07d9034b2dd9d26, []int{0}
}
func (m *ListIrreparableSegmentsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListIrreparableSegmentsRequest.Unmarshal(m, b)
}
func (m *ListIrreparableSegmentsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ListIrreparableSegmentsRequest.Marshal(b, m, deterministic)
}
func (m *ListIrreparableSegmentsRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ListIrreparableSegmentsRequest.Merge(m, src)
}
func (m *ListIrreparableSegmentsRequest) XXX_Size() int {
return xxx_messageInfo_ListIrreparableSegmentsRequest.Size(m)
}
func (m *ListIrreparableSegmentsRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ListIrreparableSegmentsRequest.DiscardUnknown(m)
}
var xxx_messageInfo_ListIrreparableSegmentsRequest proto.InternalMessageInfo
func (m *ListIrreparableSegmentsRequest) GetLimit() int32 {
if m != nil {
return m.Limit
}
return 0
}
func (m *ListIrreparableSegmentsRequest) GetLastSeenSegmentPath() []byte {
if m != nil {
return m.LastSeenSegmentPath
}
return nil
}
type ListIrreparableSegmentsResponse struct {
Segments []*IrreparableSegment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ListIrreparableSegmentsResponse) Reset() { *m = ListIrreparableSegmentsResponse{} }
func (m *ListIrreparableSegmentsResponse) String() string { return proto.CompactTextString(m) }
func (*ListIrreparableSegmentsResponse) ProtoMessage() {}
func (*ListIrreparableSegmentsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_a07d9034b2dd9d26, []int{1}
}
func (m *ListIrreparableSegmentsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListIrreparableSegmentsResponse.Unmarshal(m, b)
}
func (m *ListIrreparableSegmentsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ListIrreparableSegmentsResponse.Marshal(b, m, deterministic)
}
func (m *ListIrreparableSegmentsResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_ListIrreparableSegmentsResponse.Merge(m, src)
}
func (m *ListIrreparableSegmentsResponse) XXX_Size() int {
return xxx_messageInfo_ListIrreparableSegmentsResponse.Size(m)
}
func (m *ListIrreparableSegmentsResponse) XXX_DiscardUnknown() {
xxx_messageInfo_ListIrreparableSegmentsResponse.DiscardUnknown(m)
}
var xxx_messageInfo_ListIrreparableSegmentsResponse proto.InternalMessageInfo
func (m *ListIrreparableSegmentsResponse) GetSegments() []*IrreparableSegment {
if m != nil {
return m.Segments
}
return nil
}
type IrreparableSegment struct {
Path []byte `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
SegmentDetail *pb.Pointer `protobuf:"bytes,2,opt,name=segment_detail,json=segmentDetail,proto3" json:"segment_detail,omitempty"`
LostPieces int32 `protobuf:"varint,3,opt,name=lost_pieces,json=lostPieces,proto3" json:"lost_pieces,omitempty"`
LastRepairAttempt int64 `protobuf:"varint,4,opt,name=last_repair_attempt,json=lastRepairAttempt,proto3" json:"last_repair_attempt,omitempty"`
RepairAttemptCount int64 `protobuf:"varint,5,opt,name=repair_attempt_count,json=repairAttemptCount,proto3" json:"repair_attempt_count,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *IrreparableSegment) Reset() { *m = IrreparableSegment{} }
func (m *IrreparableSegment) String() string { return proto.CompactTextString(m) }
func (*IrreparableSegment) ProtoMessage() {}
func (*IrreparableSegment) Descriptor() ([]byte, []int) {
return fileDescriptor_a07d9034b2dd9d26, []int{2}
}
func (m *IrreparableSegment) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IrreparableSegment.Unmarshal(m, b)
}
func (m *IrreparableSegment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_IrreparableSegment.Marshal(b, m, deterministic)
}
func (m *IrreparableSegment) XXX_Merge(src proto.Message) {
xxx_messageInfo_IrreparableSegment.Merge(m, src)
}
func (m *IrreparableSegment) XXX_Size() int {
return xxx_messageInfo_IrreparableSegment.Size(m)
}
func (m *IrreparableSegment) XXX_DiscardUnknown() {
xxx_messageInfo_IrreparableSegment.DiscardUnknown(m)
}
var xxx_messageInfo_IrreparableSegment proto.InternalMessageInfo
func (m *IrreparableSegment) GetPath() []byte {
if m != nil {
return m.Path
}
return nil
}
func (m *IrreparableSegment) GetSegmentDetail() *pb.Pointer {
if m != nil {
return m.SegmentDetail
}
return nil
}
func (m *IrreparableSegment) GetLostPieces() int32 {
if m != nil {
return m.LostPieces
}
return 0
}
func (m *IrreparableSegment) GetLastRepairAttempt() int64 {
if m != nil {
return m.LastRepairAttempt
}
return 0
}
func (m *IrreparableSegment) GetRepairAttemptCount() int64 {
if m != nil {
return m.RepairAttemptCount
}
return 0
}
type ObjectHealthRequest struct {
EncryptedPath []byte `protobuf:"bytes,1,opt,name=encrypted_path,json=encryptedPath,proto3" json:"encrypted_path,omitempty"`
Bucket []byte `protobuf:"bytes,2,opt,name=bucket,proto3" json:"bucket,omitempty"`
ProjectId []byte `protobuf:"bytes,3,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
StartAfterSegment int64 `protobuf:"varint,4,opt,name=start_after_segment,json=startAfterSegment,proto3" json:"start_after_segment,omitempty"`
EndBeforeSegment int64 `protobuf:"varint,5,opt,name=end_before_segment,json=endBeforeSegment,proto3" json:"end_before_segment,omitempty"`
Limit int32 `protobuf:"varint,6,opt,name=limit,proto3" json:"limit,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ObjectHealthRequest) Reset() { *m = ObjectHealthRequest{} }
func (m *ObjectHealthRequest) String() string { return proto.CompactTextString(m) }
func (*ObjectHealthRequest) ProtoMessage() {}
func (*ObjectHealthRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_a07d9034b2dd9d26, []int{3}
}
func (m *ObjectHealthRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ObjectHealthRequest.Unmarshal(m, b)
}
func (m *ObjectHealthRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ObjectHealthRequest.Marshal(b, m, deterministic)
}
func (m *ObjectHealthRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ObjectHealthRequest.Merge(m, src)
}
func (m *ObjectHealthRequest) XXX_Size() int {
return xxx_messageInfo_ObjectHealthRequest.Size(m)
}
func (m *ObjectHealthRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ObjectHealthRequest.DiscardUnknown(m)
}
var xxx_messageInfo_ObjectHealthRequest proto.InternalMessageInfo
func (m *ObjectHealthRequest) GetEncryptedPath() []byte {
if m != nil {
return m.EncryptedPath
}
return nil
}
func (m *ObjectHealthRequest) GetBucket() []byte {
if m != nil {
return m.Bucket
}
return nil
}
func (m *ObjectHealthRequest) GetProjectId() []byte {
if m != nil {
return m.ProjectId
}
return nil
}
func (m *ObjectHealthRequest) GetStartAfterSegment() int64 {
if m != nil {
return m.StartAfterSegment
}
return 0
}
func (m *ObjectHealthRequest) GetEndBeforeSegment() int64 {
if m != nil {
return m.EndBeforeSegment
}
return 0
}
func (m *ObjectHealthRequest) GetLimit() int32 {
if m != nil {
return m.Limit
}
return 0
}
type ObjectHealthResponse struct {
Segments []*SegmentHealth `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"`
Redundancy *pb.RedundancyScheme `protobuf:"bytes,2,opt,name=redundancy,proto3" json:"redundancy,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ObjectHealthResponse) Reset() { *m = ObjectHealthResponse{} }
func (m *ObjectHealthResponse) String() string { return proto.CompactTextString(m) }
func (*ObjectHealthResponse) ProtoMessage() {}
func (*ObjectHealthResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_a07d9034b2dd9d26, []int{4}
}
func (m *ObjectHealthResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ObjectHealthResponse.Unmarshal(m, b)
}
func (m *ObjectHealthResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ObjectHealthResponse.Marshal(b, m, deterministic)
}
func (m *ObjectHealthResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_ObjectHealthResponse.Merge(m, src)
}
func (m *ObjectHealthResponse) XXX_Size() int {
return xxx_messageInfo_ObjectHealthResponse.Size(m)
}
func (m *ObjectHealthResponse) XXX_DiscardUnknown() {
xxx_messageInfo_ObjectHealthResponse.DiscardUnknown(m)
}
var xxx_messageInfo_ObjectHealthResponse proto.InternalMessageInfo
func (m *ObjectHealthResponse) GetSegments() []*SegmentHealth {
if m != nil {
return m.Segments
}
return nil
}
func (m *ObjectHealthResponse) GetRedundancy() *pb.RedundancyScheme {
if m != nil {
return m.Redundancy
}
return nil
}
type SegmentHealthRequest struct {
Bucket []byte `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"`
EncryptedPath []byte `protobuf:"bytes,2,opt,name=encrypted_path,json=encryptedPath,proto3" json:"encrypted_path,omitempty"`
SegmentIndex int64 `protobuf:"varint,3,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
ProjectId []byte `protobuf:"bytes,4,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SegmentHealthRequest) Reset() { *m = SegmentHealthRequest{} }
func (m *SegmentHealthRequest) String() string { return proto.CompactTextString(m) }
func (*SegmentHealthRequest) ProtoMessage() {}
func (*SegmentHealthRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_a07d9034b2dd9d26, []int{5}
}
func (m *SegmentHealthRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SegmentHealthRequest.Unmarshal(m, b)
}
func (m *SegmentHealthRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SegmentHealthRequest.Marshal(b, m, deterministic)
}
func (m *SegmentHealthRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_SegmentHealthRequest.Merge(m, src)
}
func (m *SegmentHealthRequest) XXX_Size() int {
return xxx_messageInfo_SegmentHealthRequest.Size(m)
}
func (m *SegmentHealthRequest) XXX_DiscardUnknown() {
xxx_messageInfo_SegmentHealthRequest.DiscardUnknown(m)
}
var xxx_messageInfo_SegmentHealthRequest proto.InternalMessageInfo
func (m *SegmentHealthRequest) GetBucket() []byte {
if m != nil {
return m.Bucket
}
return nil
}
func (m *SegmentHealthRequest) GetEncryptedPath() []byte {
if m != nil {
return m.EncryptedPath
}
return nil
}
func (m *SegmentHealthRequest) GetSegmentIndex() int64 {
if m != nil {
return m.SegmentIndex
}
return 0
}
func (m *SegmentHealthRequest) GetProjectId() []byte {
if m != nil {
return m.ProjectId
}
return nil
}
type SegmentHealthResponse struct {
Health *SegmentHealth `protobuf:"bytes,1,opt,name=health,proto3" json:"health,omitempty"`
Redundancy *pb.RedundancyScheme `protobuf:"bytes,2,opt,name=redundancy,proto3" json:"redundancy,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SegmentHealthResponse) Reset() { *m = SegmentHealthResponse{} }
func (m *SegmentHealthResponse) String() string { return proto.CompactTextString(m) }
func (*SegmentHealthResponse) ProtoMessage() {}
func (*SegmentHealthResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_a07d9034b2dd9d26, []int{6}
}
func (m *SegmentHealthResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SegmentHealthResponse.Unmarshal(m, b)
}
func (m *SegmentHealthResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SegmentHealthResponse.Marshal(b, m, deterministic)
}
func (m *SegmentHealthResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_SegmentHealthResponse.Merge(m, src)
}
func (m *SegmentHealthResponse) XXX_Size() int {
return xxx_messageInfo_SegmentHealthResponse.Size(m)
}
func (m *SegmentHealthResponse) XXX_DiscardUnknown() {
xxx_messageInfo_SegmentHealthResponse.DiscardUnknown(m)
}
var xxx_messageInfo_SegmentHealthResponse proto.InternalMessageInfo
func (m *SegmentHealthResponse) GetHealth() *SegmentHealth {
if m != nil {
return m.Health
}
return nil
}
func (m *SegmentHealthResponse) GetRedundancy() *pb.RedundancyScheme {
if m != nil {
return m.Redundancy
}
return nil
}
type SegmentHealth struct {
HealthyIds []NodeID `protobuf:"bytes,1,rep,name=healthy_ids,json=healthyIds,proto3,customtype=NodeID" json:"healthy_ids,omitempty"`
UnhealthyIds []NodeID `protobuf:"bytes,2,rep,name=unhealthy_ids,json=unhealthyIds,proto3,customtype=NodeID" json:"unhealthy_ids,omitempty"`
OfflineIds []NodeID `protobuf:"bytes,3,rep,name=offline_ids,json=offlineIds,proto3,customtype=NodeID" json:"offline_ids,omitempty"`
Segment []byte `protobuf:"bytes,4,opt,name=segment,proto3" json:"segment,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SegmentHealth) Reset() { *m = SegmentHealth{} }
func (m *SegmentHealth) String() string { return proto.CompactTextString(m) }
func (*SegmentHealth) ProtoMessage() {}
func (*SegmentHealth) Descriptor() ([]byte, []int) {
return fileDescriptor_a07d9034b2dd9d26, []int{7}
}
func (m *SegmentHealth) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SegmentHealth.Unmarshal(m, b)
}
func (m *SegmentHealth) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SegmentHealth.Marshal(b, m, deterministic)
}
func (m *SegmentHealth) XXX_Merge(src proto.Message) {
xxx_messageInfo_SegmentHealth.Merge(m, src)
}
func (m *SegmentHealth) XXX_Size() int {
return xxx_messageInfo_SegmentHealth.Size(m)
}
func (m *SegmentHealth) XXX_DiscardUnknown() {
xxx_messageInfo_SegmentHealth.DiscardUnknown(m)
}
var xxx_messageInfo_SegmentHealth proto.InternalMessageInfo
func (m *SegmentHealth) GetSegment() []byte {
if m != nil {
return m.Segment
}
return nil
}
func init() {
proto.RegisterType((*ListIrreparableSegmentsRequest)(nil), "satellite.inspector.ListIrreparableSegmentsRequest")
proto.RegisterType((*ListIrreparableSegmentsResponse)(nil), "satellite.inspector.ListIrreparableSegmentsResponse")
proto.RegisterType((*IrreparableSegment)(nil), "satellite.inspector.IrreparableSegment")
proto.RegisterType((*ObjectHealthRequest)(nil), "satellite.inspector.ObjectHealthRequest")
proto.RegisterType((*ObjectHealthResponse)(nil), "satellite.inspector.ObjectHealthResponse")
proto.RegisterType((*SegmentHealthRequest)(nil), "satellite.inspector.SegmentHealthRequest")
proto.RegisterType((*SegmentHealthResponse)(nil), "satellite.inspector.SegmentHealthResponse")
proto.RegisterType((*SegmentHealth)(nil), "satellite.inspector.SegmentHealth")
}
func init() { proto.RegisterFile("inspector.proto", fileDescriptor_a07d9034b2dd9d26) }
var fileDescriptor_a07d9034b2dd9d26 = []byte{
// 726 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x55, 0xcd, 0x6e, 0xd3, 0x40,
0x10, 0x66, 0x9b, 0x36, 0xc0, 0x24, 0x69, 0x61, 0x1b, 0x4a, 0x14, 0x04, 0x8d, 0x5c, 0x55, 0xa4,
0x14, 0x25, 0x28, 0xe5, 0x02, 0x48, 0x48, 0xfd, 0x39, 0x10, 0x09, 0x41, 0xe5, 0xde, 0xb8, 0x58,
0xfe, 0x99, 0x34, 0x6e, 0x9d, 0x5d, 0xb3, 0xbb, 0x91, 0xe8, 0x9d, 0x07, 0x40, 0xe2, 0xc4, 0x81,
0xb7, 0xe0, 0x69, 0x38, 0x70, 0xe0, 0x00, 0xaf, 0x81, 0xbc, 0x5e, 0xbb, 0xce, 0x4f, 0x51, 0x10,
0xb7, 0xf5, 0x7c, 0xdf, 0xcc, 0xce, 0x7c, 0xdf, 0x64, 0x03, 0x6b, 0x21, 0x93, 0x31, 0xfa, 0x8a,
0x8b, 0x4e, 0x2c, 0xb8, 0xe2, 0x74, 0x5d, 0xba, 0x0a, 0xa3, 0x28, 0x54, 0xd8, 0xc9, 0xa1, 0x26,
0x9c, 0xf2, 0x53, 0x9e, 0x12, 0x9a, 0xc0, 0x78, 0x80, 0xe6, 0xbc, 0x16, 0xf3, 0x90, 0x29, 0x14,
0x81, 0x97, 0x06, 0xac, 0x73, 0x78, 0xf0, 0x3a, 0x94, 0xaa, 0x2f, 0x04, 0xc6, 0xae, 0x70, 0xbd,
0x08, 0x4f, 0xf0, 0x74, 0x84, 0x4c, 0x49, 0x1b, 0xdf, 0x8f, 0x51, 0x2a, 0x5a, 0x87, 0x95, 0x28,
0x1c, 0x85, 0xaa, 0x41, 0x5a, 0xa4, 0xbd, 0x62, 0xa7, 0x1f, 0x74, 0x0f, 0x36, 0x22, 0x57, 0x2a,
0x47, 0x22, 0x32, 0x47, 0xa6, 0x29, 0x4e, 0xec, 0xaa, 0x61, 0x63, 0xa9, 0x45, 0xda, 0x55, 0x7b,
0x3d, 0x41, 0x4f, 0x10, 0x99, 0x29, 0x77, 0xec, 0xaa, 0xa1, 0x35, 0x80, 0xcd, 0x2b, 0x2f, 0x93,
0x31, 0x67, 0x12, 0xe9, 0x21, 0xdc, 0x30, 0xd5, 0x64, 0x83, 0xb4, 0x4a, 0xed, 0x4a, 0xef, 0x61,
0x67, 0xce, 0x80, 0x9d, 0xd9, 0x1a, 0x76, 0x9e, 0x68, 0xfd, 0x22, 0x40, 0x67, 0x09, 0x94, 0xc2,
0xb2, 0xee, 0x90, 0xe8, 0x0e, 0xf5, 0x99, 0x3e, 0x83, 0xd5, 0xac, 0xfb, 0x00, 0x95, 0x1b, 0x46,
0xba, 0xff, 0x4a, 0x8f, 0x76, 0x2e, 0x95, 0x3a, 0x4e, 0x4f, 0x76, 0xcd, 0x30, 0x8f, 0x34, 0x91,
0x6e, 0x42, 0x25, 0xe2, 0x52, 0x39, 0x71, 0x88, 0x3e, 0xca, 0x46, 0x49, 0xcb, 0x03, 0x49, 0xe8,
0x58, 0x47, 0x68, 0x07, 0xb4, 0x0a, 0x4e, 0xd2, 0x48, 0x28, 0x1c, 0x57, 0x29, 0x1c, 0xc5, 0xaa,
0xb1, 0xdc, 0x22, 0xed, 0x92, 0x7d, 0x3b, 0x81, 0x6c, 0x8d, 0xec, 0xa7, 0x00, 0x7d, 0x02, 0xf5,
0x49, 0xaa, 0xe3, 0xf3, 0x31, 0x53, 0x8d, 0x15, 0x9d, 0x40, 0x45, 0x91, 0x7c, 0x98, 0x20, 0xd6,
0x6f, 0x02, 0xeb, 0x6f, 0xbd, 0x33, 0xf4, 0xd5, 0x2b, 0x74, 0x23, 0x35, 0xcc, 0x3c, 0xdb, 0x86,
0x55, 0x64, 0xbe, 0xb8, 0x88, 0x15, 0x06, 0x4e, 0x61, 0xe6, 0x5a, 0x1e, 0x4d, 0xfc, 0xa0, 0x1b,
0x50, 0xf6, 0xc6, 0xfe, 0x39, 0x2a, 0x63, 0x9a, 0xf9, 0xa2, 0xf7, 0x01, 0x62, 0xc1, 0x93, 0xb2,
0x4e, 0x18, 0xe8, 0xc1, 0xaa, 0xf6, 0x4d, 0x13, 0xe9, 0x07, 0xc9, 0x5c, 0x52, 0xb9, 0x42, 0x39,
0xee, 0x40, 0xa1, 0xc8, 0xdc, 0xcf, 0xe6, 0xd2, 0xd0, 0x7e, 0x82, 0x64, 0xba, 0x3f, 0x06, 0x8a,
0x2c, 0x70, 0x3c, 0x1c, 0x70, 0x81, 0x39, 0x3d, 0x9d, 0xea, 0x16, 0xb2, 0xe0, 0x40, 0x03, 0x19,
0x3b, 0xdf, 0xb7, 0x72, 0x61, 0xdf, 0xac, 0xcf, 0x04, 0xea, 0x93, 0x93, 0x9a, 0x85, 0x79, 0x39,
0xb3, 0x30, 0xd6, 0xdc, 0x85, 0x31, 0xe5, 0x4d, 0x76, 0x9e, 0x43, 0x5f, 0x00, 0x08, 0x0c, 0xc6,
0x2c, 0x70, 0x99, 0x7f, 0x61, 0xcc, 0xbf, 0x57, 0x30, 0xdf, 0xce, 0xc1, 0x13, 0x7f, 0x88, 0x23,
0xb4, 0x0b, 0x74, 0xeb, 0x0b, 0x81, 0xfa, 0x64, 0x61, 0x63, 0xc0, 0xa5, 0xb2, 0x64, 0x42, 0xd9,
0x59, 0x63, 0x96, 0xe6, 0x19, 0xb3, 0x05, 0xd9, 0xae, 0x39, 0x21, 0x0b, 0xf0, 0x83, 0xf6, 0xa0,
0x64, 0x57, 0x4d, 0xb0, 0x9f, 0xc4, 0xa6, 0x5c, 0x5a, 0x9e, 0x72, 0xc9, 0xfa, 0x44, 0xe0, 0xce,
0x54, 0x6f, 0x46, 0xb2, 0xe7, 0x50, 0x1e, 0xea, 0x88, 0x6e, 0x6e, 0x31, 0xc1, 0x4c, 0xc6, 0xff,
0xc9, 0xf5, 0x8d, 0x40, 0x6d, 0xa2, 0x2c, 0xdd, 0x85, 0x4a, 0x5a, 0xf8, 0xc2, 0x09, 0x83, 0xd4,
0xc0, 0xea, 0x01, 0x7c, 0xff, 0xb1, 0x59, 0x7e, 0xc3, 0x03, 0xec, 0x1f, 0xd9, 0x60, 0xe0, 0x7e,
0x20, 0x69, 0x17, 0x6a, 0x63, 0x56, 0xa4, 0x2f, 0xcd, 0xd0, 0xab, 0x39, 0x21, 0x49, 0xd8, 0x85,
0x0a, 0x1f, 0x0c, 0xa2, 0x90, 0xa1, 0xa6, 0x97, 0x66, 0xab, 0x1b, 0x38, 0x21, 0x37, 0xe0, 0x7a,
0x71, 0x93, 0xab, 0x76, 0xf6, 0xd9, 0xfb, 0x4a, 0xa0, 0x5e, 0x78, 0x4e, 0xfa, 0x99, 0x44, 0xf4,
0x23, 0x81, 0xbb, 0x57, 0x3c, 0x68, 0x74, 0x6f, 0xae, 0xa8, 0x7f, 0x7f, 0x6b, 0x9b, 0x4f, 0xff,
0x2d, 0x29, 0xf5, 0xb3, 0xf7, 0x93, 0xc0, 0x5a, 0xaa, 0xe7, 0x65, 0x6b, 0x08, 0xd5, 0xe2, 0xcf,
0x85, 0xb6, 0xe7, 0x56, 0x9e, 0xf3, 0x76, 0x34, 0x77, 0x16, 0x60, 0xa6, 0x17, 0x5b, 0xd7, 0xe8,
0x70, 0xda, 0xd0, 0x9d, 0x05, 0x76, 0xc9, 0x5c, 0xf4, 0x68, 0x11, 0x6a, 0x76, 0xd3, 0xc1, 0xf6,
0xbb, 0x2d, 0xa9, 0xb8, 0x38, 0xeb, 0x84, 0xbc, 0xab, 0x0f, 0xdd, 0x3c, 0xbb, 0xab, 0x97, 0x8f,
0xb9, 0x51, 0xec, 0x79, 0x65, 0xfd, 0xb7, 0xb6, 0xf7, 0x27, 0x00, 0x00, 0xff, 0xff, 0xbc, 0x69,
0x35, 0x2a, 0x27, 0x07, 0x00, 0x00,
}