blob: 4ce4cfb7992ec08015a9e1513c117dfbd848d0d8 [file] [log] [blame]
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: test_platform/skylab_test_runner/result.proto
package skylab_test_runner
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
common "go.chromium.org/chromiumos/infra/proto/go/test_platform/common"
math "math"
)
// 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.ProtoPackageIsVersion3 // please upgrade the proto package
// Verdict defines the test case result to be reported.
type Result_Autotest_TestCase_Verdict int32
const (
Result_Autotest_TestCase_VERDICT_UNDEFINED Result_Autotest_TestCase_Verdict = 0
Result_Autotest_TestCase_VERDICT_PASS Result_Autotest_TestCase_Verdict = 1
Result_Autotest_TestCase_VERDICT_FAIL Result_Autotest_TestCase_Verdict = 2
Result_Autotest_TestCase_VERDICT_NO_VERDICT Result_Autotest_TestCase_Verdict = 3
)
var Result_Autotest_TestCase_Verdict_name = map[int32]string{
0: "VERDICT_UNDEFINED",
1: "VERDICT_PASS",
2: "VERDICT_FAIL",
3: "VERDICT_NO_VERDICT",
}
var Result_Autotest_TestCase_Verdict_value = map[string]int32{
"VERDICT_UNDEFINED": 0,
"VERDICT_PASS": 1,
"VERDICT_FAIL": 2,
"VERDICT_NO_VERDICT": 3,
}
func (x Result_Autotest_TestCase_Verdict) String() string {
return proto.EnumName(Result_Autotest_TestCase_Verdict_name, int32(x))
}
func (Result_Autotest_TestCase_Verdict) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_e702ec909b65d32c, []int{0, 0, 0, 0}
}
// Verdict defines the final step status. Eventually may have different
// cases from the test case verdict, e.g. VERDICT_SKIPPED.
type Result_Prejob_Step_Verdict int32
const (
Result_Prejob_Step_VERDICT_UNDEFINED Result_Prejob_Step_Verdict = 0
Result_Prejob_Step_VERDICT_PASS Result_Prejob_Step_Verdict = 1
Result_Prejob_Step_VERDICT_FAIL Result_Prejob_Step_Verdict = 2
)
var Result_Prejob_Step_Verdict_name = map[int32]string{
0: "VERDICT_UNDEFINED",
1: "VERDICT_PASS",
2: "VERDICT_FAIL",
}
var Result_Prejob_Step_Verdict_value = map[string]int32{
"VERDICT_UNDEFINED": 0,
"VERDICT_PASS": 1,
"VERDICT_FAIL": 2,
}
func (x Result_Prejob_Step_Verdict) String() string {
return proto.EnumName(Result_Prejob_Step_Verdict_name, int32(x))
}
func (Result_Prejob_Step_Verdict) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_e702ec909b65d32c, []int{0, 1, 0, 0}
}
// Result defines the output format of skylab_test_runner.
// It contains a summary of test results from a single Swarming task run.
type Result struct {
// Which test harness was used.
//
// Types that are valid to be assigned to Harness:
// *Result_AutotestResult
Harness isResult_Harness `protobuf_oneof:"harness"`
Prejob *Result_Prejob `protobuf:"bytes,2,opt,name=prejob,proto3" json:"prejob,omitempty"`
LogData *common.TaskLogData `protobuf:"bytes,3,opt,name=log_data,json=logData,proto3" json:"log_data,omitempty"`
StateUpdate *Result_StateUpdate `protobuf:"bytes,4,opt,name=state_update,json=stateUpdate,proto3" json:"state_update,omitempty"`
// Set of test results. The string is a UUID used to identify each test, and
// comes from the client.
AutotestResults map[string]*Result_Autotest `protobuf:"bytes,6,rep,name=autotest_results,json=autotestResults,proto3" json:"autotest_results,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Result) Reset() { *m = Result{} }
func (m *Result) String() string { return proto.CompactTextString(m) }
func (*Result) ProtoMessage() {}
func (*Result) Descriptor() ([]byte, []int) {
return fileDescriptor_e702ec909b65d32c, []int{0}
}
func (m *Result) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Result.Unmarshal(m, b)
}
func (m *Result) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Result.Marshal(b, m, deterministic)
}
func (m *Result) XXX_Merge(src proto.Message) {
xxx_messageInfo_Result.Merge(m, src)
}
func (m *Result) XXX_Size() int {
return xxx_messageInfo_Result.Size(m)
}
func (m *Result) XXX_DiscardUnknown() {
xxx_messageInfo_Result.DiscardUnknown(m)
}
var xxx_messageInfo_Result proto.InternalMessageInfo
type isResult_Harness interface {
isResult_Harness()
}
type Result_AutotestResult struct {
AutotestResult *Result_Autotest `protobuf:"bytes,1,opt,name=autotest_result,json=autotestResult,proto3,oneof"`
}
func (*Result_AutotestResult) isResult_Harness() {}
func (m *Result) GetHarness() isResult_Harness {
if m != nil {
return m.Harness
}
return nil
}
func (m *Result) GetAutotestResult() *Result_Autotest {
if x, ok := m.GetHarness().(*Result_AutotestResult); ok {
return x.AutotestResult
}
return nil
}
func (m *Result) GetPrejob() *Result_Prejob {
if m != nil {
return m.Prejob
}
return nil
}
func (m *Result) GetLogData() *common.TaskLogData {
if m != nil {
return m.LogData
}
return nil
}
func (m *Result) GetStateUpdate() *Result_StateUpdate {
if m != nil {
return m.StateUpdate
}
return nil
}
func (m *Result) GetAutotestResults() map[string]*Result_Autotest {
if m != nil {
return m.AutotestResults
}
return nil
}
// XXX_OneofWrappers is for the internal use of the proto package.
func (*Result) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*Result_AutotestResult)(nil),
}
}
// Autotest describes the result summary for the case of autotest harness.
type Result_Autotest struct {
TestCases []*Result_Autotest_TestCase `protobuf:"bytes,1,rep,name=test_cases,json=testCases,proto3" json:"test_cases,omitempty"`
// False if test_cases represents all of the test cases to be run by the
// task. True otherwise (e.g. the task was aborted early).
Incomplete bool `protobuf:"varint,2,opt,name=incomplete,proto3" json:"incomplete,omitempty"`
// Google Storage URL at which to place results
SynchronousLogDataUrl string `protobuf:"bytes,3,opt,name=synchronous_log_data_url,json=synchronousLogDataUrl,proto3" json:"synchronous_log_data_url,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Result_Autotest) Reset() { *m = Result_Autotest{} }
func (m *Result_Autotest) String() string { return proto.CompactTextString(m) }
func (*Result_Autotest) ProtoMessage() {}
func (*Result_Autotest) Descriptor() ([]byte, []int) {
return fileDescriptor_e702ec909b65d32c, []int{0, 0}
}
func (m *Result_Autotest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Result_Autotest.Unmarshal(m, b)
}
func (m *Result_Autotest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Result_Autotest.Marshal(b, m, deterministic)
}
func (m *Result_Autotest) XXX_Merge(src proto.Message) {
xxx_messageInfo_Result_Autotest.Merge(m, src)
}
func (m *Result_Autotest) XXX_Size() int {
return xxx_messageInfo_Result_Autotest.Size(m)
}
func (m *Result_Autotest) XXX_DiscardUnknown() {
xxx_messageInfo_Result_Autotest.DiscardUnknown(m)
}
var xxx_messageInfo_Result_Autotest proto.InternalMessageInfo
func (m *Result_Autotest) GetTestCases() []*Result_Autotest_TestCase {
if m != nil {
return m.TestCases
}
return nil
}
func (m *Result_Autotest) GetIncomplete() bool {
if m != nil {
return m.Incomplete
}
return false
}
func (m *Result_Autotest) GetSynchronousLogDataUrl() string {
if m != nil {
return m.SynchronousLogDataUrl
}
return ""
}
// TestCase describes the result of an individual test case.
// A single control file may correspond to multiple test cases.
type Result_Autotest_TestCase struct {
// Test case name as it appears in status.log.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Verdict Result_Autotest_TestCase_Verdict `protobuf:"varint,2,opt,name=verdict,proto3,enum=test_platform.skylab_test_runner.Result_Autotest_TestCase_Verdict" json:"verdict,omitempty"`
// A one line human readable description of what happened during test
// case execution (e.g. error/warning message). Not intended to be machine
// parseable. There's no guarantee that a given root cause will always
// resolve to the same summary.
HumanReadableSummary string `protobuf:"bytes,3,opt,name=human_readable_summary,json=humanReadableSummary,proto3" json:"human_readable_summary,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Result_Autotest_TestCase) Reset() { *m = Result_Autotest_TestCase{} }
func (m *Result_Autotest_TestCase) String() string { return proto.CompactTextString(m) }
func (*Result_Autotest_TestCase) ProtoMessage() {}
func (*Result_Autotest_TestCase) Descriptor() ([]byte, []int) {
return fileDescriptor_e702ec909b65d32c, []int{0, 0, 0}
}
func (m *Result_Autotest_TestCase) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Result_Autotest_TestCase.Unmarshal(m, b)
}
func (m *Result_Autotest_TestCase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Result_Autotest_TestCase.Marshal(b, m, deterministic)
}
func (m *Result_Autotest_TestCase) XXX_Merge(src proto.Message) {
xxx_messageInfo_Result_Autotest_TestCase.Merge(m, src)
}
func (m *Result_Autotest_TestCase) XXX_Size() int {
return xxx_messageInfo_Result_Autotest_TestCase.Size(m)
}
func (m *Result_Autotest_TestCase) XXX_DiscardUnknown() {
xxx_messageInfo_Result_Autotest_TestCase.DiscardUnknown(m)
}
var xxx_messageInfo_Result_Autotest_TestCase proto.InternalMessageInfo
func (m *Result_Autotest_TestCase) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *Result_Autotest_TestCase) GetVerdict() Result_Autotest_TestCase_Verdict {
if m != nil {
return m.Verdict
}
return Result_Autotest_TestCase_VERDICT_UNDEFINED
}
func (m *Result_Autotest_TestCase) GetHumanReadableSummary() string {
if m != nil {
return m.HumanReadableSummary
}
return ""
}
// Prejob contains all preparatory operations that run before the actual
// test cases.
type Result_Prejob struct {
Step []*Result_Prejob_Step `protobuf:"bytes,1,rep,name=step,proto3" json:"step,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Result_Prejob) Reset() { *m = Result_Prejob{} }
func (m *Result_Prejob) String() string { return proto.CompactTextString(m) }
func (*Result_Prejob) ProtoMessage() {}
func (*Result_Prejob) Descriptor() ([]byte, []int) {
return fileDescriptor_e702ec909b65d32c, []int{0, 1}
}
func (m *Result_Prejob) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Result_Prejob.Unmarshal(m, b)
}
func (m *Result_Prejob) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Result_Prejob.Marshal(b, m, deterministic)
}
func (m *Result_Prejob) XXX_Merge(src proto.Message) {
xxx_messageInfo_Result_Prejob.Merge(m, src)
}
func (m *Result_Prejob) XXX_Size() int {
return xxx_messageInfo_Result_Prejob.Size(m)
}
func (m *Result_Prejob) XXX_DiscardUnknown() {
xxx_messageInfo_Result_Prejob.DiscardUnknown(m)
}
var xxx_messageInfo_Result_Prejob proto.InternalMessageInfo
func (m *Result_Prejob) GetStep() []*Result_Prejob_Step {
if m != nil {
return m.Step
}
return nil
}
// Step describes an individual prejob operation e.g. provision.
type Result_Prejob_Step struct {
// Step name, e.g. as it appears in status.log.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Verdict Result_Prejob_Step_Verdict `protobuf:"varint,2,opt,name=verdict,proto3,enum=test_platform.skylab_test_runner.Result_Prejob_Step_Verdict" json:"verdict,omitempty"`
// A one line human readable description of what happened during step
// execution (e.g. error/warning message). Not intended to be machine
// parseable. There's no guarantee that a given root cause will always
// resolve to the same summary.
HumanReadableSummary string `protobuf:"bytes,3,opt,name=human_readable_summary,json=humanReadableSummary,proto3" json:"human_readable_summary,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Result_Prejob_Step) Reset() { *m = Result_Prejob_Step{} }
func (m *Result_Prejob_Step) String() string { return proto.CompactTextString(m) }
func (*Result_Prejob_Step) ProtoMessage() {}
func (*Result_Prejob_Step) Descriptor() ([]byte, []int) {
return fileDescriptor_e702ec909b65d32c, []int{0, 1, 0}
}
func (m *Result_Prejob_Step) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Result_Prejob_Step.Unmarshal(m, b)
}
func (m *Result_Prejob_Step) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Result_Prejob_Step.Marshal(b, m, deterministic)
}
func (m *Result_Prejob_Step) XXX_Merge(src proto.Message) {
xxx_messageInfo_Result_Prejob_Step.Merge(m, src)
}
func (m *Result_Prejob_Step) XXX_Size() int {
return xxx_messageInfo_Result_Prejob_Step.Size(m)
}
func (m *Result_Prejob_Step) XXX_DiscardUnknown() {
xxx_messageInfo_Result_Prejob_Step.DiscardUnknown(m)
}
var xxx_messageInfo_Result_Prejob_Step proto.InternalMessageInfo
func (m *Result_Prejob_Step) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (m *Result_Prejob_Step) GetVerdict() Result_Prejob_Step_Verdict {
if m != nil {
return m.Verdict
}
return Result_Prejob_Step_VERDICT_UNDEFINED
}
func (m *Result_Prejob_Step) GetHumanReadableSummary() string {
if m != nil {
return m.HumanReadableSummary
}
return ""
}
// StateUpdate contains Skylab state changes that resulted from the test run.
// It is consumed by `skylab_local_state save`.
type Result_StateUpdate struct {
// E.g. "needs_repair", "ready" etc.
DutState string `protobuf:"bytes,1,opt,name=dut_state,json=dutState,proto3" json:"dut_state,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Result_StateUpdate) Reset() { *m = Result_StateUpdate{} }
func (m *Result_StateUpdate) String() string { return proto.CompactTextString(m) }
func (*Result_StateUpdate) ProtoMessage() {}
func (*Result_StateUpdate) Descriptor() ([]byte, []int) {
return fileDescriptor_e702ec909b65d32c, []int{0, 2}
}
func (m *Result_StateUpdate) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Result_StateUpdate.Unmarshal(m, b)
}
func (m *Result_StateUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Result_StateUpdate.Marshal(b, m, deterministic)
}
func (m *Result_StateUpdate) XXX_Merge(src proto.Message) {
xxx_messageInfo_Result_StateUpdate.Merge(m, src)
}
func (m *Result_StateUpdate) XXX_Size() int {
return xxx_messageInfo_Result_StateUpdate.Size(m)
}
func (m *Result_StateUpdate) XXX_DiscardUnknown() {
xxx_messageInfo_Result_StateUpdate.DiscardUnknown(m)
}
var xxx_messageInfo_Result_StateUpdate proto.InternalMessageInfo
func (m *Result_StateUpdate) GetDutState() string {
if m != nil {
return m.DutState
}
return ""
}
func init() {
proto.RegisterEnum("test_platform.skylab_test_runner.Result_Autotest_TestCase_Verdict", Result_Autotest_TestCase_Verdict_name, Result_Autotest_TestCase_Verdict_value)
proto.RegisterEnum("test_platform.skylab_test_runner.Result_Prejob_Step_Verdict", Result_Prejob_Step_Verdict_name, Result_Prejob_Step_Verdict_value)
proto.RegisterType((*Result)(nil), "test_platform.skylab_test_runner.Result")
proto.RegisterMapType((map[string]*Result_Autotest)(nil), "test_platform.skylab_test_runner.Result.AutotestResultsEntry")
proto.RegisterType((*Result_Autotest)(nil), "test_platform.skylab_test_runner.Result.Autotest")
proto.RegisterType((*Result_Autotest_TestCase)(nil), "test_platform.skylab_test_runner.Result.Autotest.TestCase")
proto.RegisterType((*Result_Prejob)(nil), "test_platform.skylab_test_runner.Result.Prejob")
proto.RegisterType((*Result_Prejob_Step)(nil), "test_platform.skylab_test_runner.Result.Prejob.Step")
proto.RegisterType((*Result_StateUpdate)(nil), "test_platform.skylab_test_runner.Result.StateUpdate")
}
func init() {
proto.RegisterFile("test_platform/skylab_test_runner/result.proto", fileDescriptor_e702ec909b65d32c)
}
var fileDescriptor_e702ec909b65d32c = []byte{
// 637 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x95, 0xfd, 0x4a, 0x1b, 0x41,
0x10, 0xc0, 0xcd, 0x87, 0x97, 0xcb, 0xc4, 0xea, 0x75, 0x51, 0x39, 0xae, 0xd0, 0x5a, 0xff, 0x92,
0x42, 0xef, 0xa8, 0x15, 0x5a, 0xc4, 0xfe, 0xa1, 0x26, 0x7e, 0x21, 0x56, 0x36, 0x6a, 0x69, 0x11,
0x8e, 0x4d, 0x6e, 0x4d, 0xd2, 0xdc, 0xdd, 0x1e, 0xfb, 0x21, 0xe4, 0x21, 0x0a, 0x7d, 0xa7, 0x3e,
0x41, 0x5f, 0xa4, 0xcf, 0x50, 0xb2, 0xb7, 0x47, 0xa3, 0x15, 0x34, 0xe2, 0x7f, 0xb3, 0xf3, 0xf1,
0x9b, 0xdb, 0x99, 0x9d, 0x39, 0x78, 0x2b, 0xa9, 0x90, 0x61, 0x16, 0x13, 0x79, 0xc5, 0x78, 0x12,
0x88, 0xe1, 0x28, 0x26, 0x9d, 0x50, 0x2b, 0xb9, 0x4a, 0x53, 0xca, 0x03, 0x4e, 0x85, 0x8a, 0xa5,
0x9f, 0x71, 0x26, 0x19, 0x5a, 0xb9, 0xe1, 0xee, 0xff, 0xef, 0xee, 0xbd, 0xba, 0x09, 0xec, 0xb2,
0x24, 0x61, 0x69, 0x20, 0x89, 0x18, 0xe6, 0x88, 0xd5, 0x1f, 0x0d, 0xb0, 0xb0, 0x66, 0xa2, 0x4b,
0x58, 0x20, 0x4a, 0xb2, 0x3c, 0x5c, 0xab, 0xdc, 0xd2, 0x4a, 0x69, 0xad, 0xb1, 0xfe, 0xce, 0xbf,
0x2f, 0x8f, 0x9f, 0x23, 0xfc, 0x6d, 0x13, 0x7f, 0x30, 0x83, 0xe7, 0x0b, 0x96, 0xa1, 0xef, 0x83,
0x95, 0x71, 0xfa, 0x9d, 0x75, 0xdc, 0xb2, 0x86, 0x06, 0x0f, 0x86, 0x9e, 0xea, 0x30, 0x6c, 0xc2,
0xd1, 0x16, 0xd8, 0x31, 0xeb, 0x85, 0x11, 0x91, 0xc4, 0xad, 0x68, 0xd4, 0xeb, 0x5b, 0xa8, 0xfc,
0x96, 0xfe, 0x19, 0x11, 0xc3, 0x63, 0xd6, 0x6b, 0x12, 0x49, 0x70, 0x2d, 0xce, 0x05, 0xf4, 0x05,
0xe6, 0x84, 0x24, 0x92, 0x86, 0x2a, 0x8b, 0x88, 0xa4, 0x6e, 0x55, 0x13, 0x36, 0x1e, 0xfc, 0x31,
0xed, 0x71, 0xf0, 0xb9, 0x8e, 0xc5, 0x0d, 0xf1, 0xef, 0x80, 0xfa, 0xe0, 0xdc, 0xaa, 0x9e, 0x70,
0xad, 0x95, 0xca, 0x5a, 0x63, 0xfd, 0xd3, 0xd4, 0xe5, 0xcb, 0x8f, 0xa2, 0x95, 0x4a, 0x3e, 0xc2,
0x0b, 0x37, 0x0b, 0x29, 0xbc, 0xdf, 0x15, 0xb0, 0x0b, 0x4f, 0xf4, 0x15, 0x40, 0x83, 0xba, 0x44,
0x50, 0xe1, 0x96, 0x74, 0xc2, 0xcd, 0xa9, 0x13, 0xfa, 0x67, 0x54, 0xc8, 0x5d, 0x22, 0x28, 0xae,
0x4b, 0x23, 0x09, 0xf4, 0x12, 0x60, 0x90, 0x76, 0x59, 0x92, 0xc5, 0x54, 0x52, 0xdd, 0x35, 0x1b,
0x4f, 0x68, 0xd0, 0x07, 0x70, 0xc5, 0x28, 0xed, 0xf6, 0x39, 0x4b, 0x99, 0x12, 0x61, 0xd1, 0x94,
0x50, 0xf1, 0x58, 0x37, 0xa6, 0x8e, 0x97, 0x26, 0xec, 0xa6, 0x13, 0xe7, 0x3c, 0xf6, 0x7e, 0x96,
0xc1, 0x2e, 0x12, 0x22, 0x04, 0xd5, 0x94, 0x24, 0x54, 0x3f, 0xb5, 0x3a, 0xd6, 0x32, 0xba, 0x84,
0xda, 0x35, 0xe5, 0xd1, 0xa0, 0x2b, 0x75, 0xda, 0xf9, 0xf5, 0x9d, 0xc7, 0xdf, 0xc8, 0xbf, 0xc8,
0x49, 0xb8, 0x40, 0xa2, 0x0d, 0x58, 0xee, 0xab, 0x84, 0xa4, 0x21, 0xa7, 0x24, 0x22, 0x9d, 0x98,
0x86, 0x42, 0x25, 0x09, 0xe1, 0x23, 0xf3, 0xd5, 0x8b, 0xda, 0x8a, 0x8d, 0xb1, 0x9d, 0xdb, 0x56,
0x2f, 0xa1, 0x66, 0x48, 0x68, 0x09, 0x9e, 0x5f, 0xb4, 0x70, 0xf3, 0x70, 0xf7, 0x2c, 0x3c, 0x3f,
0x69, 0xb6, 0xf6, 0x0e, 0x4f, 0x5a, 0x4d, 0x67, 0x06, 0x39, 0x30, 0x57, 0xa8, 0x4f, 0xb7, 0xdb,
0x6d, 0xa7, 0x34, 0xa9, 0xd9, 0xdb, 0x3e, 0x3c, 0x76, 0xca, 0x68, 0x19, 0x50, 0xa1, 0x39, 0xf9,
0x1c, 0x1a, 0xd1, 0xa9, 0x78, 0xbf, 0xca, 0x60, 0xe5, 0xef, 0x1c, 0x1d, 0x40, 0x55, 0x48, 0x9a,
0x99, 0x5e, 0x6e, 0x4c, 0x39, 0x26, 0x7e, 0x5b, 0xd2, 0x0c, 0x6b, 0x82, 0xf7, 0xa7, 0x04, 0xd5,
0xf1, 0xf1, 0xce, 0x1a, 0x5f, 0xdc, 0xae, 0xf1, 0xd6, 0x63, 0x32, 0x3d, 0x55, 0x75, 0x9b, 0x4f,
0x51, 0x5d, 0xef, 0x0d, 0x34, 0x26, 0xe6, 0x13, 0xbd, 0x80, 0x7a, 0xa4, 0x64, 0xa8, 0xa7, 0xd4,
0xdc, 0xdd, 0x8e, 0x94, 0xd4, 0x2e, 0x9e, 0x82, 0xc5, 0xbb, 0xc6, 0x0d, 0x39, 0x50, 0x19, 0xd2,
0x91, 0x71, 0x1f, 0x8b, 0x68, 0x1f, 0x66, 0xaf, 0x49, 0xac, 0xa8, 0x59, 0x5c, 0xd3, 0x6f, 0x43,
0x9c, 0xc7, 0x6f, 0x96, 0x3f, 0x96, 0x76, 0xea, 0x50, 0xeb, 0x13, 0x9e, 0x52, 0x21, 0x8e, 0xaa,
0xf6, 0xac, 0x63, 0xe1, 0x67, 0x64, 0x3c, 0x24, 0xc5, 0xca, 0xd8, 0x39, 0xfe, 0x76, 0xd4, 0x63,
0xfe, 0x78, 0x68, 0x92, 0x81, 0x4a, 0x7c, 0xc6, 0x7b, 0x41, 0x71, 0x60, 0x22, 0x18, 0xa4, 0x57,
0x9c, 0x04, 0x7a, 0x73, 0x07, 0x3d, 0x16, 0xdc, 0xf7, 0xb7, 0xe8, 0x58, 0xda, 0xf5, 0xfd, 0xdf,
0x00, 0x00, 0x00, 0xff, 0xff, 0x7d, 0xdc, 0x75, 0x79, 0x58, 0x06, 0x00, 0x00,
}