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

package bitesla_srv_exchange

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

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

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package

type TradeStatus int32

const (
	TradeStatus_UNFINISH    TradeStatus = 0
	TradeStatus_PART_FINISH TradeStatus = 1
	TradeStatus_FINISH      TradeStatus = 2
	TradeStatus_CANCEL      TradeStatus = 3
	TradeStatus_REJECT      TradeStatus = 4
	TradeStatus_CANCEL_ING  TradeStatus = 5
)

var TradeStatus_name = map[int32]string{
	0: "UNFINISH",
	1: "PART_FINISH",
	2: "FINISH",
	3: "CANCEL",
	4: "REJECT",
	5: "CANCEL_ING",
}

var TradeStatus_value = map[string]int32{
	"UNFINISH":    0,
	"PART_FINISH": 1,
	"FINISH":      2,
	"CANCEL":      3,
	"REJECT":      4,
	"CANCEL_ING":  5,
}

func (x TradeStatus) String() string {
	return proto.EnumName(TradeStatus_name, int32(x))
}

func (TradeStatus) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{0}
}

type TradeSide int32

const (
	TradeSide_BUY         TradeSide = 0
	TradeSide_SELL        TradeSide = 1
	TradeSide_BUY_MARKET  TradeSide = 2
	TradeSide_SELL_MARKET TradeSide = 3
)

var TradeSide_name = map[int32]string{
	0: "BUY",
	1: "SELL",
	2: "BUY_MARKET",
	3: "SELL_MARKET",
}

var TradeSide_value = map[string]int32{
	"BUY":         0,
	"SELL":        1,
	"BUY_MARKET":  2,
	"SELL_MARKET": 3,
}

func (x TradeSide) String() string {
	return proto.EnumName(TradeSide_name, int32(x))
}

func (TradeSide) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{1}
}

type Currency struct {
	Double               float64  `protobuf:"fixed64,1,opt,name=double,proto3" json:"double,omitempty"`
	Price                string   `protobuf:"bytes,2,opt,name=price,proto3" json:"price,omitempty"`
	OrderId              string   `protobuf:"bytes,3,opt,name=orderId,proto3" json:"orderId,omitempty"`
	Page                 int32    `protobuf:"varint,4,opt,name=page,proto3" json:"page,omitempty"`
	Size                 int32    `protobuf:"varint,5,opt,name=size,proto3" json:"size,omitempty"`
	Period               int32    `protobuf:"varint,6,opt,name=period,proto3" json:"period,omitempty"`
	Since                int32    `protobuf:"varint,7,opt,name=since,proto3" json:"since,omitempty"`
	ExName               string   `protobuf:"bytes,8,opt,name=exName,proto3" json:"exName,omitempty"`
	ApiKey               string   `protobuf:"bytes,9,opt,name=apiKey,proto3" json:"apiKey,omitempty"`
	ApiSecret            string   `protobuf:"bytes,10,opt,name=apiSecret,proto3" json:"apiSecret,omitempty"`
	Description          string   `protobuf:"bytes,11,opt,name=description,proto3" json:"description,omitempty"`
	CurrencyPair         string   `protobuf:"bytes,12,opt,name=currencyPair,proto3" json:"currencyPair,omitempty"`
	Amount               string   `protobuf:"bytes,13,opt,name=amount,proto3" json:"amount,omitempty"`
	AccountType          int32    `protobuf:"varint,14,opt,name=accountType,proto3" json:"accountType,omitempty"`
	OrderType            int32    `protobuf:"varint,15,opt,name=orderType,proto3" json:"orderType,omitempty"`
	CreateTime           int64    `protobuf:"varint,16,opt,name=createTime,proto3" json:"createTime,omitempty"`
	UpdateTime           int64    `protobuf:"varint,17,opt,name=updateTime,proto3" json:"updateTime,omitempty"`
	CurrentLoginUserID   int64    `protobuf:"varint,18,opt,name=currentLoginUserID,proto3" json:"currentLoginUserID,omitempty"`
	ExchangeId           int64    `protobuf:"varint,19,opt,name=exchangeId,proto3" json:"exchangeId,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_Currency proto.InternalMessageInfo

func (m *Currency) GetDouble() float64 {
	if m != nil {
		return m.Double
	}
	return 0
}

func (m *Currency) GetPrice() string {
	if m != nil {
		return m.Price
	}
	return ""
}

func (m *Currency) GetOrderId() string {
	if m != nil {
		return m.OrderId
	}
	return ""
}

func (m *Currency) GetPage() int32 {
	if m != nil {
		return m.Page
	}
	return 0
}

func (m *Currency) GetSize() int32 {
	if m != nil {
		return m.Size
	}
	return 0
}

func (m *Currency) GetPeriod() int32 {
	if m != nil {
		return m.Period
	}
	return 0
}

func (m *Currency) GetSince() int32 {
	if m != nil {
		return m.Since
	}
	return 0
}

func (m *Currency) GetExName() string {
	if m != nil {
		return m.ExName
	}
	return ""
}

func (m *Currency) GetApiKey() string {
	if m != nil {
		return m.ApiKey
	}
	return ""
}

func (m *Currency) GetApiSecret() string {
	if m != nil {
		return m.ApiSecret
	}
	return ""
}

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

func (m *Currency) GetCurrencyPair() string {
	if m != nil {
		return m.CurrencyPair
	}
	return ""
}

func (m *Currency) GetAmount() string {
	if m != nil {
		return m.Amount
	}
	return ""
}

func (m *Currency) GetAccountType() int32 {
	if m != nil {
		return m.AccountType
	}
	return 0
}

func (m *Currency) GetOrderType() int32 {
	if m != nil {
		return m.OrderType
	}
	return 0
}

func (m *Currency) GetCreateTime() int64 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *Currency) GetUpdateTime() int64 {
	if m != nil {
		return m.UpdateTime
	}
	return 0
}

func (m *Currency) GetCurrentLoginUserID() int64 {
	if m != nil {
		return m.CurrentLoginUserID
	}
	return 0
}

func (m *Currency) GetExchangeId() int64 {
	if m != nil {
		return m.ExchangeId
	}
	return 0
}

type Currencys struct {
	Currencys            []*Currency `protobuf:"bytes,1,rep,name=currencys,proto3" json:"currencys,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

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

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

var xxx_messageInfo_Currencys proto.InternalMessageInfo

func (m *Currencys) GetCurrencys() []*Currency {
	if m != nil {
		return m.Currencys
	}
	return nil
}

type Boolean struct {
	IsBool               bool     `protobuf:"varint,1,opt,name=isBool,proto3" json:"isBool,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_Boolean proto.InternalMessageInfo

func (m *Boolean) GetIsBool() bool {
	if m != nil {
		return m.IsBool
	}
	return false
}

type Str struct {
	Str                  string   `protobuf:"bytes,1,opt,name=str,proto3" json:"str,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_Str proto.InternalMessageInfo

func (m *Str) GetStr() string {
	if m != nil {
		return m.Str
	}
	return ""
}

type Trade struct {
	Tid                  int64     `protobuf:"varint,1,opt,name=tid,proto3" json:"tid,omitempty"`
	Type                 TradeSide `protobuf:"varint,2,opt,name=type,proto3,enum=bitesla.srv.exchange.TradeSide" json:"type,omitempty"`
	Amount               float64   `protobuf:"fixed64,3,opt,name=amount,proto3" json:"amount,omitempty"`
	Price                float64   `protobuf:"fixed64,4,opt,name=price,proto3" json:"price,omitempty"`
	Date                 int64     `protobuf:"varint,5,opt,name=date,proto3" json:"date,omitempty"`
	CurrencyPair         string    `protobuf:"bytes,6,opt,name=currencyPair,proto3" json:"currencyPair,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

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

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

var xxx_messageInfo_Trade proto.InternalMessageInfo

func (m *Trade) GetTid() int64 {
	if m != nil {
		return m.Tid
	}
	return 0
}

func (m *Trade) GetType() TradeSide {
	if m != nil {
		return m.Type
	}
	return TradeSide_BUY
}

func (m *Trade) GetAmount() float64 {
	if m != nil {
		return m.Amount
	}
	return 0
}

func (m *Trade) GetPrice() float64 {
	if m != nil {
		return m.Price
	}
	return 0
}

func (m *Trade) GetDate() int64 {
	if m != nil {
		return m.Date
	}
	return 0
}

func (m *Trade) GetCurrencyPair() string {
	if m != nil {
		return m.CurrencyPair
	}
	return ""
}

type Trades struct {
	Trades               []*Trade `protobuf:"bytes,1,rep,name=trades,proto3" json:"trades,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_Trades proto.InternalMessageInfo

func (m *Trades) GetTrades() []*Trade {
	if m != nil {
		return m.Trades
	}
	return nil
}

type Kline struct {
	CurrencyPair         string   `protobuf:"bytes,1,opt,name=currencyPair,proto3" json:"currencyPair,omitempty"`
	Timestamp            int64    `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Open                 float64  `protobuf:"fixed64,3,opt,name=open,proto3" json:"open,omitempty"`
	Close                float64  `protobuf:"fixed64,4,opt,name=close,proto3" json:"close,omitempty"`
	High                 float64  `protobuf:"fixed64,5,opt,name=high,proto3" json:"high,omitempty"`
	Low                  float64  `protobuf:"fixed64,6,opt,name=low,proto3" json:"low,omitempty"`
	Vol                  float64  `protobuf:"fixed64,7,opt,name=vol,proto3" json:"vol,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_Kline proto.InternalMessageInfo

func (m *Kline) GetCurrencyPair() string {
	if m != nil {
		return m.CurrencyPair
	}
	return ""
}

func (m *Kline) GetTimestamp() int64 {
	if m != nil {
		return m.Timestamp
	}
	return 0
}

func (m *Kline) GetOpen() float64 {
	if m != nil {
		return m.Open
	}
	return 0
}

func (m *Kline) GetClose() float64 {
	if m != nil {
		return m.Close
	}
	return 0
}

func (m *Kline) GetHigh() float64 {
	if m != nil {
		return m.High
	}
	return 0
}

func (m *Kline) GetLow() float64 {
	if m != nil {
		return m.Low
	}
	return 0
}

func (m *Kline) GetVol() float64 {
	if m != nil {
		return m.Vol
	}
	return 0
}

// 每个属性都会附带有额外方法，因此分开描述
type Klines struct {
	Klines               []*Kline `protobuf:"bytes,1,rep,name=klines,proto3" json:"klines,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_Klines proto.InternalMessageInfo

func (m *Klines) GetKlines() []*Kline {
	if m != nil {
		return m.Klines
	}
	return nil
}

type DepthRecords struct {
	List                 []*DepthRecord `protobuf:"bytes,1,rep,name=list,proto3" json:"list,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

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

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

var xxx_messageInfo_DepthRecords proto.InternalMessageInfo

func (m *DepthRecords) GetList() []*DepthRecord {
	if m != nil {
		return m.List
	}
	return nil
}

type Accounts struct {
	Accounts             []*Account `protobuf:"bytes,1,rep,name=accounts,proto3" json:"accounts,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *Accounts) Reset()         { *m = Accounts{} }
func (m *Accounts) String() string { return proto.CompactTextString(m) }
func (*Accounts) ProtoMessage()    {}
func (*Accounts) Descriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{9}
}

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

var xxx_messageInfo_Accounts proto.InternalMessageInfo

func (m *Accounts) GetAccounts() []*Account {
	if m != nil {
		return m.Accounts
	}
	return nil
}

type DepthRecord struct {
	Price                float64  `protobuf:"fixed64,1,opt,name=price,proto3" json:"price,omitempty"`
	Amount               float64  `protobuf:"fixed64,2,opt,name=amount,proto3" json:"amount,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DepthRecord) Reset()         { *m = DepthRecord{} }
func (m *DepthRecord) String() string { return proto.CompactTextString(m) }
func (*DepthRecord) ProtoMessage()    {}
func (*DepthRecord) Descriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{10}
}

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

var xxx_messageInfo_DepthRecord proto.InternalMessageInfo

func (m *DepthRecord) GetPrice() float64 {
	if m != nil {
		return m.Price
	}
	return 0
}

func (m *DepthRecord) GetAmount() float64 {
	if m != nil {
		return m.Amount
	}
	return 0
}

type Depth struct {
	ContractType         string        `protobuf:"bytes,1,opt,name=contractType,proto3" json:"contractType,omitempty"`
	CurrencyPair         string        `protobuf:"bytes,2,opt,name=currencyPair,proto3" json:"currencyPair,omitempty"`
	UTime                string        `protobuf:"bytes,3,opt,name=uTime,proto3" json:"uTime,omitempty"`
	AskList              *DepthRecords `protobuf:"bytes,4,opt,name=AskList,proto3" json:"AskList,omitempty"`
	BidList              *DepthRecords `protobuf:"bytes,5,opt,name=BidList,proto3" json:"BidList,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *Depth) Reset()         { *m = Depth{} }
func (m *Depth) String() string { return proto.CompactTextString(m) }
func (*Depth) ProtoMessage()    {}
func (*Depth) Descriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{11}
}

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

var xxx_messageInfo_Depth proto.InternalMessageInfo

func (m *Depth) GetContractType() string {
	if m != nil {
		return m.ContractType
	}
	return ""
}

func (m *Depth) GetCurrencyPair() string {
	if m != nil {
		return m.CurrencyPair
	}
	return ""
}

func (m *Depth) GetUTime() string {
	if m != nil {
		return m.UTime
	}
	return ""
}

func (m *Depth) GetAskList() *DepthRecords {
	if m != nil {
		return m.AskList
	}
	return nil
}

func (m *Depth) GetBidList() *DepthRecords {
	if m != nil {
		return m.BidList
	}
	return nil
}

type Ticker struct {
	ContractType         string   `protobuf:"bytes,1,opt,name=contractType,proto3" json:"contractType,omitempty"`
	Pair                 string   `protobuf:"bytes,2,opt,name=pair,proto3" json:"pair,omitempty"`
	Last                 float64  `protobuf:"fixed64,3,opt,name=last,proto3" json:"last,omitempty"`
	Buy                  float64  `protobuf:"fixed64,4,opt,name=buy,proto3" json:"buy,omitempty"`
	Sell                 float64  `protobuf:"fixed64,5,opt,name=sell,proto3" json:"sell,omitempty"`
	High                 float64  `protobuf:"fixed64,6,opt,name=high,proto3" json:"high,omitempty"`
	Low                  float64  `protobuf:"fixed64,7,opt,name=low,proto3" json:"low,omitempty"`
	Vol                  float64  `protobuf:"fixed64,8,opt,name=vol,proto3" json:"vol,omitempty"`
	Date                 uint64   `protobuf:"varint,9,opt,name=date,proto3" json:"date,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Ticker) Reset()         { *m = Ticker{} }
func (m *Ticker) String() string { return proto.CompactTextString(m) }
func (*Ticker) ProtoMessage()    {}
func (*Ticker) Descriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{12}
}

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

var xxx_messageInfo_Ticker proto.InternalMessageInfo

func (m *Ticker) GetContractType() string {
	if m != nil {
		return m.ContractType
	}
	return ""
}

func (m *Ticker) GetPair() string {
	if m != nil {
		return m.Pair
	}
	return ""
}

func (m *Ticker) GetLast() float64 {
	if m != nil {
		return m.Last
	}
	return 0
}

func (m *Ticker) GetBuy() float64 {
	if m != nil {
		return m.Buy
	}
	return 0
}

func (m *Ticker) GetSell() float64 {
	if m != nil {
		return m.Sell
	}
	return 0
}

func (m *Ticker) GetHigh() float64 {
	if m != nil {
		return m.High
	}
	return 0
}

func (m *Ticker) GetLow() float64 {
	if m != nil {
		return m.Low
	}
	return 0
}

func (m *Ticker) GetVol() float64 {
	if m != nil {
		return m.Vol
	}
	return 0
}

func (m *Ticker) GetDate() uint64 {
	if m != nil {
		return m.Date
	}
	return 0
}

type Account struct {
	Asset                float64                `protobuf:"fixed64,1,opt,name=asset,proto3" json:"asset,omitempty"`
	EtAsset              float64                `protobuf:"fixed64,2,opt,name=etAsset,proto3" json:"etAsset,omitempty"`
	SubAccounts          map[string]*SubAccount `protobuf:"bytes,3,rep,name=subAccounts,proto3" json:"subAccounts,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *Account) Reset()         { *m = Account{} }
func (m *Account) String() string { return proto.CompactTextString(m) }
func (*Account) ProtoMessage()    {}
func (*Account) Descriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{13}
}

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

var xxx_messageInfo_Account proto.InternalMessageInfo

func (m *Account) GetAsset() float64 {
	if m != nil {
		return m.Asset
	}
	return 0
}

func (m *Account) GetEtAsset() float64 {
	if m != nil {
		return m.EtAsset
	}
	return 0
}

func (m *Account) GetSubAccounts() map[string]*SubAccount {
	if m != nil {
		return m.SubAccounts
	}
	return nil
}

type SubAccount struct {
	Currency             string   `protobuf:"bytes,1,opt,name=currency,proto3" json:"currency,omitempty"`
	Amount               float64  `protobuf:"fixed64,2,opt,name=amount,proto3" json:"amount,omitempty"`
	ForzenAmount         float64  `protobuf:"fixed64,3,opt,name=forzenAmount,proto3" json:"forzenAmount,omitempty"`
	LoanAmount           float64  `protobuf:"fixed64,4,opt,name=loanAmount,proto3" json:"loanAmount,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SubAccount) Reset()         { *m = SubAccount{} }
func (m *SubAccount) String() string { return proto.CompactTextString(m) }
func (*SubAccount) ProtoMessage()    {}
func (*SubAccount) Descriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{14}
}

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

var xxx_messageInfo_SubAccount proto.InternalMessageInfo

func (m *SubAccount) GetCurrency() string {
	if m != nil {
		return m.Currency
	}
	return ""
}

func (m *SubAccount) GetAmount() float64 {
	if m != nil {
		return m.Amount
	}
	return 0
}

func (m *SubAccount) GetForzenAmount() float64 {
	if m != nil {
		return m.ForzenAmount
	}
	return 0
}

func (m *SubAccount) GetLoanAmount() float64 {
	if m != nil {
		return m.LoanAmount
	}
	return 0
}

type Orders struct {
	Orders               []*Order `protobuf:"bytes,1,rep,name=orders,proto3" json:"orders,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Orders) Reset()         { *m = Orders{} }
func (m *Orders) String() string { return proto.CompactTextString(m) }
func (*Orders) ProtoMessage()    {}
func (*Orders) Descriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{15}
}

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

var xxx_messageInfo_Orders proto.InternalMessageInfo

func (m *Orders) GetOrders() []*Order {
	if m != nil {
		return m.Orders
	}
	return nil
}

type Order struct {
	Price                float64     `protobuf:"fixed64,1,opt,name=price,proto3" json:"price,omitempty"`
	Amount               float64     `protobuf:"fixed64,2,opt,name=amount,proto3" json:"amount,omitempty"`
	AvgPrice             float64     `protobuf:"fixed64,3,opt,name=avgPrice,proto3" json:"avgPrice,omitempty"`
	DealAmount           float64     `protobuf:"fixed64,4,opt,name=dealAmount,proto3" json:"dealAmount,omitempty"`
	Fee                  float64     `protobuf:"fixed64,5,opt,name=fee,proto3" json:"fee,omitempty"`
	OrderID              int32       `protobuf:"varint,6,opt,name=orderID,proto3" json:"orderID,omitempty"`
	OrderTime            int32       `protobuf:"varint,7,opt,name=orderTime,proto3" json:"orderTime,omitempty"`
	Status               TradeStatus `protobuf:"varint,8,opt,name=status,proto3,enum=bitesla.srv.exchange.TradeStatus" json:"status,omitempty"`
	CurrencyPair         string      `protobuf:"bytes,9,opt,name=currencyPair,proto3" json:"currencyPair,omitempty"`
	TradeSide            TradeSide   `protobuf:"varint,10,opt,name=tradeSide,proto3,enum=bitesla.srv.exchange.TradeSide" json:"tradeSide,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *Order) Reset()         { *m = Order{} }
func (m *Order) String() string { return proto.CompactTextString(m) }
func (*Order) ProtoMessage()    {}
func (*Order) Descriptor() ([]byte, []int) {
	return fileDescriptor_95588e2623cfabeb, []int{16}
}

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

var xxx_messageInfo_Order proto.InternalMessageInfo

func (m *Order) GetPrice() float64 {
	if m != nil {
		return m.Price
	}
	return 0
}

func (m *Order) GetAmount() float64 {
	if m != nil {
		return m.Amount
	}
	return 0
}

func (m *Order) GetAvgPrice() float64 {
	if m != nil {
		return m.AvgPrice
	}
	return 0
}

func (m *Order) GetDealAmount() float64 {
	if m != nil {
		return m.DealAmount
	}
	return 0
}

func (m *Order) GetFee() float64 {
	if m != nil {
		return m.Fee
	}
	return 0
}

func (m *Order) GetOrderID() int32 {
	if m != nil {
		return m.OrderID
	}
	return 0
}

func (m *Order) GetOrderTime() int32 {
	if m != nil {
		return m.OrderTime
	}
	return 0
}

func (m *Order) GetStatus() TradeStatus {
	if m != nil {
		return m.Status
	}
	return TradeStatus_UNFINISH
}

func (m *Order) GetCurrencyPair() string {
	if m != nil {
		return m.CurrencyPair
	}
	return ""
}

func (m *Order) GetTradeSide() TradeSide {
	if m != nil {
		return m.TradeSide
	}
	return TradeSide_BUY
}

func init() {
	proto.RegisterEnum("bitesla.srv.exchange.TradeStatus", TradeStatus_name, TradeStatus_value)
	proto.RegisterEnum("bitesla.srv.exchange.TradeSide", TradeSide_name, TradeSide_value)
	proto.RegisterType((*Currency)(nil), "bitesla.srv.exchange.Currency")
	proto.RegisterType((*Currencys)(nil), "bitesla.srv.exchange.Currencys")
	proto.RegisterType((*Boolean)(nil), "bitesla.srv.exchange.Boolean")
	proto.RegisterType((*Str)(nil), "bitesla.srv.exchange.Str")
	proto.RegisterType((*Trade)(nil), "bitesla.srv.exchange.Trade")
	proto.RegisterType((*Trades)(nil), "bitesla.srv.exchange.Trades")
	proto.RegisterType((*Kline)(nil), "bitesla.srv.exchange.Kline")
	proto.RegisterType((*Klines)(nil), "bitesla.srv.exchange.Klines")
	proto.RegisterType((*DepthRecords)(nil), "bitesla.srv.exchange.DepthRecords")
	proto.RegisterType((*Accounts)(nil), "bitesla.srv.exchange.Accounts")
	proto.RegisterType((*DepthRecord)(nil), "bitesla.srv.exchange.DepthRecord")
	proto.RegisterType((*Depth)(nil), "bitesla.srv.exchange.Depth")
	proto.RegisterType((*Ticker)(nil), "bitesla.srv.exchange.Ticker")
	proto.RegisterType((*Account)(nil), "bitesla.srv.exchange.Account")
	proto.RegisterMapType((map[string]*SubAccount)(nil), "bitesla.srv.exchange.Account.SubAccountsEntry")
	proto.RegisterType((*SubAccount)(nil), "bitesla.srv.exchange.SubAccount")
	proto.RegisterType((*Orders)(nil), "bitesla.srv.exchange.Orders")
	proto.RegisterType((*Order)(nil), "bitesla.srv.exchange.Order")
}

func init() { proto.RegisterFile("proto/exchange.proto", fileDescriptor_95588e2623cfabeb) }

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