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

package Spotify

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

type ItemAttributesPartialState_ItemAttributeKind int32

const (
	ItemAttributesPartialState_ITEM_UNKNOWN           ItemAttributesPartialState_ItemAttributeKind = 0
	ItemAttributesPartialState_ITEM_ADDED_BY          ItemAttributesPartialState_ItemAttributeKind = 1
	ItemAttributesPartialState_ITEM_TIMESTAMP         ItemAttributesPartialState_ItemAttributeKind = 2
	ItemAttributesPartialState_ITEM_MESSAGE           ItemAttributesPartialState_ItemAttributeKind = 3
	ItemAttributesPartialState_ITEM_SEEN              ItemAttributesPartialState_ItemAttributeKind = 4
	ItemAttributesPartialState_ITEM_DOWNLOAD_COUNT    ItemAttributesPartialState_ItemAttributeKind = 5
	ItemAttributesPartialState_ITEM_DOWNLOAD_FORMAT   ItemAttributesPartialState_ItemAttributeKind = 6
	ItemAttributesPartialState_ITEM_SEVENDIGITAL_ID   ItemAttributesPartialState_ItemAttributeKind = 7
	ItemAttributesPartialState_ITEM_SEVENDIGITAL_LEFT ItemAttributesPartialState_ItemAttributeKind = 8
	ItemAttributesPartialState_ITEM_SEEN_AT           ItemAttributesPartialState_ItemAttributeKind = 9
	ItemAttributesPartialState_ITEM_PUBLIC            ItemAttributesPartialState_ItemAttributeKind = 10
)

var ItemAttributesPartialState_ItemAttributeKind_name = map[int32]string{
	0:  "ITEM_UNKNOWN",
	1:  "ITEM_ADDED_BY",
	2:  "ITEM_TIMESTAMP",
	3:  "ITEM_MESSAGE",
	4:  "ITEM_SEEN",
	5:  "ITEM_DOWNLOAD_COUNT",
	6:  "ITEM_DOWNLOAD_FORMAT",
	7:  "ITEM_SEVENDIGITAL_ID",
	8:  "ITEM_SEVENDIGITAL_LEFT",
	9:  "ITEM_SEEN_AT",
	10: "ITEM_PUBLIC",
}
var ItemAttributesPartialState_ItemAttributeKind_value = map[string]int32{
	"ITEM_UNKNOWN":           0,
	"ITEM_ADDED_BY":          1,
	"ITEM_TIMESTAMP":         2,
	"ITEM_MESSAGE":           3,
	"ITEM_SEEN":              4,
	"ITEM_DOWNLOAD_COUNT":    5,
	"ITEM_DOWNLOAD_FORMAT":   6,
	"ITEM_SEVENDIGITAL_ID":   7,
	"ITEM_SEVENDIGITAL_LEFT": 8,
	"ITEM_SEEN_AT":           9,
	"ITEM_PUBLIC":            10,
}

func (x ItemAttributesPartialState_ItemAttributeKind) Enum() *ItemAttributesPartialState_ItemAttributeKind {
	p := new(ItemAttributesPartialState_ItemAttributeKind)
	*p = x
	return p
}
func (x ItemAttributesPartialState_ItemAttributeKind) String() string {
	return proto.EnumName(ItemAttributesPartialState_ItemAttributeKind_name, int32(x))
}
func (x *ItemAttributesPartialState_ItemAttributeKind) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(ItemAttributesPartialState_ItemAttributeKind_value, data, "ItemAttributesPartialState_ItemAttributeKind")
	if err != nil {
		return err
	}
	*x = ItemAttributesPartialState_ItemAttributeKind(value)
	return nil
}
func (ItemAttributesPartialState_ItemAttributeKind) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor12, []int{3, 0}
}

type ListAttributesPartialState_ListAttributeKind int32

const (
	ListAttributesPartialState_LIST_UNKNOWN                  ListAttributesPartialState_ListAttributeKind = 0
	ListAttributesPartialState_LIST_NAME                     ListAttributesPartialState_ListAttributeKind = 1
	ListAttributesPartialState_LIST_DESCRIPTION              ListAttributesPartialState_ListAttributeKind = 2
	ListAttributesPartialState_LIST_PICTURE                  ListAttributesPartialState_ListAttributeKind = 3
	ListAttributesPartialState_LIST_COLLABORATIVE            ListAttributesPartialState_ListAttributeKind = 4
	ListAttributesPartialState_LIST_PL3_VERSION              ListAttributesPartialState_ListAttributeKind = 5
	ListAttributesPartialState_LIST_DELETED_BY_OWNER         ListAttributesPartialState_ListAttributeKind = 6
	ListAttributesPartialState_LIST_RESTRICTED_COLLABORATIVE ListAttributesPartialState_ListAttributeKind = 7
)

var ListAttributesPartialState_ListAttributeKind_name = map[int32]string{
	0: "LIST_UNKNOWN",
	1: "LIST_NAME",
	2: "LIST_DESCRIPTION",
	3: "LIST_PICTURE",
	4: "LIST_COLLABORATIVE",
	5: "LIST_PL3_VERSION",
	6: "LIST_DELETED_BY_OWNER",
	7: "LIST_RESTRICTED_COLLABORATIVE",
}
var ListAttributesPartialState_ListAttributeKind_value = map[string]int32{
	"LIST_UNKNOWN":                  0,
	"LIST_NAME":                     1,
	"LIST_DESCRIPTION":              2,
	"LIST_PICTURE":                  3,
	"LIST_COLLABORATIVE":            4,
	"LIST_PL3_VERSION":              5,
	"LIST_DELETED_BY_OWNER":         6,
	"LIST_RESTRICTED_COLLABORATIVE": 7,
}

func (x ListAttributesPartialState_ListAttributeKind) Enum() *ListAttributesPartialState_ListAttributeKind {
	p := new(ListAttributesPartialState_ListAttributeKind)
	*p = x
	return p
}
func (x ListAttributesPartialState_ListAttributeKind) String() string {
	return proto.EnumName(ListAttributesPartialState_ListAttributeKind_name, int32(x))
}
func (x *ListAttributesPartialState_ListAttributeKind) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(ListAttributesPartialState_ListAttributeKind_value, data, "ListAttributesPartialState_ListAttributeKind")
	if err != nil {
		return err
	}
	*x = ListAttributesPartialState_ListAttributeKind(value)
	return nil
}
func (ListAttributesPartialState_ListAttributeKind) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor12, []int{4, 0}
}

type Op_Kind int32

const (
	Op_KIND_UNKNOWN           Op_Kind = 0
	Op_ADD                    Op_Kind = 2
	Op_REM                    Op_Kind = 3
	Op_MOV                    Op_Kind = 4
	Op_UPDATE_ITEM_ATTRIBUTES Op_Kind = 5
	Op_UPDATE_LIST_ATTRIBUTES Op_Kind = 6
)

var Op_Kind_name = map[int32]string{
	0: "KIND_UNKNOWN",
	2: "ADD",
	3: "REM",
	4: "MOV",
	5: "UPDATE_ITEM_ATTRIBUTES",
	6: "UPDATE_LIST_ATTRIBUTES",
}
var Op_Kind_value = map[string]int32{
	"KIND_UNKNOWN": 0,
	"ADD":          2,
	"REM":          3,
	"MOV":          4,
	"UPDATE_ITEM_ATTRIBUTES": 5,
	"UPDATE_LIST_ATTRIBUTES": 6,
}

func (x Op_Kind) Enum() *Op_Kind {
	p := new(Op_Kind)
	*p = x
	return p
}
func (x Op_Kind) String() string {
	return proto.EnumName(Op_Kind_name, int32(x))
}
func (x *Op_Kind) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(Op_Kind_value, data, "Op_Kind")
	if err != nil {
		return err
	}
	*x = Op_Kind(value)
	return nil
}
func (Op_Kind) EnumDescriptor() ([]byte, []int) { return fileDescriptor12, []int{7, 0} }

type Add struct {
	FromIndex        *int32        `protobuf:"varint,1,opt,name=fromIndex" json:"fromIndex,omitempty"`
	Items            []*Item       `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"`
	ListChecksum     *ListChecksum `protobuf:"bytes,3,opt,name=list_checksum,json=listChecksum" json:"list_checksum,omitempty"`
	AddLast          *bool         `protobuf:"varint,4,opt,name=addLast" json:"addLast,omitempty"`
	AddFirst         *bool         `protobuf:"varint,5,opt,name=addFirst" json:"addFirst,omitempty"`
	XXX_unrecognized []byte        `json:"-"`
}

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

func (m *Add) GetFromIndex() int32 {
	if m != nil && m.FromIndex != nil {
		return *m.FromIndex
	}
	return 0
}

func (m *Add) GetItems() []*Item {
	if m != nil {
		return m.Items
	}
	return nil
}

func (m *Add) GetListChecksum() *ListChecksum {
	if m != nil {
		return m.ListChecksum
	}
	return nil
}

func (m *Add) GetAddLast() bool {
	if m != nil && m.AddLast != nil {
		return *m.AddLast
	}
	return false
}

func (m *Add) GetAddFirst() bool {
	if m != nil && m.AddFirst != nil {
		return *m.AddFirst
	}
	return false
}

type Rem struct {
	FromIndex        *int32        `protobuf:"varint,1,opt,name=fromIndex" json:"fromIndex,omitempty"`
	Length           *int32        `protobuf:"varint,2,opt,name=length" json:"length,omitempty"`
	Items            []*Item       `protobuf:"bytes,3,rep,name=items" json:"items,omitempty"`
	ListChecksum     *ListChecksum `protobuf:"bytes,4,opt,name=list_checksum,json=listChecksum" json:"list_checksum,omitempty"`
	ItemsChecksum    *ListChecksum `protobuf:"bytes,5,opt,name=items_checksum,json=itemsChecksum" json:"items_checksum,omitempty"`
	UrisChecksum     *ListChecksum `protobuf:"bytes,6,opt,name=uris_checksum,json=urisChecksum" json:"uris_checksum,omitempty"`
	ItemsAsKey       *bool         `protobuf:"varint,7,opt,name=itemsAsKey" json:"itemsAsKey,omitempty"`
	XXX_unrecognized []byte        `json:"-"`
}

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

func (m *Rem) GetFromIndex() int32 {
	if m != nil && m.FromIndex != nil {
		return *m.FromIndex
	}
	return 0
}

func (m *Rem) GetLength() int32 {
	if m != nil && m.Length != nil {
		return *m.Length
	}
	return 0
}

func (m *Rem) GetItems() []*Item {
	if m != nil {
		return m.Items
	}
	return nil
}

func (m *Rem) GetListChecksum() *ListChecksum {
	if m != nil {
		return m.ListChecksum
	}
	return nil
}

func (m *Rem) GetItemsChecksum() *ListChecksum {
	if m != nil {
		return m.ItemsChecksum
	}
	return nil
}

func (m *Rem) GetUrisChecksum() *ListChecksum {
	if m != nil {
		return m.UrisChecksum
	}
	return nil
}

func (m *Rem) GetItemsAsKey() bool {
	if m != nil && m.ItemsAsKey != nil {
		return *m.ItemsAsKey
	}
	return false
}

type Mov struct {
	FromIndex        *int32        `protobuf:"varint,1,opt,name=fromIndex" json:"fromIndex,omitempty"`
	Length           *int32        `protobuf:"varint,2,opt,name=length" json:"length,omitempty"`
	ToIndex          *int32        `protobuf:"varint,3,opt,name=toIndex" json:"toIndex,omitempty"`
	ListChecksum     *ListChecksum `protobuf:"bytes,4,opt,name=list_checksum,json=listChecksum" json:"list_checksum,omitempty"`
	ItemsChecksum    *ListChecksum `protobuf:"bytes,5,opt,name=items_checksum,json=itemsChecksum" json:"items_checksum,omitempty"`
	UrisChecksum     *ListChecksum `protobuf:"bytes,6,opt,name=uris_checksum,json=urisChecksum" json:"uris_checksum,omitempty"`
	XXX_unrecognized []byte        `json:"-"`
}

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

func (m *Mov) GetFromIndex() int32 {
	if m != nil && m.FromIndex != nil {
		return *m.FromIndex
	}
	return 0
}

func (m *Mov) GetLength() int32 {
	if m != nil && m.Length != nil {
		return *m.Length
	}
	return 0
}

func (m *Mov) GetToIndex() int32 {
	if m != nil && m.ToIndex != nil {
		return *m.ToIndex
	}
	return 0
}

func (m *Mov) GetListChecksum() *ListChecksum {
	if m != nil {
		return m.ListChecksum
	}
	return nil
}

func (m *Mov) GetItemsChecksum() *ListChecksum {
	if m != nil {
		return m.ItemsChecksum
	}
	return nil
}

func (m *Mov) GetUrisChecksum() *ListChecksum {
	if m != nil {
		return m.UrisChecksum
	}
	return nil
}

type ItemAttributesPartialState struct {
	Values           *ItemAttributes                                `protobuf:"bytes,1,opt,name=values" json:"values,omitempty"`
	NoValue          []ItemAttributesPartialState_ItemAttributeKind `protobuf:"varint,2,rep,name=no_value,json=noValue,enum=Spotify.ItemAttributesPartialState_ItemAttributeKind" json:"no_value,omitempty"`
	XXX_unrecognized []byte                                         `json:"-"`
}

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

func (m *ItemAttributesPartialState) GetValues() *ItemAttributes {
	if m != nil {
		return m.Values
	}
	return nil
}

func (m *ItemAttributesPartialState) GetNoValue() []ItemAttributesPartialState_ItemAttributeKind {
	if m != nil {
		return m.NoValue
	}
	return nil
}

type ListAttributesPartialState struct {
	Values           *ListAttributes                                `protobuf:"bytes,1,opt,name=values" json:"values,omitempty"`
	NoValue          []ListAttributesPartialState_ListAttributeKind `protobuf:"varint,2,rep,name=no_value,json=noValue,enum=Spotify.ListAttributesPartialState_ListAttributeKind" json:"no_value,omitempty"`
	XXX_unrecognized []byte                                         `json:"-"`
}

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

func (m *ListAttributesPartialState) GetValues() *ListAttributes {
	if m != nil {
		return m.Values
	}
	return nil
}

func (m *ListAttributesPartialState) GetNoValue() []ListAttributesPartialState_ListAttributeKind {
	if m != nil {
		return m.NoValue
	}
	return nil
}

type UpdateItemAttributes struct {
	Index                 *int32                      `protobuf:"varint,1,opt,name=index" json:"index,omitempty"`
	NewAttributes         *ItemAttributesPartialState `protobuf:"bytes,2,opt,name=new_attributes,json=newAttributes" json:"new_attributes,omitempty"`
	OldAttributes         *ItemAttributesPartialState `protobuf:"bytes,3,opt,name=old_attributes,json=oldAttributes" json:"old_attributes,omitempty"`
	ListChecksum          *ListChecksum               `protobuf:"bytes,4,opt,name=list_checksum,json=listChecksum" json:"list_checksum,omitempty"`
	OldAttributesChecksum *ListChecksum               `protobuf:"bytes,5,opt,name=old_attributes_checksum,json=oldAttributesChecksum" json:"old_attributes_checksum,omitempty"`
	XXX_unrecognized      []byte                      `json:"-"`
}

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

func (m *UpdateItemAttributes) GetIndex() int32 {
	if m != nil && m.Index != nil {
		return *m.Index
	}
	return 0
}

func (m *UpdateItemAttributes) GetNewAttributes() *ItemAttributesPartialState {
	if m != nil {
		return m.NewAttributes
	}
	return nil
}

func (m *UpdateItemAttributes) GetOldAttributes() *ItemAttributesPartialState {
	if m != nil {
		return m.OldAttributes
	}
	return nil
}

func (m *UpdateItemAttributes) GetListChecksum() *ListChecksum {
	if m != nil {
		return m.ListChecksum
	}
	return nil
}

func (m *UpdateItemAttributes) GetOldAttributesChecksum() *ListChecksum {
	if m != nil {
		return m.OldAttributesChecksum
	}
	return nil
}

type UpdateListAttributes struct {
	NewAttributes         *ListAttributesPartialState `protobuf:"bytes,1,opt,name=new_attributes,json=newAttributes" json:"new_attributes,omitempty"`
	OldAttributes         *ListAttributesPartialState `protobuf:"bytes,2,opt,name=old_attributes,json=oldAttributes" json:"old_attributes,omitempty"`
	ListChecksum          *ListChecksum               `protobuf:"bytes,3,opt,name=list_checksum,json=listChecksum" json:"list_checksum,omitempty"`
	OldAttributesChecksum *ListChecksum               `protobuf:"bytes,4,opt,name=old_attributes_checksum,json=oldAttributesChecksum" json:"old_attributes_checksum,omitempty"`
	XXX_unrecognized      []byte                      `json:"-"`
}

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

func (m *UpdateListAttributes) GetNewAttributes() *ListAttributesPartialState {
	if m != nil {
		return m.NewAttributes
	}
	return nil
}

func (m *UpdateListAttributes) GetOldAttributes() *ListAttributesPartialState {
	if m != nil {
		return m.OldAttributes
	}
	return nil
}

func (m *UpdateListAttributes) GetListChecksum() *ListChecksum {
	if m != nil {
		return m.ListChecksum
	}
	return nil
}

func (m *UpdateListAttributes) GetOldAttributesChecksum() *ListChecksum {
	if m != nil {
		return m.OldAttributesChecksum
	}
	return nil
}

type Op struct {
	Kind                 *Op_Kind              `protobuf:"varint,1,opt,name=kind,enum=Spotify.Op_Kind" json:"kind,omitempty"`
	Add                  *Add                  `protobuf:"bytes,2,opt,name=add" json:"add,omitempty"`
	Rem                  *Rem                  `protobuf:"bytes,3,opt,name=rem" json:"rem,omitempty"`
	Mov                  *Mov                  `protobuf:"bytes,4,opt,name=mov" json:"mov,omitempty"`
	UpdateItemAttributes *UpdateItemAttributes `protobuf:"bytes,5,opt,name=update_item_attributes,json=updateItemAttributes" json:"update_item_attributes,omitempty"`
	UpdateListAttributes *UpdateListAttributes `protobuf:"bytes,6,opt,name=update_list_attributes,json=updateListAttributes" json:"update_list_attributes,omitempty"`
	XXX_unrecognized     []byte                `json:"-"`
}

func (m *Op) Reset()                    { *m = Op{} }
func (m *Op) String() string            { return proto.CompactTextString(m) }
func (*Op) ProtoMessage()               {}
func (*Op) Descriptor() ([]byte, []int) { return fileDescriptor12, []int{7} }

func (m *Op) GetKind() Op_Kind {
	if m != nil && m.Kind != nil {
		return *m.Kind
	}
	return Op_KIND_UNKNOWN
}

func (m *Op) GetAdd() *Add {
	if m != nil {
		return m.Add
	}
	return nil
}

func (m *Op) GetRem() *Rem {
	if m != nil {
		return m.Rem
	}
	return nil
}

func (m *Op) GetMov() *Mov {
	if m != nil {
		return m.Mov
	}
	return nil
}

func (m *Op) GetUpdateItemAttributes() *UpdateItemAttributes {
	if m != nil {
		return m.UpdateItemAttributes
	}
	return nil
}

func (m *Op) GetUpdateListAttributes() *UpdateListAttributes {
	if m != nil {
		return m.UpdateListAttributes
	}
	return nil
}

type OpList struct {
	Ops              []*Op  `protobuf:"bytes,1,rep,name=ops" json:"ops,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

func (m *OpList) Reset()                    { *m = OpList{} }
func (m *OpList) String() string            { return proto.CompactTextString(m) }
func (*OpList) ProtoMessage()               {}
func (*OpList) Descriptor() ([]byte, []int) { return fileDescriptor12, []int{8} }

func (m *OpList) GetOps() []*Op {
	if m != nil {
		return m.Ops
	}
	return nil
}

func init() {
	proto.RegisterType((*Add)(nil), "Spotify.Add")
	proto.RegisterType((*Rem)(nil), "Spotify.Rem")
	proto.RegisterType((*Mov)(nil), "Spotify.Mov")
	proto.RegisterType((*ItemAttributesPartialState)(nil), "Spotify.ItemAttributesPartialState")
	proto.RegisterType((*ListAttributesPartialState)(nil), "Spotify.ListAttributesPartialState")
	proto.RegisterType((*UpdateItemAttributes)(nil), "Spotify.UpdateItemAttributes")
	proto.RegisterType((*UpdateListAttributes)(nil), "Spotify.UpdateListAttributes")
	proto.RegisterType((*Op)(nil), "Spotify.Op")
	proto.RegisterType((*OpList)(nil), "Spotify.OpList")
	proto.RegisterEnum("Spotify.ItemAttributesPartialState_ItemAttributeKind", ItemAttributesPartialState_ItemAttributeKind_name, ItemAttributesPartialState_ItemAttributeKind_value)
	proto.RegisterEnum("Spotify.ListAttributesPartialState_ListAttributeKind", ListAttributesPartialState_ListAttributeKind_name, ListAttributesPartialState_ListAttributeKind_value)
	proto.RegisterEnum("Spotify.Op_Kind", Op_Kind_name, Op_Kind_value)
}

func init() { proto.RegisterFile("playlist4ops.proto", fileDescriptor12) }

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