// Code generated by protoc-gen-go. DO NOT EDIT.
// source: test.proto

package google_cloud_conformance_storage_v1

import (
	fmt "fmt"
	math "math"

	proto "github.com/golang/protobuf/proto"
	timestamp "github.com/golang/protobuf/ptypes/timestamp"
)

// 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

type SigningV4Test_UrlStyle int32

const (
	SigningV4Test_PATH_STYLE           SigningV4Test_UrlStyle = 0
	SigningV4Test_VIRTUAL_HOSTED_STYLE SigningV4Test_UrlStyle = 1
	SigningV4Test_BUCKET_BOUND_DOMAIN  SigningV4Test_UrlStyle = 2
)

var SigningV4Test_UrlStyle_name = map[int32]string{
	0: "PATH_STYLE",
	1: "VIRTUAL_HOSTED_STYLE",
	2: "BUCKET_BOUND_DOMAIN",
}

var SigningV4Test_UrlStyle_value = map[string]int32{
	"PATH_STYLE":           0,
	"VIRTUAL_HOSTED_STYLE": 1,
	"BUCKET_BOUND_DOMAIN":  2,
}

func (x SigningV4Test_UrlStyle) String() string {
	return proto.EnumName(SigningV4Test_UrlStyle_name, int32(x))
}

func (SigningV4Test_UrlStyle) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_c161fcfdc0c3ff1e, []int{1, 0}
}

type TestFile struct {
	SigningV4Tests       []*SigningV4Test    `protobuf:"bytes,1,rep,name=signing_v4_tests,json=signingV4Tests,proto3" json:"signing_v4_tests,omitempty"`
	PostPolicyV4Tests    []*PostPolicyV4Test `protobuf:"bytes,2,rep,name=post_policy_v4_tests,json=postPolicyV4Tests,proto3" json:"post_policy_v4_tests,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *TestFile) Reset()         { *m = TestFile{} }
func (m *TestFile) String() string { return proto.CompactTextString(m) }
func (*TestFile) ProtoMessage()    {}
func (*TestFile) Descriptor() ([]byte, []int) {
	return fileDescriptor_c161fcfdc0c3ff1e, []int{0}
}

func (m *TestFile) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TestFile.Unmarshal(m, b)
}
func (m *TestFile) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TestFile.Marshal(b, m, deterministic)
}
func (m *TestFile) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TestFile.Merge(m, src)
}
func (m *TestFile) XXX_Size() int {
	return xxx_messageInfo_TestFile.Size(m)
}
func (m *TestFile) XXX_DiscardUnknown() {
	xxx_messageInfo_TestFile.DiscardUnknown(m)
}

var xxx_messageInfo_TestFile proto.InternalMessageInfo

func (m *TestFile) GetSigningV4Tests() []*SigningV4Test {
	if m != nil {
		return m.SigningV4Tests
	}
	return nil
}

func (m *TestFile) GetPostPolicyV4Tests() []*PostPolicyV4Test {
	if m != nil {
		return m.PostPolicyV4Tests
	}
	return nil
}

type SigningV4Test struct {
	FileName                 string                 `protobuf:"bytes,1,opt,name=fileName,proto3" json:"fileName,omitempty"`
	Description              string                 `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	Bucket                   string                 `protobuf:"bytes,3,opt,name=bucket,proto3" json:"bucket,omitempty"`
	Object                   string                 `protobuf:"bytes,4,opt,name=object,proto3" json:"object,omitempty"`
	Method                   string                 `protobuf:"bytes,5,opt,name=method,proto3" json:"method,omitempty"`
	Expiration               int64                  `protobuf:"varint,6,opt,name=expiration,proto3" json:"expiration,omitempty"`
	Timestamp                *timestamp.Timestamp   `protobuf:"bytes,7,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	ExpectedUrl              string                 `protobuf:"bytes,8,opt,name=expectedUrl,proto3" json:"expectedUrl,omitempty"`
	Headers                  map[string]string      `protobuf:"bytes,9,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	QueryParameters          map[string]string      `protobuf:"bytes,10,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Scheme                   string                 `protobuf:"bytes,11,opt,name=scheme,proto3" json:"scheme,omitempty"`
	UrlStyle                 SigningV4Test_UrlStyle `protobuf:"varint,12,opt,name=urlStyle,proto3,enum=google.cloud.conformance.storage.v1.SigningV4Test_UrlStyle" json:"urlStyle,omitempty"`
	BucketBoundDomain        string                 `protobuf:"bytes,13,opt,name=bucketBoundDomain,proto3" json:"bucketBoundDomain,omitempty"`
	ExpectedCanonicalRequest string                 `protobuf:"bytes,14,opt,name=expectedCanonicalRequest,proto3" json:"expectedCanonicalRequest,omitempty"`
	ExpectedStringToSign     string                 `protobuf:"bytes,15,opt,name=expectedStringToSign,proto3" json:"expectedStringToSign,omitempty"`
	XXX_NoUnkeyedLiteral     struct{}               `json:"-"`
	XXX_unrecognized         []byte                 `json:"-"`
	XXX_sizecache            int32                  `json:"-"`
}

func (m *SigningV4Test) Reset()         { *m = SigningV4Test{} }
func (m *SigningV4Test) String() string { return proto.CompactTextString(m) }
func (*SigningV4Test) ProtoMessage()    {}
func (*SigningV4Test) Descriptor() ([]byte, []int) {
	return fileDescriptor_c161fcfdc0c3ff1e, []int{1}
}

func (m *SigningV4Test) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SigningV4Test.Unmarshal(m, b)
}
func (m *SigningV4Test) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SigningV4Test.Marshal(b, m, deterministic)
}
func (m *SigningV4Test) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SigningV4Test.Merge(m, src)
}
func (m *SigningV4Test) XXX_Size() int {
	return xxx_messageInfo_SigningV4Test.Size(m)
}
func (m *SigningV4Test) XXX_DiscardUnknown() {
	xxx_messageInfo_SigningV4Test.DiscardUnknown(m)
}

var xxx_messageInfo_SigningV4Test proto.InternalMessageInfo

func (m *SigningV4Test) GetFileName() string {
	if m != nil {
		return m.FileName
	}
	return ""
}

func (m *SigningV4Test) GetDescription() string {
	if m != nil {
		return m.Description
	}
	return ""
}

func (m *SigningV4Test) GetBucket() string {
	if m != nil {
		return m.Bucket
	}
	return ""
}

func (m *SigningV4Test) GetObject() string {
	if m != nil {
		return m.Object
	}
	return ""
}

func (m *SigningV4Test) GetMethod() string {
	if m != nil {
		return m.Method
	}
	return ""
}

func (m *SigningV4Test) GetExpiration() int64 {
	if m != nil {
		return m.Expiration
	}
	return 0
}

func (m *SigningV4Test) GetTimestamp() *timestamp.Timestamp {
	if m != nil {
		return m.Timestamp
	}
	return nil
}

func (m *SigningV4Test) GetExpectedUrl() string {
	if m != nil {
		return m.ExpectedUrl
	}
	return ""
}

func (m *SigningV4Test) GetHeaders() map[string]string {
	if m != nil {
		return m.Headers
	}
	return nil
}

func (m *SigningV4Test) GetQueryParameters() map[string]string {
	if m != nil {
		return m.QueryParameters
	}
	return nil
}

func (m *SigningV4Test) GetScheme() string {
	if m != nil {
		return m.Scheme
	}
	return ""
}

func (m *SigningV4Test) GetUrlStyle() SigningV4Test_UrlStyle {
	if m != nil {
		return m.UrlStyle
	}
	return SigningV4Test_PATH_STYLE
}

func (m *SigningV4Test) GetBucketBoundDomain() string {
	if m != nil {
		return m.BucketBoundDomain
	}
	return ""
}

func (m *SigningV4Test) GetExpectedCanonicalRequest() string {
	if m != nil {
		return m.ExpectedCanonicalRequest
	}
	return ""
}

func (m *SigningV4Test) GetExpectedStringToSign() string {
	if m != nil {
		return m.ExpectedStringToSign
	}
	return ""
}

type ConditionalMatches struct {
	Expression           []string `protobuf:"bytes,1,rep,name=expression,proto3" json:"expression,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ConditionalMatches) Reset()         { *m = ConditionalMatches{} }
func (m *ConditionalMatches) String() string { return proto.CompactTextString(m) }
func (*ConditionalMatches) ProtoMessage()    {}
func (*ConditionalMatches) Descriptor() ([]byte, []int) {
	return fileDescriptor_c161fcfdc0c3ff1e, []int{2}
}

func (m *ConditionalMatches) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ConditionalMatches.Unmarshal(m, b)
}
func (m *ConditionalMatches) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ConditionalMatches.Marshal(b, m, deterministic)
}
func (m *ConditionalMatches) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ConditionalMatches.Merge(m, src)
}
func (m *ConditionalMatches) XXX_Size() int {
	return xxx_messageInfo_ConditionalMatches.Size(m)
}
func (m *ConditionalMatches) XXX_DiscardUnknown() {
	xxx_messageInfo_ConditionalMatches.DiscardUnknown(m)
}

var xxx_messageInfo_ConditionalMatches proto.InternalMessageInfo

func (m *ConditionalMatches) GetExpression() []string {
	if m != nil {
		return m.Expression
	}
	return nil
}

type PolicyConditions struct {
	SuccessActionStatus   string                `protobuf:"bytes,1,opt,name=successActionStatus,proto3" json:"successActionStatus,omitempty"`
	SuccessActionRedirect string                `protobuf:"bytes,2,opt,name=successActionRedirect,proto3" json:"successActionRedirect,omitempty"`
	Matches               []*ConditionalMatches `protobuf:"bytes,3,rep,name=matches,proto3" json:"matches,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}              `json:"-"`
	XXX_unrecognized      []byte                `json:"-"`
	XXX_sizecache         int32                 `json:"-"`
}

func (m *PolicyConditions) Reset()         { *m = PolicyConditions{} }
func (m *PolicyConditions) String() string { return proto.CompactTextString(m) }
func (*PolicyConditions) ProtoMessage()    {}
func (*PolicyConditions) Descriptor() ([]byte, []int) {
	return fileDescriptor_c161fcfdc0c3ff1e, []int{3}
}

func (m *PolicyConditions) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PolicyConditions.Unmarshal(m, b)
}
func (m *PolicyConditions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PolicyConditions.Marshal(b, m, deterministic)
}
func (m *PolicyConditions) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PolicyConditions.Merge(m, src)
}
func (m *PolicyConditions) XXX_Size() int {
	return xxx_messageInfo_PolicyConditions.Size(m)
}
func (m *PolicyConditions) XXX_DiscardUnknown() {
	xxx_messageInfo_PolicyConditions.DiscardUnknown(m)
}

var xxx_messageInfo_PolicyConditions proto.InternalMessageInfo

func (m *PolicyConditions) GetSuccessActionStatus() string {
	if m != nil {
		return m.SuccessActionStatus
	}
	return ""
}

func (m *PolicyConditions) GetSuccessActionRedirect() string {
	if m != nil {
		return m.SuccessActionRedirect
	}
	return ""
}

func (m *PolicyConditions) GetMatches() []*ConditionalMatches {
	if m != nil {
		return m.Matches
	}
	return nil
}

type PolicyInput struct {
	Scheme               string               `protobuf:"bytes,1,opt,name=scheme,proto3" json:"scheme,omitempty"`
	Bucket               string               `protobuf:"bytes,2,opt,name=bucket,proto3" json:"bucket,omitempty"`
	Object               string               `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"`
	Expiration           int64                `protobuf:"varint,4,opt,name=expiration,proto3" json:"expiration,omitempty"`
	Timestamp            *timestamp.Timestamp `protobuf:"bytes,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Headers              map[string]string    `protobuf:"bytes,6,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Conditions           *PolicyConditions    `protobuf:"bytes,7,opt,name=conditions,proto3" json:"conditions,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *PolicyInput) Reset()         { *m = PolicyInput{} }
func (m *PolicyInput) String() string { return proto.CompactTextString(m) }
func (*PolicyInput) ProtoMessage()    {}
func (*PolicyInput) Descriptor() ([]byte, []int) {
	return fileDescriptor_c161fcfdc0c3ff1e, []int{4}
}

func (m *PolicyInput) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PolicyInput.Unmarshal(m, b)
}
func (m *PolicyInput) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PolicyInput.Marshal(b, m, deterministic)
}
func (m *PolicyInput) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PolicyInput.Merge(m, src)
}
func (m *PolicyInput) XXX_Size() int {
	return xxx_messageInfo_PolicyInput.Size(m)
}
func (m *PolicyInput) XXX_DiscardUnknown() {
	xxx_messageInfo_PolicyInput.DiscardUnknown(m)
}

var xxx_messageInfo_PolicyInput proto.InternalMessageInfo

func (m *PolicyInput) GetScheme() string {
	if m != nil {
		return m.Scheme
	}
	return ""
}

func (m *PolicyInput) GetBucket() string {
	if m != nil {
		return m.Bucket
	}
	return ""
}

func (m *PolicyInput) GetObject() string {
	if m != nil {
		return m.Object
	}
	return ""
}

func (m *PolicyInput) GetExpiration() int64 {
	if m != nil {
		return m.Expiration
	}
	return 0
}

func (m *PolicyInput) GetTimestamp() *timestamp.Timestamp {
	if m != nil {
		return m.Timestamp
	}
	return nil
}

func (m *PolicyInput) GetHeaders() map[string]string {
	if m != nil {
		return m.Headers
	}
	return nil
}

func (m *PolicyInput) GetConditions() *PolicyConditions {
	if m != nil {
		return m.Conditions
	}
	return nil
}

type PolicyOutput struct {
	Url                   string            `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	Key                   string            `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
	Fields                map[string]string `protobuf:"bytes,3,rep,name=fields,proto3" json:"fields,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	ExpectedDecodedPolicy string            `protobuf:"bytes,4,opt,name=expectedDecodedPolicy,proto3" json:"expectedDecodedPolicy,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}          `json:"-"`
	XXX_unrecognized      []byte            `json:"-"`
	XXX_sizecache         int32             `json:"-"`
}

func (m *PolicyOutput) Reset()         { *m = PolicyOutput{} }
func (m *PolicyOutput) String() string { return proto.CompactTextString(m) }
func (*PolicyOutput) ProtoMessage()    {}
func (*PolicyOutput) Descriptor() ([]byte, []int) {
	return fileDescriptor_c161fcfdc0c3ff1e, []int{5}
}

func (m *PolicyOutput) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PolicyOutput.Unmarshal(m, b)
}
func (m *PolicyOutput) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PolicyOutput.Marshal(b, m, deterministic)
}
func (m *PolicyOutput) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PolicyOutput.Merge(m, src)
}
func (m *PolicyOutput) XXX_Size() int {
	return xxx_messageInfo_PolicyOutput.Size(m)
}
func (m *PolicyOutput) XXX_DiscardUnknown() {
	xxx_messageInfo_PolicyOutput.DiscardUnknown(m)
}

var xxx_messageInfo_PolicyOutput proto.InternalMessageInfo

func (m *PolicyOutput) GetUrl() string {
	if m != nil {
		return m.Url
	}
	return ""
}

func (m *PolicyOutput) GetKey() string {
	if m != nil {
		return m.Key
	}
	return ""
}

func (m *PolicyOutput) GetFields() map[string]string {
	if m != nil {
		return m.Fields
	}
	return nil
}

func (m *PolicyOutput) GetExpectedDecodedPolicy() string {
	if m != nil {
		return m.ExpectedDecodedPolicy
	}
	return ""
}

type PostPolicyV4Test struct {
	Description          string        `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
	PolicyInput          *PolicyInput  `protobuf:"bytes,2,opt,name=policyInput,proto3" json:"policyInput,omitempty"`
	PolicyOutput         *PolicyOutput `protobuf:"bytes,3,opt,name=policyOutput,proto3" json:"policyOutput,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *PostPolicyV4Test) Reset()         { *m = PostPolicyV4Test{} }
func (m *PostPolicyV4Test) String() string { return proto.CompactTextString(m) }
func (*PostPolicyV4Test) ProtoMessage()    {}
func (*PostPolicyV4Test) Descriptor() ([]byte, []int) {
	return fileDescriptor_c161fcfdc0c3ff1e, []int{6}
}

func (m *PostPolicyV4Test) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PostPolicyV4Test.Unmarshal(m, b)
}
func (m *PostPolicyV4Test) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PostPolicyV4Test.Marshal(b, m, deterministic)
}
func (m *PostPolicyV4Test) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PostPolicyV4Test.Merge(m, src)
}
func (m *PostPolicyV4Test) XXX_Size() int {
	return xxx_messageInfo_PostPolicyV4Test.Size(m)
}
func (m *PostPolicyV4Test) XXX_DiscardUnknown() {
	xxx_messageInfo_PostPolicyV4Test.DiscardUnknown(m)
}

var xxx_messageInfo_PostPolicyV4Test proto.InternalMessageInfo

func (m *PostPolicyV4Test) GetDescription() string {
	if m != nil {
		return m.Description
	}
	return ""
}

func (m *PostPolicyV4Test) GetPolicyInput() *PolicyInput {
	if m != nil {
		return m.PolicyInput
	}
	return nil
}

func (m *PostPolicyV4Test) GetPolicyOutput() *PolicyOutput {
	if m != nil {
		return m.PolicyOutput
	}
	return nil
}

func init() {
	proto.RegisterEnum("google.cloud.conformance.storage.v1.SigningV4Test_UrlStyle", SigningV4Test_UrlStyle_name, SigningV4Test_UrlStyle_value)
	proto.RegisterType((*TestFile)(nil), "google.cloud.conformance.storage.v1.TestFile")
	proto.RegisterType((*SigningV4Test)(nil), "google.cloud.conformance.storage.v1.SigningV4Test")
	proto.RegisterMapType((map[string]string)(nil), "google.cloud.conformance.storage.v1.SigningV4Test.HeadersEntry")
	proto.RegisterMapType((map[string]string)(nil), "google.cloud.conformance.storage.v1.SigningV4Test.QueryParametersEntry")
	proto.RegisterType((*ConditionalMatches)(nil), "google.cloud.conformance.storage.v1.ConditionalMatches")
	proto.RegisterType((*PolicyConditions)(nil), "google.cloud.conformance.storage.v1.PolicyConditions")
	proto.RegisterType((*PolicyInput)(nil), "google.cloud.conformance.storage.v1.PolicyInput")
	proto.RegisterMapType((map[string]string)(nil), "google.cloud.conformance.storage.v1.PolicyInput.HeadersEntry")
	proto.RegisterType((*PolicyOutput)(nil), "google.cloud.conformance.storage.v1.PolicyOutput")
	proto.RegisterMapType((map[string]string)(nil), "google.cloud.conformance.storage.v1.PolicyOutput.FieldsEntry")
	proto.RegisterType((*PostPolicyV4Test)(nil), "google.cloud.conformance.storage.v1.PostPolicyV4Test")
}

func init() { proto.RegisterFile("test.proto", fileDescriptor_c161fcfdc0c3ff1e) }

var fileDescriptor_c161fcfdc0c3ff1e = []byte{
	// 917 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0xef, 0x6e, 0xda, 0x56,
	0x14, 0x9f, 0xa1, 0x21, 0xe4, 0x38, 0x4d, 0xe9, 0x2d, 0xdb, 0x2c, 0x3e, 0x6c, 0x88, 0x7d, 0x18,
	0x93, 0x26, 0xb7, 0x61, 0xa9, 0xd6, 0x65, 0x9a, 0xa6, 0x10, 0xd2, 0x26, 0x5a, 0x93, 0x50, 0x03,
	0x89, 0x2a, 0x4d, 0x42, 0x8e, 0x7d, 0x00, 0xaf, 0xb6, 0xaf, 0xe3, 0x7b, 0x1d, 0x95, 0x67, 0xd9,
	0x1b, 0xec, 0x21, 0xf6, 0x06, 0x93, 0xf6, 0x06, 0x7b, 0x8f, 0x7d, 0x9a, 0xee, 0xbd, 0x36, 0x98,
	0x86, 0x4c, 0x90, 0x7e, 0xe3, 0x9e, 0x73, 0xcf, 0xef, 0xe7, 0xf3, 0xef, 0x77, 0x01, 0xe0, 0xc8,
	0xb8, 0x19, 0xc5, 0x94, 0x53, 0xf2, 0xd5, 0x98, 0xd2, 0xb1, 0x8f, 0xa6, 0xe3, 0xd3, 0xc4, 0x35,
	0x1d, 0x1a, 0x8e, 0x68, 0x1c, 0xd8, 0xa1, 0x83, 0x26, 0xe3, 0x34, 0xb6, 0xc7, 0x68, 0xde, 0xec,
	0xd6, 0xbe, 0x54, 0x97, 0x9e, 0xca, 0x90, 0xab, 0x64, 0xf4, 0x94, 0x7b, 0x01, 0x32, 0x6e, 0x07,
	0x91, 0x42, 0x69, 0xfc, 0xad, 0x41, 0xb9, 0x8f, 0x8c, 0xbf, 0xf4, 0x7c, 0x24, 0xbf, 0x42, 0x85,
	0x79, 0xe3, 0xd0, 0x0b, 0xc7, 0xc3, 0x9b, 0xbd, 0xa1, 0xe0, 0x62, 0x86, 0x56, 0x2f, 0x36, 0xf5,
	0x56, 0xcb, 0x5c, 0x81, 0xcd, 0xec, 0xa9, 0xe0, 0x8b, 0x3d, 0x81, 0x68, 0xed, 0xb0, 0xfc, 0x91,
	0x91, 0x11, 0x54, 0x23, 0xca, 0xf8, 0x30, 0xa2, 0xbe, 0xe7, 0x4c, 0xe7, 0x0c, 0x05, 0xc9, 0xf0,
	0x7c, 0x25, 0x86, 0x2e, 0x65, 0xbc, 0x2b, 0xe3, 0x53, 0x92, 0xc7, 0xd1, 0x07, 0x16, 0xd6, 0xf8,
	0x73, 0x13, 0x1e, 0x2e, 0x7c, 0x09, 0xa9, 0x41, 0x79, 0xe4, 0xf9, 0x78, 0x66, 0x07, 0x68, 0x68,
	0x75, 0xad, 0xb9, 0x65, 0xcd, 0xce, 0xa4, 0x0e, 0xba, 0x8b, 0xcc, 0x89, 0xbd, 0x88, 0x7b, 0x34,
	0x34, 0x0a, 0xd2, 0x9d, 0x37, 0x91, 0xcf, 0xa0, 0x74, 0x95, 0x38, 0xef, 0x90, 0x1b, 0x45, 0xe9,
	0x4c, 0x4f, 0xc2, 0x4e, 0xaf, 0x7e, 0x43, 0x87, 0x1b, 0x0f, 0x94, 0x5d, 0x9d, 0x84, 0x3d, 0x40,
	0x3e, 0xa1, 0xae, 0xb1, 0xa1, 0xec, 0xea, 0x44, 0xbe, 0x00, 0xc0, 0xf7, 0x91, 0x17, 0xdb, 0x92,
	0xa8, 0x54, 0xd7, 0x9a, 0x45, 0x2b, 0x67, 0x21, 0x2f, 0x60, 0x6b, 0xd6, 0x1d, 0x63, 0xb3, 0xae,
	0x35, 0xf5, 0x56, 0x2d, 0x2b, 0x4a, 0xd6, 0x3f, 0xb3, 0x9f, 0xdd, 0xb0, 0xe6, 0x97, 0x45, 0x0e,
	0xf8, 0x3e, 0x42, 0x87, 0xa3, 0x3b, 0x88, 0x7d, 0xa3, 0xac, 0x72, 0xc8, 0x99, 0xc8, 0x5b, 0xd8,
	0x9c, 0xa0, 0xed, 0x62, 0xcc, 0x8c, 0x2d, 0x59, 0xee, 0x9f, 0xd7, 0x6f, 0xa8, 0x79, 0xac, 0x10,
	0x8e, 0x42, 0x1e, 0x4f, 0xad, 0x0c, 0x8f, 0xc4, 0x50, 0xb9, 0x4e, 0x30, 0x9e, 0x0e, 0x23, 0x3b,
	0xb6, 0x03, 0xe4, 0x82, 0x03, 0x24, 0xc7, 0xab, 0x7b, 0x70, 0xbc, 0x11, 0x50, 0xdd, 0x19, 0x92,
	0xe2, 0x7a, 0x74, 0xbd, 0x68, 0x15, 0x25, 0x66, 0xce, 0x04, 0x03, 0x34, 0x74, 0x55, 0x62, 0x75,
	0x22, 0x97, 0x50, 0x4e, 0x62, 0xbf, 0xc7, 0xa7, 0x3e, 0x1a, 0xdb, 0x75, 0xad, 0xb9, 0xd3, 0xfa,
	0xf1, 0x1e, 0xdf, 0x30, 0x48, 0x21, 0xac, 0x19, 0x18, 0xf9, 0x16, 0x1e, 0xab, 0xae, 0xb7, 0x69,
	0x12, 0xba, 0x1d, 0x1a, 0xd8, 0x5e, 0x68, 0x3c, 0x94, 0xdc, 0xb7, 0x1d, 0x64, 0x1f, 0x8c, 0xac,
	0xf8, 0x87, 0x76, 0x48, 0x43, 0xcf, 0xb1, 0x7d, 0x0b, 0xaf, 0x13, 0x64, 0xdc, 0xd8, 0x91, 0x41,
	0x77, 0xfa, 0x49, 0x0b, 0xaa, 0x99, 0xaf, 0xc7, 0x63, 0x2f, 0x1c, 0xf7, 0xa9, 0xf8, 0x3a, 0xe3,
	0x91, 0x8c, 0x5b, 0xea, 0xab, 0xed, 0xc3, 0x76, 0xbe, 0x37, 0xa4, 0x02, 0xc5, 0x77, 0x38, 0x4d,
	0x47, 0x5d, 0xfc, 0x24, 0x55, 0xd8, 0xb8, 0xb1, 0xfd, 0x04, 0xd3, 0xf9, 0x56, 0x87, 0xfd, 0xc2,
	0x0b, 0xad, 0xd6, 0x86, 0xea, 0xb2, 0x9a, 0xaf, 0x83, 0xd1, 0x38, 0x85, 0x72, 0x56, 0x33, 0xb2,
	0x03, 0xd0, 0x3d, 0xe8, 0x1f, 0x0f, 0x7b, 0xfd, 0xb7, 0xaf, 0x8f, 0x2a, 0x9f, 0x10, 0x03, 0xaa,
	0x17, 0x27, 0x56, 0x7f, 0x70, 0xf0, 0x7a, 0x78, 0x7c, 0xde, 0xeb, 0x1f, 0x75, 0x52, 0x8f, 0x46,
	0x3e, 0x87, 0x27, 0xed, 0xc1, 0xe1, 0x2f, 0x47, 0xfd, 0x61, 0xfb, 0x7c, 0x70, 0xd6, 0x19, 0x76,
	0xce, 0x4f, 0x0f, 0x4e, 0xce, 0x2a, 0x85, 0xc6, 0x1e, 0x90, 0x43, 0x1a, 0xba, 0x9e, 0xd8, 0x0a,
	0xdb, 0x3f, 0xb5, 0xb9, 0x33, 0x41, 0x96, 0xae, 0x4f, 0x8c, 0x8c, 0x89, 0xf5, 0x11, 0xb2, 0xb4,
	0x65, 0xe5, 0x2c, 0x8d, 0xbf, 0x34, 0xa8, 0x28, 0x21, 0x98, 0x05, 0x33, 0xf2, 0x0c, 0x9e, 0xb0,
	0xc4, 0x71, 0x90, 0xb1, 0x03, 0x47, 0x58, 0x7a, 0xdc, 0xe6, 0x09, 0x4b, 0xb3, 0x5a, 0xe6, 0x22,
	0x7b, 0xf0, 0xe9, 0x82, 0xd9, 0x42, 0xd7, 0x8b, 0xc5, 0x92, 0xab, 0xac, 0x97, 0x3b, 0xc9, 0x1b,
	0xd8, 0x0c, 0xd4, 0x77, 0x1a, 0x45, 0x39, 0xfb, 0xdf, 0xaf, 0x34, 0x77, 0xb7, 0xd3, 0xb4, 0x32,
	0x9c, 0xc6, 0xef, 0x45, 0xd0, 0x55, 0x3e, 0x27, 0x61, 0x94, 0xf0, 0xdc, 0xcc, 0x6b, 0x0b, 0x33,
	0x3f, 0x97, 0xa7, 0xc2, 0x1d, 0xf2, 0x54, 0x5c, 0x90, 0xa7, 0x45, 0x19, 0x7a, 0xf0, 0xff, 0x32,
	0xb4, 0xb1, 0x8e, 0x0c, 0x5d, 0xce, 0x45, 0xa6, 0x24, 0x8b, 0xf0, 0xd3, 0x8a, 0x9a, 0x3e, 0x4b,
	0xf2, 0x0e, 0x89, 0x19, 0x00, 0x38, 0xb3, 0x9e, 0xa6, 0xd2, 0xf8, 0x7c, 0x0d, 0xec, 0xf9, 0x40,
	0x58, 0x39, 0xa0, 0x8f, 0x59, 0x9b, 0xc6, 0xbf, 0x1a, 0x6c, 0x2b, 0xf0, 0xf3, 0x84, 0x8b, 0xf6,
	0x54, 0xa0, 0x98, 0xc4, 0x7e, 0x16, 0x9c, 0xc4, 0x7e, 0x06, 0x57, 0x98, 0xc3, 0x0d, 0xa0, 0x34,
	0xf2, 0xd0, 0x77, 0xb3, 0x21, 0x59, 0xa7, 0x3e, 0x8a, 0xc6, 0x7c, 0x29, 0xe3, 0x55, 0x7d, 0x52,
	0x30, 0x31, 0xb2, 0x99, 0x2c, 0x74, 0xd0, 0xa1, 0x2e, 0xba, 0x2a, 0x24, 0x7d, 0x97, 0x96, 0x3b,
	0x6b, 0x3f, 0x80, 0x9e, 0x03, 0x5b, 0x2b, 0xf9, 0x7f, 0xe4, 0xaa, 0x2d, 0xbe, 0xbb, 0x1f, 0x3e,
	0xa4, 0xda, 0xed, 0x87, 0xd4, 0x02, 0x3d, 0x9a, 0xf7, 0x5a, 0xc2, 0xea, 0xad, 0x67, 0xeb, 0xce,
	0x88, 0x95, 0x07, 0x21, 0x03, 0xd8, 0x8e, 0x72, 0xf5, 0x91, 0xb3, 0xae, 0xb7, 0x76, 0xd7, 0x2e,
	0xac, 0xb5, 0x00, 0xd3, 0xbe, 0x84, 0xaf, 0x1d, 0x1a, 0xac, 0x82, 0xd2, 0xd5, 0xfe, 0x28, 0x7c,
	0xf3, 0x4a, 0xdd, 0x3b, 0x94, 0xf7, 0x7a, 0xa9, 0xef, 0x62, 0xd7, 0x94, 0x7f, 0x48, 0xc4, 0x96,
	0x67, 0x81, 0x57, 0x25, 0xb9, 0x42, 0xdf, 0xfd, 0x17, 0x00, 0x00, 0xff, 0xff, 0x0e, 0xac, 0xde,
	0xde, 0xca, 0x09, 0x00, 0x00,
}
