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

package liveline // import "code.justin.tv/discovery/liveline/proto/liveline"

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import 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.ProtoPackageIsVersion2 // please upgrade the proto package

// Possible parameters to sort streams by. Default is CCV.
type SortField int32

const (
	// No specific ordering. Note that this is not same as random.
	SortField_SORTFIELD_UNSET SortField = 0
	// Sort the streams by popularity (CCV)
	SortField_CCV SortField = 1
	// Sort the streams by start time
	SortField_RECENCY SortField = 2
)

var SortField_name = map[int32]string{
	0: "SORTFIELD_UNSET",
	1: "CCV",
	2: "RECENCY",
}
var SortField_value = map[string]int32{
	"SORTFIELD_UNSET": 0,
	"CCV":             1,
	"RECENCY":         2,
}

func (x SortField) String() string {
	return proto.EnumName(SortField_name, int32(x))
}
func (SortField) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{0}
}

// Sorting orders
type SortOrder int32

const (
	// Required by Proto: do not use
	SortOrder_SORTORDER_UNSET SortOrder = 0
	SortOrder_DESC            SortOrder = 1
	SortOrder_ASC             SortOrder = 2
)

var SortOrder_name = map[int32]string{
	0: "SORTORDER_UNSET",
	1: "DESC",
	2: "ASC",
}
var SortOrder_value = map[string]int32{
	"SORTORDER_UNSET": 0,
	"DESC":            1,
	"ASC":             2,
}

func (x SortOrder) String() string {
	return proto.EnumName(SortOrder_name, int32(x))
}
func (SortOrder) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{1}
}

// Filter keys
type FilterKey int32

const (
	// Default if no filter is specified.
	FilterKey_FILTERKEY_UNSET      FilterKey = 0
	FilterKey_CATEGORY_ID          FilterKey = 1
	FilterKey_CATEGORY_NAME        FilterKey = 2
	FilterKey_TAG_IDS_AND          FilterKey = 3
	FilterKey_TAG_NAMES_AND        FilterKey = 4
	FilterKey_BROADCASTER_SOFTWARE FilterKey = 5
	FilterKey_BROADCASTER_PLATFORM FilterKey = 6
	// Disabled for now. Can be enabled if required.
	FilterKey_BROADCASTER_LANGUAGE FilterKey = 7
	// Disabled for now. This can be enabled if required.
	// Using this currently returns empty results.
	FilterKey_USER_REGION            FilterKey = 8
	FilterKey_STREAM_TYPE            FilterKey = 9
	FilterKey_HLS                    FilterKey = 10
	FilterKey_AVC_PROFILE            FilterKey = 11
	FilterKey_MAX_AVC_PROFILE        FilterKey = 12
	FilterKey_MAX_AVC_LEVEL          FilterKey = 13
	FilterKey_MAX_HEIGHT             FilterKey = 14
	FilterKey_RESTRICTION_TYPE       FilterKey = 15
	FilterKey_DIRECTORY_HIDDEN       FilterKey = 16
	FilterKey_CATEGORY_TAG_IDS_AND   FilterKey = 17
	FilterKey_CATEGORY_TAG_NAMES_AND FilterKey = 18
	FilterKey_PLAYSTATION_PLATFORM   FilterKey = 19
)

var FilterKey_name = map[int32]string{
	0:  "FILTERKEY_UNSET",
	1:  "CATEGORY_ID",
	2:  "CATEGORY_NAME",
	3:  "TAG_IDS_AND",
	4:  "TAG_NAMES_AND",
	5:  "BROADCASTER_SOFTWARE",
	6:  "BROADCASTER_PLATFORM",
	7:  "BROADCASTER_LANGUAGE",
	8:  "USER_REGION",
	9:  "STREAM_TYPE",
	10: "HLS",
	11: "AVC_PROFILE",
	12: "MAX_AVC_PROFILE",
	13: "MAX_AVC_LEVEL",
	14: "MAX_HEIGHT",
	15: "RESTRICTION_TYPE",
	16: "DIRECTORY_HIDDEN",
	17: "CATEGORY_TAG_IDS_AND",
	18: "CATEGORY_TAG_NAMES_AND",
	19: "PLAYSTATION_PLATFORM",
}
var FilterKey_value = map[string]int32{
	"FILTERKEY_UNSET":        0,
	"CATEGORY_ID":            1,
	"CATEGORY_NAME":          2,
	"TAG_IDS_AND":            3,
	"TAG_NAMES_AND":          4,
	"BROADCASTER_SOFTWARE":   5,
	"BROADCASTER_PLATFORM":   6,
	"BROADCASTER_LANGUAGE":   7,
	"USER_REGION":            8,
	"STREAM_TYPE":            9,
	"HLS":                    10,
	"AVC_PROFILE":            11,
	"MAX_AVC_PROFILE":        12,
	"MAX_AVC_LEVEL":          13,
	"MAX_HEIGHT":             14,
	"RESTRICTION_TYPE":       15,
	"DIRECTORY_HIDDEN":       16,
	"CATEGORY_TAG_IDS_AND":   17,
	"CATEGORY_TAG_NAMES_AND": 18,
	"PLAYSTATION_PLATFORM":   19,
}

func (x FilterKey) String() string {
	return proto.EnumName(FilterKey_name, int32(x))
}
func (FilterKey) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{2}
}

// Possible keys to group the streams by in StreamSummary query.
type AggregationField int32

const (
	// Default if no filter is specified.
	AggregationField_AGGREGATIONFIELD_UNSET AggregationField = 0
	// Group streams by category id (get top games)
	AggregationField_AGGREGATIONFIELD_CATEGORY_ID AggregationField = 1
)

var AggregationField_name = map[int32]string{
	0: "AGGREGATIONFIELD_UNSET",
	1: "AGGREGATIONFIELD_CATEGORY_ID",
}
var AggregationField_value = map[string]int32{
	"AGGREGATIONFIELD_UNSET":       0,
	"AGGREGATIONFIELD_CATEGORY_ID": 1,
}

func (x AggregationField) String() string {
	return proto.EnumName(AggregationField_name, int32(x))
}
func (AggregationField) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{3}
}

// Possible keys to filter by in the StreamSummary query.
type AggregationFilterField int32

const (
	// Default if no filter is specified.
	AggregationFilterField_AGGREGATIONFILTER_UNSET AggregationFilterField = 0
	// Category tag ids
	AggregationFilterField_AGGREGATIONFILTER_CATEGORY_TAG_IDS AggregationFilterField = 1
	// Category tag names
	AggregationFilterField_AGGREGATIONFILTER_CATEGORY_TAG_NAMES AggregationFilterField = 2
	// Category ID
	AggregationFilterField_AGGREGATIONFILTER_CATEGORY_ID AggregationFilterField = 3
	// Category name
	AggregationFilterField_AGGREGATIONFILTER_CATEGORY_NAME AggregationFilterField = 4
)

var AggregationFilterField_name = map[int32]string{
	0: "AGGREGATIONFILTER_UNSET",
	1: "AGGREGATIONFILTER_CATEGORY_TAG_IDS",
	2: "AGGREGATIONFILTER_CATEGORY_TAG_NAMES",
	3: "AGGREGATIONFILTER_CATEGORY_ID",
	4: "AGGREGATIONFILTER_CATEGORY_NAME",
}
var AggregationFilterField_value = map[string]int32{
	"AGGREGATIONFILTER_UNSET":              0,
	"AGGREGATIONFILTER_CATEGORY_TAG_IDS":   1,
	"AGGREGATIONFILTER_CATEGORY_TAG_NAMES": 2,
	"AGGREGATIONFILTER_CATEGORY_ID":        3,
	"AGGREGATIONFILTER_CATEGORY_NAME":      4,
}

func (x AggregationFilterField) String() string {
	return proto.EnumName(AggregationFilterField_name, int32(x))
}
func (AggregationFilterField) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{4}
}

// Query for GetStreamsByChannelIDs
type StreamsByChannelIDsRequest struct {
	// len(channel_ids) <= 2,000
	ChannelIds           []string  `protobuf:"bytes,1,rep,name=channel_ids,json=channelIds,proto3" json:"channel_ids,omitempty"`
	SortKey              SortField `protobuf:"varint,2,opt,name=sort_key,json=sortKey,proto3,enum=liveline.SortField" json:"sort_key,omitempty"`
	Order                SortOrder `protobuf:"varint,3,opt,name=order,proto3,enum=liveline.SortOrder" json:"order,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *StreamsByChannelIDsRequest) Reset()         { *m = StreamsByChannelIDsRequest{} }
func (m *StreamsByChannelIDsRequest) String() string { return proto.CompactTextString(m) }
func (*StreamsByChannelIDsRequest) ProtoMessage()    {}
func (*StreamsByChannelIDsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{0}
}
func (m *StreamsByChannelIDsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamsByChannelIDsRequest.Unmarshal(m, b)
}
func (m *StreamsByChannelIDsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamsByChannelIDsRequest.Marshal(b, m, deterministic)
}
func (dst *StreamsByChannelIDsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamsByChannelIDsRequest.Merge(dst, src)
}
func (m *StreamsByChannelIDsRequest) XXX_Size() int {
	return xxx_messageInfo_StreamsByChannelIDsRequest.Size(m)
}
func (m *StreamsByChannelIDsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamsByChannelIDsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_StreamsByChannelIDsRequest proto.InternalMessageInfo

func (m *StreamsByChannelIDsRequest) GetChannelIds() []string {
	if m != nil {
		return m.ChannelIds
	}
	return nil
}

func (m *StreamsByChannelIDsRequest) GetSortKey() SortField {
	if m != nil {
		return m.SortKey
	}
	return SortField_SORTFIELD_UNSET
}

func (m *StreamsByChannelIDsRequest) GetOrder() SortOrder {
	if m != nil {
		return m.Order
	}
	return SortOrder_SORTORDER_UNSET
}

// Query for GetStreamsByChannelNames
type StreamsByChannelNamesRequest struct {
	// len(channel_names) <= 2,000
	ChannelNames         []string  `protobuf:"bytes,1,rep,name=channel_names,json=channelNames,proto3" json:"channel_names,omitempty"`
	SortKey              SortField `protobuf:"varint,2,opt,name=sort_key,json=sortKey,proto3,enum=liveline.SortField" json:"sort_key,omitempty"`
	Order                SortOrder `protobuf:"varint,3,opt,name=order,proto3,enum=liveline.SortOrder" json:"order,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *StreamsByChannelNamesRequest) Reset()         { *m = StreamsByChannelNamesRequest{} }
func (m *StreamsByChannelNamesRequest) String() string { return proto.CompactTextString(m) }
func (*StreamsByChannelNamesRequest) ProtoMessage()    {}
func (*StreamsByChannelNamesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{1}
}
func (m *StreamsByChannelNamesRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamsByChannelNamesRequest.Unmarshal(m, b)
}
func (m *StreamsByChannelNamesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamsByChannelNamesRequest.Marshal(b, m, deterministic)
}
func (dst *StreamsByChannelNamesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamsByChannelNamesRequest.Merge(dst, src)
}
func (m *StreamsByChannelNamesRequest) XXX_Size() int {
	return xxx_messageInfo_StreamsByChannelNamesRequest.Size(m)
}
func (m *StreamsByChannelNamesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamsByChannelNamesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_StreamsByChannelNamesRequest proto.InternalMessageInfo

func (m *StreamsByChannelNamesRequest) GetChannelNames() []string {
	if m != nil {
		return m.ChannelNames
	}
	return nil
}

func (m *StreamsByChannelNamesRequest) GetSortKey() SortField {
	if m != nil {
		return m.SortKey
	}
	return SortField_SORTFIELD_UNSET
}

func (m *StreamsByChannelNamesRequest) GetOrder() SortOrder {
	if m != nil {
		return m.Order
	}
	return SortOrder_SORTORDER_UNSET
}

// Query for GetStreamsByBroadcastIDs
type StreamsByBroadcastIDsRequest struct {
	// len(broadcast_ids) <= 2,000
	BroadcastIds         []string  `protobuf:"bytes,1,rep,name=broadcast_ids,json=broadcastIds,proto3" json:"broadcast_ids,omitempty"`
	SortKey              SortField `protobuf:"varint,2,opt,name=sort_key,json=sortKey,proto3,enum=liveline.SortField" json:"sort_key,omitempty"`
	Order                SortOrder `protobuf:"varint,3,opt,name=order,proto3,enum=liveline.SortOrder" json:"order,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *StreamsByBroadcastIDsRequest) Reset()         { *m = StreamsByBroadcastIDsRequest{} }
func (m *StreamsByBroadcastIDsRequest) String() string { return proto.CompactTextString(m) }
func (*StreamsByBroadcastIDsRequest) ProtoMessage()    {}
func (*StreamsByBroadcastIDsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{2}
}
func (m *StreamsByBroadcastIDsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamsByBroadcastIDsRequest.Unmarshal(m, b)
}
func (m *StreamsByBroadcastIDsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamsByBroadcastIDsRequest.Marshal(b, m, deterministic)
}
func (dst *StreamsByBroadcastIDsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamsByBroadcastIDsRequest.Merge(dst, src)
}
func (m *StreamsByBroadcastIDsRequest) XXX_Size() int {
	return xxx_messageInfo_StreamsByBroadcastIDsRequest.Size(m)
}
func (m *StreamsByBroadcastIDsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamsByBroadcastIDsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_StreamsByBroadcastIDsRequest proto.InternalMessageInfo

func (m *StreamsByBroadcastIDsRequest) GetBroadcastIds() []string {
	if m != nil {
		return m.BroadcastIds
	}
	return nil
}

func (m *StreamsByBroadcastIDsRequest) GetSortKey() SortField {
	if m != nil {
		return m.SortKey
	}
	return SortField_SORTFIELD_UNSET
}

func (m *StreamsByBroadcastIDsRequest) GetOrder() SortOrder {
	if m != nil {
		return m.Order
	}
	return SortOrder_SORTORDER_UNSET
}

// Query for GetStreamSummary
type StreamSummaryRequest struct {
	// The filters to apply
	Filters []*AggregationFilter `protobuf:"bytes,1,rep,name=filters,proto3" json:"filters,omitempty"`
	// The metadata property that will used to group streams
	GroupBy              AggregationField `protobuf:"varint,2,opt,name=group_by,json=groupBy,proto3,enum=liveline.AggregationField" json:"group_by,omitempty"`
	PageToken            string           `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	PageSize             int64            `protobuf:"varint,4,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *StreamSummaryRequest) Reset()         { *m = StreamSummaryRequest{} }
func (m *StreamSummaryRequest) String() string { return proto.CompactTextString(m) }
func (*StreamSummaryRequest) ProtoMessage()    {}
func (*StreamSummaryRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{3}
}
func (m *StreamSummaryRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamSummaryRequest.Unmarshal(m, b)
}
func (m *StreamSummaryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamSummaryRequest.Marshal(b, m, deterministic)
}
func (dst *StreamSummaryRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamSummaryRequest.Merge(dst, src)
}
func (m *StreamSummaryRequest) XXX_Size() int {
	return xxx_messageInfo_StreamSummaryRequest.Size(m)
}
func (m *StreamSummaryRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamSummaryRequest.DiscardUnknown(m)
}

var xxx_messageInfo_StreamSummaryRequest proto.InternalMessageInfo

func (m *StreamSummaryRequest) GetFilters() []*AggregationFilter {
	if m != nil {
		return m.Filters
	}
	return nil
}

func (m *StreamSummaryRequest) GetGroupBy() AggregationField {
	if m != nil {
		return m.GroupBy
	}
	return AggregationField_AGGREGATIONFIELD_UNSET
}

func (m *StreamSummaryRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

func (m *StreamSummaryRequest) GetPageSize() int64 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

// The filters that can be applied to StreamSummary query.
// Only the streams that are meet the input criteria are used for aggregation.
type AggregationFilter struct {
	// The metadata field to create the filter on
	FilterKey AggregationFilterField `protobuf:"varint,1,opt,name=filter_key,json=filterKey,proto3,enum=liveline.AggregationFilterField" json:"filter_key,omitempty"`
	// The values of for the filter
	FilterValues         []string `protobuf:"bytes,2,rep,name=filter_values,json=filterValues,proto3" json:"filter_values,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AggregationFilter) Reset()         { *m = AggregationFilter{} }
func (m *AggregationFilter) String() string { return proto.CompactTextString(m) }
func (*AggregationFilter) ProtoMessage()    {}
func (*AggregationFilter) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{4}
}
func (m *AggregationFilter) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AggregationFilter.Unmarshal(m, b)
}
func (m *AggregationFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AggregationFilter.Marshal(b, m, deterministic)
}
func (dst *AggregationFilter) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AggregationFilter.Merge(dst, src)
}
func (m *AggregationFilter) XXX_Size() int {
	return xxx_messageInfo_AggregationFilter.Size(m)
}
func (m *AggregationFilter) XXX_DiscardUnknown() {
	xxx_messageInfo_AggregationFilter.DiscardUnknown(m)
}

var xxx_messageInfo_AggregationFilter proto.InternalMessageInfo

func (m *AggregationFilter) GetFilterKey() AggregationFilterField {
	if m != nil {
		return m.FilterKey
	}
	return AggregationFilterField_AGGREGATIONFILTER_UNSET
}

func (m *AggregationFilter) GetFilterValues() []string {
	if m != nil {
		return m.FilterValues
	}
	return nil
}

// The filters that can be applied to GetFilteredStreamsByChannelIDs or GetFilteredStreams queries.
// In the response only the streams that meet the filter criteria are returned.
type Filter struct {
	// The metadata field to create the filter on
	FilterKey FilterKey `protobuf:"varint,1,opt,name=filter_key,json=filterKey,proto3,enum=liveline.FilterKey" json:"filter_key,omitempty"`
	// The values of for the filter
	FilterValue          []string `protobuf:"bytes,2,rep,name=filter_value,json=filterValue,proto3" json:"filter_value,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Filter) Reset()         { *m = Filter{} }
func (m *Filter) String() string { return proto.CompactTextString(m) }
func (*Filter) ProtoMessage()    {}
func (*Filter) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{5}
}
func (m *Filter) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Filter.Unmarshal(m, b)
}
func (m *Filter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Filter.Marshal(b, m, deterministic)
}
func (dst *Filter) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Filter.Merge(dst, src)
}
func (m *Filter) XXX_Size() int {
	return xxx_messageInfo_Filter.Size(m)
}
func (m *Filter) XXX_DiscardUnknown() {
	xxx_messageInfo_Filter.DiscardUnknown(m)
}

var xxx_messageInfo_Filter proto.InternalMessageInfo

func (m *Filter) GetFilterKey() FilterKey {
	if m != nil {
		return m.FilterKey
	}
	return FilterKey_FILTERKEY_UNSET
}

func (m *Filter) GetFilterValue() []string {
	if m != nil {
		return m.FilterValue
	}
	return nil
}

// Query for GetFilteredStreamsByChannelIDs
type FilteredStreamsByChannelIDsRequest struct {
	ChannelIds           []string  `protobuf:"bytes,1,rep,name=channel_ids,json=channelIds,proto3" json:"channel_ids,omitempty"`
	Filters              []*Filter `protobuf:"bytes,2,rep,name=filters,proto3" json:"filters,omitempty"`
	SortKey              SortField `protobuf:"varint,3,opt,name=sort_key,json=sortKey,proto3,enum=liveline.SortField" json:"sort_key,omitempty"`
	Order                SortOrder `protobuf:"varint,4,opt,name=order,proto3,enum=liveline.SortOrder" json:"order,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *FilteredStreamsByChannelIDsRequest) Reset()         { *m = FilteredStreamsByChannelIDsRequest{} }
func (m *FilteredStreamsByChannelIDsRequest) String() string { return proto.CompactTextString(m) }
func (*FilteredStreamsByChannelIDsRequest) ProtoMessage()    {}
func (*FilteredStreamsByChannelIDsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{6}
}
func (m *FilteredStreamsByChannelIDsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FilteredStreamsByChannelIDsRequest.Unmarshal(m, b)
}
func (m *FilteredStreamsByChannelIDsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FilteredStreamsByChannelIDsRequest.Marshal(b, m, deterministic)
}
func (dst *FilteredStreamsByChannelIDsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FilteredStreamsByChannelIDsRequest.Merge(dst, src)
}
func (m *FilteredStreamsByChannelIDsRequest) XXX_Size() int {
	return xxx_messageInfo_FilteredStreamsByChannelIDsRequest.Size(m)
}
func (m *FilteredStreamsByChannelIDsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_FilteredStreamsByChannelIDsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_FilteredStreamsByChannelIDsRequest proto.InternalMessageInfo

func (m *FilteredStreamsByChannelIDsRequest) GetChannelIds() []string {
	if m != nil {
		return m.ChannelIds
	}
	return nil
}

func (m *FilteredStreamsByChannelIDsRequest) GetFilters() []*Filter {
	if m != nil {
		return m.Filters
	}
	return nil
}

func (m *FilteredStreamsByChannelIDsRequest) GetSortKey() SortField {
	if m != nil {
		return m.SortKey
	}
	return SortField_SORTFIELD_UNSET
}

func (m *FilteredStreamsByChannelIDsRequest) GetOrder() SortOrder {
	if m != nil {
		return m.Order
	}
	return SortOrder_SORTORDER_UNSET
}

// Query for GetFilteredStreams
type FilteredStreamsRequest struct {
	Filters []*Filter `protobuf:"bytes,1,rep,name=filters,proto3" json:"filters,omitempty"`
	// page size must be within [0, 1,000]for GetFilteredStreams
	// page size must be within [0, 10,000]for GetFilteredStreamsLarge
	// if this is 0, will default to 100.
	PageSize             int64     `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	PageToken            string    `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	SortKey              SortField `protobuf:"varint,4,opt,name=sort_key,json=sortKey,proto3,enum=liveline.SortField" json:"sort_key,omitempty"`
	Order                SortOrder `protobuf:"varint,5,opt,name=order,proto3,enum=liveline.SortOrder" json:"order,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *FilteredStreamsRequest) Reset()         { *m = FilteredStreamsRequest{} }
func (m *FilteredStreamsRequest) String() string { return proto.CompactTextString(m) }
func (*FilteredStreamsRequest) ProtoMessage()    {}
func (*FilteredStreamsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{7}
}
func (m *FilteredStreamsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FilteredStreamsRequest.Unmarshal(m, b)
}
func (m *FilteredStreamsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FilteredStreamsRequest.Marshal(b, m, deterministic)
}
func (dst *FilteredStreamsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FilteredStreamsRequest.Merge(dst, src)
}
func (m *FilteredStreamsRequest) XXX_Size() int {
	return xxx_messageInfo_FilteredStreamsRequest.Size(m)
}
func (m *FilteredStreamsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_FilteredStreamsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_FilteredStreamsRequest proto.InternalMessageInfo

func (m *FilteredStreamsRequest) GetFilters() []*Filter {
	if m != nil {
		return m.Filters
	}
	return nil
}

func (m *FilteredStreamsRequest) GetPageSize() int64 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *FilteredStreamsRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

func (m *FilteredStreamsRequest) GetSortKey() SortField {
	if m != nil {
		return m.SortKey
	}
	return SortField_SORTFIELD_UNSET
}

func (m *FilteredStreamsRequest) GetOrder() SortOrder {
	if m != nil {
		return m.Order
	}
	return SortOrder_SORTORDER_UNSET
}

type StreamsResponse struct {
	Streams []*StreamResponse `protobuf:"bytes,1,rep,name=streams,proto3" json:"streams,omitempty"`
	// valid for 1 hour
	PageToken            string   `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StreamsResponse) Reset()         { *m = StreamsResponse{} }
func (m *StreamsResponse) String() string { return proto.CompactTextString(m) }
func (*StreamsResponse) ProtoMessage()    {}
func (*StreamsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{8}
}
func (m *StreamsResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamsResponse.Unmarshal(m, b)
}
func (m *StreamsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamsResponse.Marshal(b, m, deterministic)
}
func (dst *StreamsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamsResponse.Merge(dst, src)
}
func (m *StreamsResponse) XXX_Size() int {
	return xxx_messageInfo_StreamsResponse.Size(m)
}
func (m *StreamsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_StreamsResponse proto.InternalMessageInfo

func (m *StreamsResponse) GetStreams() []*StreamResponse {
	if m != nil {
		return m.Streams
	}
	return nil
}

func (m *StreamsResponse) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

type StreamResponse struct {
	ChannelId    string        `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	ChannelName  string        `protobuf:"bytes,2,opt,name=channel_name,json=channelName,proto3" json:"channel_name,omitempty"`
	BroadcastId  int64         `protobuf:"varint,3,opt,name=broadcast_id,json=broadcastId,proto3" json:"broadcast_id,omitempty"`
	GraffitiData *GraffitiData `protobuf:"bytes,4,opt,name=graffiti_data,json=graffitiData,proto3" json:"graffiti_data,omitempty"`
	ChannelData  *ChannelData  `protobuf:"bytes,5,opt,name=channel_data,json=channelData,proto3" json:"channel_data,omitempty"`
	UsherData    *UsherData    `protobuf:"bytes,6,opt,name=usher_data,json=usherData,proto3" json:"usher_data,omitempty"`
	// Game specific metadata (CSGO, PUBG, Overwatch, Hearthstone, LoL)
	GameMetadata *GameMetadata `protobuf:"bytes,7,opt,name=game_metadata,json=gameMetadata,proto3" json:"game_metadata,omitempty"`
	// Is the streamer a partner/affiliate?
	PartnershipData      *PartnershipData  `protobuf:"bytes,8,opt,name=partnership_data,json=partnershipData,proto3" json:"partnership_data,omitempty"`
	PlaystationData      *PlaystationData  `protobuf:"bytes,9,opt,name=playstation_data,json=playstationData,proto3" json:"playstation_data,omitempty"`
	ViewcountData        *ViewcountData    `protobuf:"bytes,10,opt,name=viewcount_data,json=viewcountData,proto3" json:"viewcount_data,omitempty"`
	GraffitiCategoryData *GraffitiData     `protobuf:"bytes,11,opt,name=graffiti_category_data,json=graffitiCategoryData,proto3" json:"graffiti_category_data,omitempty"`
	UserData             *UserData         `protobuf:"bytes,12,opt,name=user_data,json=userData,proto3" json:"user_data,omitempty"`
	RestrictionsData     *RestrictionsData `protobuf:"bytes,13,opt,name=restrictions_data,json=restrictionsData,proto3" json:"restrictions_data,omitempty"`
	// Because frontend might want to paginate from 5th from last item, instead of last.
	StreamPageToken      string   `protobuf:"bytes,14,opt,name=stream_page_token,json=streamPageToken,proto3" json:"stream_page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StreamResponse) Reset()         { *m = StreamResponse{} }
func (m *StreamResponse) String() string { return proto.CompactTextString(m) }
func (*StreamResponse) ProtoMessage()    {}
func (*StreamResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{9}
}
func (m *StreamResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamResponse.Unmarshal(m, b)
}
func (m *StreamResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamResponse.Marshal(b, m, deterministic)
}
func (dst *StreamResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamResponse.Merge(dst, src)
}
func (m *StreamResponse) XXX_Size() int {
	return xxx_messageInfo_StreamResponse.Size(m)
}
func (m *StreamResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamResponse.DiscardUnknown(m)
}

var xxx_messageInfo_StreamResponse proto.InternalMessageInfo

func (m *StreamResponse) GetChannelId() string {
	if m != nil {
		return m.ChannelId
	}
	return ""
}

func (m *StreamResponse) GetChannelName() string {
	if m != nil {
		return m.ChannelName
	}
	return ""
}

func (m *StreamResponse) GetBroadcastId() int64 {
	if m != nil {
		return m.BroadcastId
	}
	return 0
}

func (m *StreamResponse) GetGraffitiData() *GraffitiData {
	if m != nil {
		return m.GraffitiData
	}
	return nil
}

func (m *StreamResponse) GetChannelData() *ChannelData {
	if m != nil {
		return m.ChannelData
	}
	return nil
}

func (m *StreamResponse) GetUsherData() *UsherData {
	if m != nil {
		return m.UsherData
	}
	return nil
}

func (m *StreamResponse) GetGameMetadata() *GameMetadata {
	if m != nil {
		return m.GameMetadata
	}
	return nil
}

func (m *StreamResponse) GetPartnershipData() *PartnershipData {
	if m != nil {
		return m.PartnershipData
	}
	return nil
}

func (m *StreamResponse) GetPlaystationData() *PlaystationData {
	if m != nil {
		return m.PlaystationData
	}
	return nil
}

func (m *StreamResponse) GetViewcountData() *ViewcountData {
	if m != nil {
		return m.ViewcountData
	}
	return nil
}

func (m *StreamResponse) GetGraffitiCategoryData() *GraffitiData {
	if m != nil {
		return m.GraffitiCategoryData
	}
	return nil
}

func (m *StreamResponse) GetUserData() *UserData {
	if m != nil {
		return m.UserData
	}
	return nil
}

func (m *StreamResponse) GetRestrictionsData() *RestrictionsData {
	if m != nil {
		return m.RestrictionsData
	}
	return nil
}

func (m *StreamResponse) GetStreamPageToken() string {
	if m != nil {
		return m.StreamPageToken
	}
	return ""
}

type ViewcountData struct {
	Viewcount            int64                `protobuf:"varint,1,opt,name=viewcount,proto3" json:"viewcount,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,2,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *ViewcountData) Reset()         { *m = ViewcountData{} }
func (m *ViewcountData) String() string { return proto.CompactTextString(m) }
func (*ViewcountData) ProtoMessage()    {}
func (*ViewcountData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{10}
}
func (m *ViewcountData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ViewcountData.Unmarshal(m, b)
}
func (m *ViewcountData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ViewcountData.Marshal(b, m, deterministic)
}
func (dst *ViewcountData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ViewcountData.Merge(dst, src)
}
func (m *ViewcountData) XXX_Size() int {
	return xxx_messageInfo_ViewcountData.Size(m)
}
func (m *ViewcountData) XXX_DiscardUnknown() {
	xxx_messageInfo_ViewcountData.DiscardUnknown(m)
}

var xxx_messageInfo_ViewcountData proto.InternalMessageInfo

func (m *ViewcountData) GetViewcount() int64 {
	if m != nil {
		return m.Viewcount
	}
	return 0
}

func (m *ViewcountData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type GraffitiData struct {
	Tags                 []*GraffitiTag       `protobuf:"bytes,1,rep,name=tags,proto3" json:"tags,omitempty"`
	ContentId            string               `protobuf:"bytes,2,opt,name=content_id,json=contentId,proto3" json:"content_id,omitempty"`
	ContentType          int64                `protobuf:"varint,3,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,4,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GraffitiData) Reset()         { *m = GraffitiData{} }
func (m *GraffitiData) String() string { return proto.CompactTextString(m) }
func (*GraffitiData) ProtoMessage()    {}
func (*GraffitiData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{11}
}
func (m *GraffitiData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GraffitiData.Unmarshal(m, b)
}
func (m *GraffitiData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GraffitiData.Marshal(b, m, deterministic)
}
func (dst *GraffitiData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GraffitiData.Merge(dst, src)
}
func (m *GraffitiData) XXX_Size() int {
	return xxx_messageInfo_GraffitiData.Size(m)
}
func (m *GraffitiData) XXX_DiscardUnknown() {
	xxx_messageInfo_GraffitiData.DiscardUnknown(m)
}

var xxx_messageInfo_GraffitiData proto.InternalMessageInfo

func (m *GraffitiData) GetTags() []*GraffitiTag {
	if m != nil {
		return m.Tags
	}
	return nil
}

func (m *GraffitiData) GetContentId() string {
	if m != nil {
		return m.ContentId
	}
	return ""
}

func (m *GraffitiData) GetContentType() int64 {
	if m != nil {
		return m.ContentType
	}
	return 0
}

func (m *GraffitiData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type GraffitiTag struct {
	TagId                string               `protobuf:"bytes,1,opt,name=tag_id,json=tagId,proto3" json:"tag_id,omitempty"`
	TagName              string               `protobuf:"bytes,2,opt,name=tag_name,json=tagName,proto3" json:"tag_name,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,4,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *GraffitiTag) Reset()         { *m = GraffitiTag{} }
func (m *GraffitiTag) String() string { return proto.CompactTextString(m) }
func (*GraffitiTag) ProtoMessage()    {}
func (*GraffitiTag) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{12}
}
func (m *GraffitiTag) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GraffitiTag.Unmarshal(m, b)
}
func (m *GraffitiTag) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GraffitiTag.Marshal(b, m, deterministic)
}
func (dst *GraffitiTag) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GraffitiTag.Merge(dst, src)
}
func (m *GraffitiTag) XXX_Size() int {
	return xxx_messageInfo_GraffitiTag.Size(m)
}
func (m *GraffitiTag) XXX_DiscardUnknown() {
	xxx_messageInfo_GraffitiTag.DiscardUnknown(m)
}

var xxx_messageInfo_GraffitiTag proto.InternalMessageInfo

func (m *GraffitiTag) GetTagId() string {
	if m != nil {
		return m.TagId
	}
	return ""
}

func (m *GraffitiTag) GetTagName() string {
	if m != nil {
		return m.TagName
	}
	return ""
}

func (m *GraffitiTag) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type ChannelData struct {
	CategoryId           int32                `protobuf:"varint,1,opt,name=category_id,json=categoryId,proto3" json:"category_id,omitempty"`
	CategoryName         string               `protobuf:"bytes,2,opt,name=category_name,json=categoryName,proto3" json:"category_name,omitempty"`
	DirectoryHidden      bool                 `protobuf:"varint,3,opt,name=directory_hidden,json=directoryHidden,proto3" json:"directory_hidden,omitempty"`
	IsMature             bool                 `protobuf:"varint,4,opt,name=is_mature,json=isMature,proto3" json:"is_mature,omitempty"`
	BroadcasterLanguage  string               `protobuf:"bytes,5,opt,name=broadcaster_language,json=broadcasterLanguage,proto3" json:"broadcaster_language,omitempty"`
	Title                string               `protobuf:"bytes,6,opt,name=title,proto3" json:"title,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,7,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *ChannelData) Reset()         { *m = ChannelData{} }
func (m *ChannelData) String() string { return proto.CompactTextString(m) }
func (*ChannelData) ProtoMessage()    {}
func (*ChannelData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{13}
}
func (m *ChannelData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ChannelData.Unmarshal(m, b)
}
func (m *ChannelData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ChannelData.Marshal(b, m, deterministic)
}
func (dst *ChannelData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ChannelData.Merge(dst, src)
}
func (m *ChannelData) XXX_Size() int {
	return xxx_messageInfo_ChannelData.Size(m)
}
func (m *ChannelData) XXX_DiscardUnknown() {
	xxx_messageInfo_ChannelData.DiscardUnknown(m)
}

var xxx_messageInfo_ChannelData proto.InternalMessageInfo

func (m *ChannelData) GetCategoryId() int32 {
	if m != nil {
		return m.CategoryId
	}
	return 0
}

func (m *ChannelData) GetCategoryName() string {
	if m != nil {
		return m.CategoryName
	}
	return ""
}

func (m *ChannelData) GetDirectoryHidden() bool {
	if m != nil {
		return m.DirectoryHidden
	}
	return false
}

func (m *ChannelData) GetIsMature() bool {
	if m != nil {
		return m.IsMature
	}
	return false
}

func (m *ChannelData) GetBroadcasterLanguage() string {
	if m != nil {
		return m.BroadcasterLanguage
	}
	return ""
}

func (m *ChannelData) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

func (m *ChannelData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type UsherData struct {
	UpTime               int32                `protobuf:"varint,1,opt,name=up_time,json=upTime,proto3" json:"up_time,omitempty"`
	BroadcasterSoftware  string               `protobuf:"bytes,2,opt,name=broadcaster_software,json=broadcasterSoftware,proto3" json:"broadcaster_software,omitempty"`
	Hls                  int32                `protobuf:"varint,3,opt,name=hls,proto3" json:"hls,omitempty"`
	AvcProfile           string               `protobuf:"bytes,4,opt,name=avc_profile,json=avcProfile,proto3" json:"avc_profile,omitempty"`
	AvcLevel             string               `protobuf:"bytes,5,opt,name=avc_level,json=avcLevel,proto3" json:"avc_level,omitempty"`
	VideoHeight          int32                `protobuf:"varint,6,opt,name=video_height,json=videoHeight,proto3" json:"video_height,omitempty"`
	VideoWidth           int32                `protobuf:"varint,7,opt,name=video_width,json=videoWidth,proto3" json:"video_width,omitempty"`
	VideoCodec           string               `protobuf:"bytes,8,opt,name=video_codec,json=videoCodec,proto3" json:"video_codec,omitempty"`
	VideoBitrate         int32                `protobuf:"varint,9,opt,name=video_bitrate,json=videoBitrate,proto3" json:"video_bitrate,omitempty"`
	Fps                  int32                `protobuf:"varint,10,opt,name=fps,proto3" json:"fps,omitempty"`
	Encrypted            int32                `protobuf:"varint,11,opt,name=encrypted,proto3" json:"encrypted,omitempty"`
	BroadcasterPlatform  string               `protobuf:"bytes,12,opt,name=broadcaster_platform,json=broadcasterPlatform,proto3" json:"broadcaster_platform,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,13,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	StreamType           string               `protobuf:"bytes,14,opt,name=stream_type,json=streamType,proto3" json:"stream_type,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *UsherData) Reset()         { *m = UsherData{} }
func (m *UsherData) String() string { return proto.CompactTextString(m) }
func (*UsherData) ProtoMessage()    {}
func (*UsherData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{14}
}
func (m *UsherData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UsherData.Unmarshal(m, b)
}
func (m *UsherData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UsherData.Marshal(b, m, deterministic)
}
func (dst *UsherData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UsherData.Merge(dst, src)
}
func (m *UsherData) XXX_Size() int {
	return xxx_messageInfo_UsherData.Size(m)
}
func (m *UsherData) XXX_DiscardUnknown() {
	xxx_messageInfo_UsherData.DiscardUnknown(m)
}

var xxx_messageInfo_UsherData proto.InternalMessageInfo

func (m *UsherData) GetUpTime() int32 {
	if m != nil {
		return m.UpTime
	}
	return 0
}

func (m *UsherData) GetBroadcasterSoftware() string {
	if m != nil {
		return m.BroadcasterSoftware
	}
	return ""
}

func (m *UsherData) GetHls() int32 {
	if m != nil {
		return m.Hls
	}
	return 0
}

func (m *UsherData) GetAvcProfile() string {
	if m != nil {
		return m.AvcProfile
	}
	return ""
}

func (m *UsherData) GetAvcLevel() string {
	if m != nil {
		return m.AvcLevel
	}
	return ""
}

func (m *UsherData) GetVideoHeight() int32 {
	if m != nil {
		return m.VideoHeight
	}
	return 0
}

func (m *UsherData) GetVideoWidth() int32 {
	if m != nil {
		return m.VideoWidth
	}
	return 0
}

func (m *UsherData) GetVideoCodec() string {
	if m != nil {
		return m.VideoCodec
	}
	return ""
}

func (m *UsherData) GetVideoBitrate() int32 {
	if m != nil {
		return m.VideoBitrate
	}
	return 0
}

func (m *UsherData) GetFps() int32 {
	if m != nil {
		return m.Fps
	}
	return 0
}

func (m *UsherData) GetEncrypted() int32 {
	if m != nil {
		return m.Encrypted
	}
	return 0
}

func (m *UsherData) GetBroadcasterPlatform() string {
	if m != nil {
		return m.BroadcasterPlatform
	}
	return ""
}

func (m *UsherData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

func (m *UsherData) GetStreamType() string {
	if m != nil {
		return m.StreamType
	}
	return ""
}

type GameMetadata struct {
	CsgoData             *CSGOData        `protobuf:"bytes,1,opt,name=csgo_data,json=csgoData,proto3" json:"csgo_data,omitempty"`
	LolData              *LOLData         `protobuf:"bytes,2,opt,name=lol_data,json=lolData,proto3" json:"lol_data,omitempty"`
	PubgData             *PUBGData        `protobuf:"bytes,3,opt,name=pubg_data,json=pubgData,proto3" json:"pubg_data,omitempty"`
	OverwatchData        *OverwatchData   `protobuf:"bytes,4,opt,name=overwatch_data,json=overwatchData,proto3" json:"overwatch_data,omitempty"`
	HearthstoneData      *HearthstoneData `protobuf:"bytes,5,opt,name=hearthstone_data,json=hearthstoneData,proto3" json:"hearthstone_data,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *GameMetadata) Reset()         { *m = GameMetadata{} }
func (m *GameMetadata) String() string { return proto.CompactTextString(m) }
func (*GameMetadata) ProtoMessage()    {}
func (*GameMetadata) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{15}
}
func (m *GameMetadata) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GameMetadata.Unmarshal(m, b)
}
func (m *GameMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GameMetadata.Marshal(b, m, deterministic)
}
func (dst *GameMetadata) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GameMetadata.Merge(dst, src)
}
func (m *GameMetadata) XXX_Size() int {
	return xxx_messageInfo_GameMetadata.Size(m)
}
func (m *GameMetadata) XXX_DiscardUnknown() {
	xxx_messageInfo_GameMetadata.DiscardUnknown(m)
}

var xxx_messageInfo_GameMetadata proto.InternalMessageInfo

func (m *GameMetadata) GetCsgoData() *CSGOData {
	if m != nil {
		return m.CsgoData
	}
	return nil
}

func (m *GameMetadata) GetLolData() *LOLData {
	if m != nil {
		return m.LolData
	}
	return nil
}

func (m *GameMetadata) GetPubgData() *PUBGData {
	if m != nil {
		return m.PubgData
	}
	return nil
}

func (m *GameMetadata) GetOverwatchData() *OverwatchData {
	if m != nil {
		return m.OverwatchData
	}
	return nil
}

func (m *GameMetadata) GetHearthstoneData() *HearthstoneData {
	if m != nil {
		return m.HearthstoneData
	}
	return nil
}

type CSGOData struct {
	Map                  string               `protobuf:"bytes,1,opt,name=map,proto3" json:"map,omitempty"`
	MapName              string               `protobuf:"bytes,2,opt,name=map_name,json=mapName,proto3" json:"map_name,omitempty"`
	MapImg               string               `protobuf:"bytes,3,opt,name=map_img,json=mapImg,proto3" json:"map_img,omitempty"`
	Spectators           int32                `protobuf:"varint,4,opt,name=spectators,proto3" json:"spectators,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,5,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *CSGOData) Reset()         { *m = CSGOData{} }
func (m *CSGOData) String() string { return proto.CompactTextString(m) }
func (*CSGOData) ProtoMessage()    {}
func (*CSGOData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{16}
}
func (m *CSGOData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CSGOData.Unmarshal(m, b)
}
func (m *CSGOData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CSGOData.Marshal(b, m, deterministic)
}
func (dst *CSGOData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CSGOData.Merge(dst, src)
}
func (m *CSGOData) XXX_Size() int {
	return xxx_messageInfo_CSGOData.Size(m)
}
func (m *CSGOData) XXX_DiscardUnknown() {
	xxx_messageInfo_CSGOData.DiscardUnknown(m)
}

var xxx_messageInfo_CSGOData proto.InternalMessageInfo

func (m *CSGOData) GetMap() string {
	if m != nil {
		return m.Map
	}
	return ""
}

func (m *CSGOData) GetMapName() string {
	if m != nil {
		return m.MapName
	}
	return ""
}

func (m *CSGOData) GetMapImg() string {
	if m != nil {
		return m.MapImg
	}
	return ""
}

func (m *CSGOData) GetSpectators() int32 {
	if m != nil {
		return m.Spectators
	}
	return 0
}

func (m *CSGOData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type LOLData struct {
	SummonerId           int32                `protobuf:"varint,1,opt,name=summoner_id,json=summonerId,proto3" json:"summoner_id,omitempty"`
	ChampionId           int32                `protobuf:"varint,2,opt,name=champion_id,json=championId,proto3" json:"champion_id,omitempty"`
	IsConnected          bool                 `protobuf:"varint,3,opt,name=is_connected,json=isConnected,proto3" json:"is_connected,omitempty"`
	SummonerRank         string               `protobuf:"bytes,4,opt,name=summoner_rank,json=summonerRank,proto3" json:"summoner_rank,omitempty"`
	SummonerRankNumeric  int32                `protobuf:"varint,5,opt,name=summoner_rank_numeric,json=summonerRankNumeric,proto3" json:"summoner_rank_numeric,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,6,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *LOLData) Reset()         { *m = LOLData{} }
func (m *LOLData) String() string { return proto.CompactTextString(m) }
func (*LOLData) ProtoMessage()    {}
func (*LOLData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{17}
}
func (m *LOLData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LOLData.Unmarshal(m, b)
}
func (m *LOLData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LOLData.Marshal(b, m, deterministic)
}
func (dst *LOLData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LOLData.Merge(dst, src)
}
func (m *LOLData) XXX_Size() int {
	return xxx_messageInfo_LOLData.Size(m)
}
func (m *LOLData) XXX_DiscardUnknown() {
	xxx_messageInfo_LOLData.DiscardUnknown(m)
}

var xxx_messageInfo_LOLData proto.InternalMessageInfo

func (m *LOLData) GetSummonerId() int32 {
	if m != nil {
		return m.SummonerId
	}
	return 0
}

func (m *LOLData) GetChampionId() int32 {
	if m != nil {
		return m.ChampionId
	}
	return 0
}

func (m *LOLData) GetIsConnected() bool {
	if m != nil {
		return m.IsConnected
	}
	return false
}

func (m *LOLData) GetSummonerRank() string {
	if m != nil {
		return m.SummonerRank
	}
	return ""
}

func (m *LOLData) GetSummonerRankNumeric() int32 {
	if m != nil {
		return m.SummonerRankNumeric
	}
	return 0
}

func (m *LOLData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type PUBGData struct {
	PlayerAliveCount     int32                `protobuf:"varint,1,opt,name=player_alive_count,json=playerAliveCount,proto3" json:"player_alive_count,omitempty"`
	GameMode             string               `protobuf:"bytes,2,opt,name=game_mode,json=gameMode,proto3" json:"game_mode,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,3,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *PUBGData) Reset()         { *m = PUBGData{} }
func (m *PUBGData) String() string { return proto.CompactTextString(m) }
func (*PUBGData) ProtoMessage()    {}
func (*PUBGData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{18}
}
func (m *PUBGData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PUBGData.Unmarshal(m, b)
}
func (m *PUBGData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PUBGData.Marshal(b, m, deterministic)
}
func (dst *PUBGData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PUBGData.Merge(dst, src)
}
func (m *PUBGData) XXX_Size() int {
	return xxx_messageInfo_PUBGData.Size(m)
}
func (m *PUBGData) XXX_DiscardUnknown() {
	xxx_messageInfo_PUBGData.DiscardUnknown(m)
}

var xxx_messageInfo_PUBGData proto.InternalMessageInfo

func (m *PUBGData) GetPlayerAliveCount() int32 {
	if m != nil {
		return m.PlayerAliveCount
	}
	return 0
}

func (m *PUBGData) GetGameMode() string {
	if m != nil {
		return m.GameMode
	}
	return ""
}

func (m *PUBGData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type OverwatchData struct {
	BroadcasterCharacterAbility string               `protobuf:"bytes,1,opt,name=broadcaster_character_ability,json=broadcasterCharacterAbility,proto3" json:"broadcaster_character_ability,omitempty"`
	BroadcasterCharacterRole    string               `protobuf:"bytes,2,opt,name=broadcaster_character_role,json=broadcasterCharacterRole,proto3" json:"broadcaster_character_role,omitempty"`
	BroadcasterCharacter        string               `protobuf:"bytes,3,opt,name=broadcaster_character,json=broadcasterCharacter,proto3" json:"broadcaster_character,omitempty"`
	UpdatedAt                   *timestamp.Timestamp `protobuf:"bytes,4,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral        struct{}             `json:"-"`
	XXX_unrecognized            []byte               `json:"-"`
	XXX_sizecache               int32                `json:"-"`
}

func (m *OverwatchData) Reset()         { *m = OverwatchData{} }
func (m *OverwatchData) String() string { return proto.CompactTextString(m) }
func (*OverwatchData) ProtoMessage()    {}
func (*OverwatchData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{19}
}
func (m *OverwatchData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OverwatchData.Unmarshal(m, b)
}
func (m *OverwatchData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OverwatchData.Marshal(b, m, deterministic)
}
func (dst *OverwatchData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OverwatchData.Merge(dst, src)
}
func (m *OverwatchData) XXX_Size() int {
	return xxx_messageInfo_OverwatchData.Size(m)
}
func (m *OverwatchData) XXX_DiscardUnknown() {
	xxx_messageInfo_OverwatchData.DiscardUnknown(m)
}

var xxx_messageInfo_OverwatchData proto.InternalMessageInfo

func (m *OverwatchData) GetBroadcasterCharacterAbility() string {
	if m != nil {
		return m.BroadcasterCharacterAbility
	}
	return ""
}

func (m *OverwatchData) GetBroadcasterCharacterRole() string {
	if m != nil {
		return m.BroadcasterCharacterRole
	}
	return ""
}

func (m *OverwatchData) GetBroadcasterCharacter() string {
	if m != nil {
		return m.BroadcasterCharacter
	}
	return ""
}

func (m *OverwatchData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type HearthstoneData struct {
	BroadcasterHeroName  string               `protobuf:"bytes,1,opt,name=broadcaster_hero_name,json=broadcasterHeroName,proto3" json:"broadcaster_hero_name,omitempty"`
	BroadcasterHeroClass string               `protobuf:"bytes,2,opt,name=broadcaster_hero_class,json=broadcasterHeroClass,proto3" json:"broadcaster_hero_class,omitempty"`
	OpponentHeroName     string               `protobuf:"bytes,3,opt,name=opponent_hero_name,json=opponentHeroName,proto3" json:"opponent_hero_name,omitempty"`
	OpponentHeroClass    string               `protobuf:"bytes,4,opt,name=opponent_hero_class,json=opponentHeroClass,proto3" json:"opponent_hero_class,omitempty"`
	GameMode             string               `protobuf:"bytes,5,opt,name=game_mode,json=gameMode,proto3" json:"game_mode,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,6,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *HearthstoneData) Reset()         { *m = HearthstoneData{} }
func (m *HearthstoneData) String() string { return proto.CompactTextString(m) }
func (*HearthstoneData) ProtoMessage()    {}
func (*HearthstoneData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{20}
}
func (m *HearthstoneData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HearthstoneData.Unmarshal(m, b)
}
func (m *HearthstoneData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HearthstoneData.Marshal(b, m, deterministic)
}
func (dst *HearthstoneData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HearthstoneData.Merge(dst, src)
}
func (m *HearthstoneData) XXX_Size() int {
	return xxx_messageInfo_HearthstoneData.Size(m)
}
func (m *HearthstoneData) XXX_DiscardUnknown() {
	xxx_messageInfo_HearthstoneData.DiscardUnknown(m)
}

var xxx_messageInfo_HearthstoneData proto.InternalMessageInfo

func (m *HearthstoneData) GetBroadcasterHeroName() string {
	if m != nil {
		return m.BroadcasterHeroName
	}
	return ""
}

func (m *HearthstoneData) GetBroadcasterHeroClass() string {
	if m != nil {
		return m.BroadcasterHeroClass
	}
	return ""
}

func (m *HearthstoneData) GetOpponentHeroName() string {
	if m != nil {
		return m.OpponentHeroName
	}
	return ""
}

func (m *HearthstoneData) GetOpponentHeroClass() string {
	if m != nil {
		return m.OpponentHeroClass
	}
	return ""
}

func (m *HearthstoneData) GetGameMode() string {
	if m != nil {
		return m.GameMode
	}
	return ""
}

func (m *HearthstoneData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type PartnershipData struct {
	IsPartner            bool                 `protobuf:"varint,1,opt,name=is_partner,json=isPartner,proto3" json:"is_partner,omitempty"`
	IsAffiliate          bool                 `protobuf:"varint,2,opt,name=is_affiliate,json=isAffiliate,proto3" json:"is_affiliate,omitempty"`
	IsDeveloper          bool                 `protobuf:"varint,3,opt,name=is_developer,json=isDeveloper,proto3" json:"is_developer,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,4,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *PartnershipData) Reset()         { *m = PartnershipData{} }
func (m *PartnershipData) String() string { return proto.CompactTextString(m) }
func (*PartnershipData) ProtoMessage()    {}
func (*PartnershipData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{21}
}
func (m *PartnershipData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PartnershipData.Unmarshal(m, b)
}
func (m *PartnershipData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PartnershipData.Marshal(b, m, deterministic)
}
func (dst *PartnershipData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PartnershipData.Merge(dst, src)
}
func (m *PartnershipData) XXX_Size() int {
	return xxx_messageInfo_PartnershipData.Size(m)
}
func (m *PartnershipData) XXX_DiscardUnknown() {
	xxx_messageInfo_PartnershipData.DiscardUnknown(m)
}

var xxx_messageInfo_PartnershipData proto.InternalMessageInfo

func (m *PartnershipData) GetIsPartner() bool {
	if m != nil {
		return m.IsPartner
	}
	return false
}

func (m *PartnershipData) GetIsAffiliate() bool {
	if m != nil {
		return m.IsAffiliate
	}
	return false
}

func (m *PartnershipData) GetIsDeveloper() bool {
	if m != nil {
		return m.IsDeveloper
	}
	return false
}

func (m *PartnershipData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type PlaystationData struct {
	ScePlatform                   string               `protobuf:"bytes,1,opt,name=sce_platform,json=scePlatform,proto3" json:"sce_platform,omitempty"`
	SceTitleAttribute             string               `protobuf:"bytes,2,opt,name=sce_title_attribute,json=sceTitleAttribute,proto3" json:"sce_title_attribute,omitempty"`
	SceTitleGenre                 string               `protobuf:"bytes,3,opt,name=sce_title_genre,json=sceTitleGenre,proto3" json:"sce_title_genre,omitempty"`
	SceTitleId                    string               `protobuf:"bytes,4,opt,name=sce_title_id,json=sceTitleId,proto3" json:"sce_title_id,omitempty"`
	SceTitleLanguage              string               `protobuf:"bytes,5,opt,name=sce_title_language,json=sceTitleLanguage,proto3" json:"sce_title_language,omitempty"`
	SceTitleName                  string               `protobuf:"bytes,6,opt,name=sce_title_name,json=sceTitleName,proto3" json:"sce_title_name,omitempty"`
	UpdatedAt                     *timestamp.Timestamp `protobuf:"bytes,7,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	SceTitlePresetTextDescription string               `protobuf:"bytes,8,opt,name=sce_title_preset_text_description,json=sceTitlePresetTextDescription,proto3" json:"sce_title_preset_text_description,omitempty"`
	XXX_NoUnkeyedLiteral          struct{}             `json:"-"`
	XXX_unrecognized              []byte               `json:"-"`
	XXX_sizecache                 int32                `json:"-"`
}

func (m *PlaystationData) Reset()         { *m = PlaystationData{} }
func (m *PlaystationData) String() string { return proto.CompactTextString(m) }
func (*PlaystationData) ProtoMessage()    {}
func (*PlaystationData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{22}
}
func (m *PlaystationData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PlaystationData.Unmarshal(m, b)
}
func (m *PlaystationData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PlaystationData.Marshal(b, m, deterministic)
}
func (dst *PlaystationData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PlaystationData.Merge(dst, src)
}
func (m *PlaystationData) XXX_Size() int {
	return xxx_messageInfo_PlaystationData.Size(m)
}
func (m *PlaystationData) XXX_DiscardUnknown() {
	xxx_messageInfo_PlaystationData.DiscardUnknown(m)
}

var xxx_messageInfo_PlaystationData proto.InternalMessageInfo

func (m *PlaystationData) GetScePlatform() string {
	if m != nil {
		return m.ScePlatform
	}
	return ""
}

func (m *PlaystationData) GetSceTitleAttribute() string {
	if m != nil {
		return m.SceTitleAttribute
	}
	return ""
}

func (m *PlaystationData) GetSceTitleGenre() string {
	if m != nil {
		return m.SceTitleGenre
	}
	return ""
}

func (m *PlaystationData) GetSceTitleId() string {
	if m != nil {
		return m.SceTitleId
	}
	return ""
}

func (m *PlaystationData) GetSceTitleLanguage() string {
	if m != nil {
		return m.SceTitleLanguage
	}
	return ""
}

func (m *PlaystationData) GetSceTitleName() string {
	if m != nil {
		return m.SceTitleName
	}
	return ""
}

func (m *PlaystationData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

func (m *PlaystationData) GetSceTitlePresetTextDescription() string {
	if m != nil {
		return m.SceTitlePresetTextDescription
	}
	return ""
}

type UserData struct {
	UserChannel          string               `protobuf:"bytes,1,opt,name=user_channel,json=userChannel,proto3" json:"user_channel,omitempty"`
	UserDisplayName      string               `protobuf:"bytes,2,opt,name=user_display_name,json=userDisplayName,proto3" json:"user_display_name,omitempty"`
	UserCategory         string               `protobuf:"bytes,3,opt,name=user_category,json=userCategory,proto3" json:"user_category,omitempty"`
	UserLanguage         string               `protobuf:"bytes,4,opt,name=user_language,json=userLanguage,proto3" json:"user_language,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,5,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *UserData) Reset()         { *m = UserData{} }
func (m *UserData) String() string { return proto.CompactTextString(m) }
func (*UserData) ProtoMessage()    {}
func (*UserData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{23}
}
func (m *UserData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UserData.Unmarshal(m, b)
}
func (m *UserData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UserData.Marshal(b, m, deterministic)
}
func (dst *UserData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UserData.Merge(dst, src)
}
func (m *UserData) XXX_Size() int {
	return xxx_messageInfo_UserData.Size(m)
}
func (m *UserData) XXX_DiscardUnknown() {
	xxx_messageInfo_UserData.DiscardUnknown(m)
}

var xxx_messageInfo_UserData proto.InternalMessageInfo

func (m *UserData) GetUserChannel() string {
	if m != nil {
		return m.UserChannel
	}
	return ""
}

func (m *UserData) GetUserDisplayName() string {
	if m != nil {
		return m.UserDisplayName
	}
	return ""
}

func (m *UserData) GetUserCategory() string {
	if m != nil {
		return m.UserCategory
	}
	return ""
}

func (m *UserData) GetUserLanguage() string {
	if m != nil {
		return m.UserLanguage
	}
	return ""
}

func (m *UserData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

type RestrictionsData struct {
	Restriction          string               `protobuf:"bytes,1,opt,name=restriction,proto3" json:"restriction,omitempty"`
	UpdatedAt            *timestamp.Timestamp `protobuf:"bytes,2,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	RestrictionOptions   []string             `protobuf:"bytes,3,rep,name=restriction_options,json=restrictionOptions,proto3" json:"restriction_options,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *RestrictionsData) Reset()         { *m = RestrictionsData{} }
func (m *RestrictionsData) String() string { return proto.CompactTextString(m) }
func (*RestrictionsData) ProtoMessage()    {}
func (*RestrictionsData) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{24}
}
func (m *RestrictionsData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RestrictionsData.Unmarshal(m, b)
}
func (m *RestrictionsData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RestrictionsData.Marshal(b, m, deterministic)
}
func (dst *RestrictionsData) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RestrictionsData.Merge(dst, src)
}
func (m *RestrictionsData) XXX_Size() int {
	return xxx_messageInfo_RestrictionsData.Size(m)
}
func (m *RestrictionsData) XXX_DiscardUnknown() {
	xxx_messageInfo_RestrictionsData.DiscardUnknown(m)
}

var xxx_messageInfo_RestrictionsData proto.InternalMessageInfo

func (m *RestrictionsData) GetRestriction() string {
	if m != nil {
		return m.Restriction
	}
	return ""
}

func (m *RestrictionsData) GetUpdatedAt() *timestamp.Timestamp {
	if m != nil {
		return m.UpdatedAt
	}
	return nil
}

func (m *RestrictionsData) GetRestrictionOptions() []string {
	if m != nil {
		return m.RestrictionOptions
	}
	return nil
}

// Response for GetStreamSummary
type StreamSummaryResponse struct {
	// Each group of the Stream Summary Query
	StreamSummaryItems []*StreamSummaryItem `protobuf:"bytes,1,rep,name=stream_summary_items,json=streamSummaryItems,proto3" json:"stream_summary_items,omitempty"`
	// valid for 10 minutes
	PageToken            string   `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StreamSummaryResponse) Reset()         { *m = StreamSummaryResponse{} }
func (m *StreamSummaryResponse) String() string { return proto.CompactTextString(m) }
func (*StreamSummaryResponse) ProtoMessage()    {}
func (*StreamSummaryResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{25}
}
func (m *StreamSummaryResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamSummaryResponse.Unmarshal(m, b)
}
func (m *StreamSummaryResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamSummaryResponse.Marshal(b, m, deterministic)
}
func (dst *StreamSummaryResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamSummaryResponse.Merge(dst, src)
}
func (m *StreamSummaryResponse) XXX_Size() int {
	return xxx_messageInfo_StreamSummaryResponse.Size(m)
}
func (m *StreamSummaryResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamSummaryResponse.DiscardUnknown(m)
}

var xxx_messageInfo_StreamSummaryResponse proto.InternalMessageInfo

func (m *StreamSummaryResponse) GetStreamSummaryItems() []*StreamSummaryItem {
	if m != nil {
		return m.StreamSummaryItems
	}
	return nil
}

func (m *StreamSummaryResponse) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

// This is one specific group of a group-by query
type StreamSummaryItem struct {
	// The number of channels in this group. Currently not implemented.
	Channels int32 `protobuf:"varint,1,opt,name=channels,proto3" json:"channels,omitempty"`
	// The total number of viewers watching streams in this group
	Viewcount int64 `protobuf:"varint,2,opt,name=viewcount,proto3" json:"viewcount,omitempty"`
	// The stringified unique value of the group
	GroupValue string `protobuf:"bytes,3,opt,name=group_value,json=groupValue,proto3" json:"group_value,omitempty"`
	// Because frontend might want to paginate from 5th from last item, instead of last.
	StreamSummaryPageToken string   `protobuf:"bytes,4,opt,name=stream_summary_page_token,json=streamSummaryPageToken,proto3" json:"stream_summary_page_token,omitempty"`
	XXX_NoUnkeyedLiteral   struct{} `json:"-"`
	XXX_unrecognized       []byte   `json:"-"`
	XXX_sizecache          int32    `json:"-"`
}

func (m *StreamSummaryItem) Reset()         { *m = StreamSummaryItem{} }
func (m *StreamSummaryItem) String() string { return proto.CompactTextString(m) }
func (*StreamSummaryItem) ProtoMessage()    {}
func (*StreamSummaryItem) Descriptor() ([]byte, []int) {
	return fileDescriptor_liveline_d99c42ca0326ab69, []int{26}
}
func (m *StreamSummaryItem) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StreamSummaryItem.Unmarshal(m, b)
}
func (m *StreamSummaryItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StreamSummaryItem.Marshal(b, m, deterministic)
}
func (dst *StreamSummaryItem) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StreamSummaryItem.Merge(dst, src)
}
func (m *StreamSummaryItem) XXX_Size() int {
	return xxx_messageInfo_StreamSummaryItem.Size(m)
}
func (m *StreamSummaryItem) XXX_DiscardUnknown() {
	xxx_messageInfo_StreamSummaryItem.DiscardUnknown(m)
}

var xxx_messageInfo_StreamSummaryItem proto.InternalMessageInfo

func (m *StreamSummaryItem) GetChannels() int32 {
	if m != nil {
		return m.Channels
	}
	return 0
}

func (m *StreamSummaryItem) GetViewcount() int64 {
	if m != nil {
		return m.Viewcount
	}
	return 0
}

func (m *StreamSummaryItem) GetGroupValue() string {
	if m != nil {
		return m.GroupValue
	}
	return ""
}

func (m *StreamSummaryItem) GetStreamSummaryPageToken() string {
	if m != nil {
		return m.StreamSummaryPageToken
	}
	return ""
}

func init() {
	proto.RegisterType((*StreamsByChannelIDsRequest)(nil), "liveline.StreamsByChannelIDsRequest")
	proto.RegisterType((*StreamsByChannelNamesRequest)(nil), "liveline.StreamsByChannelNamesRequest")
	proto.RegisterType((*StreamsByBroadcastIDsRequest)(nil), "liveline.StreamsByBroadcastIDsRequest")
	proto.RegisterType((*StreamSummaryRequest)(nil), "liveline.StreamSummaryRequest")
	proto.RegisterType((*AggregationFilter)(nil), "liveline.AggregationFilter")
	proto.RegisterType((*Filter)(nil), "liveline.Filter")
	proto.RegisterType((*FilteredStreamsByChannelIDsRequest)(nil), "liveline.FilteredStreamsByChannelIDsRequest")
	proto.RegisterType((*FilteredStreamsRequest)(nil), "liveline.FilteredStreamsRequest")
	proto.RegisterType((*StreamsResponse)(nil), "liveline.StreamsResponse")
	proto.RegisterType((*StreamResponse)(nil), "liveline.StreamResponse")
	proto.RegisterType((*ViewcountData)(nil), "liveline.ViewcountData")
	proto.RegisterType((*GraffitiData)(nil), "liveline.GraffitiData")
	proto.RegisterType((*GraffitiTag)(nil), "liveline.GraffitiTag")
	proto.RegisterType((*ChannelData)(nil), "liveline.ChannelData")
	proto.RegisterType((*UsherData)(nil), "liveline.UsherData")
	proto.RegisterType((*GameMetadata)(nil), "liveline.GameMetadata")
	proto.RegisterType((*CSGOData)(nil), "liveline.CSGOData")
	proto.RegisterType((*LOLData)(nil), "liveline.LOLData")
	proto.RegisterType((*PUBGData)(nil), "liveline.PUBGData")
	proto.RegisterType((*OverwatchData)(nil), "liveline.OverwatchData")
	proto.RegisterType((*HearthstoneData)(nil), "liveline.HearthstoneData")
	proto.RegisterType((*PartnershipData)(nil), "liveline.PartnershipData")
	proto.RegisterType((*PlaystationData)(nil), "liveline.PlaystationData")
	proto.RegisterType((*UserData)(nil), "liveline.UserData")
	proto.RegisterType((*RestrictionsData)(nil), "liveline.RestrictionsData")
	proto.RegisterType((*StreamSummaryResponse)(nil), "liveline.StreamSummaryResponse")
	proto.RegisterType((*StreamSummaryItem)(nil), "liveline.StreamSummaryItem")
	proto.RegisterEnum("liveline.SortField", SortField_name, SortField_value)
	proto.RegisterEnum("liveline.SortOrder", SortOrder_name, SortOrder_value)
	proto.RegisterEnum("liveline.FilterKey", FilterKey_name, FilterKey_value)
	proto.RegisterEnum("liveline.AggregationField", AggregationField_name, AggregationField_value)
	proto.RegisterEnum("liveline.AggregationFilterField", AggregationFilterField_name, AggregationFilterField_value)
}

func init() { proto.RegisterFile("liveline.proto", fileDescriptor_liveline_d99c42ca0326ab69) }

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