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

package types

import (
	fmt "fmt"
	math "math"

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

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

//钱包模块存贮的tx交易详细信息
// 	 tx : tx交易信息
//	 receipt :交易收据信息
//	 height :交易所在的区块高度
//	 index :交易所在区块中的索引
//	 blocktime :交易所在区块的时标
//	 amount :交易量
//	 fromaddr :交易打出地址
//	 txhash : 交易对应的哈希值
//	 actionName  :交易对应的函数调用
//   payload: 保存额外的一些信息，主要是给插件使用
type WalletTxDetail struct {
	Tx                   *Transaction `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
	Receipt              *ReceiptData `protobuf:"bytes,2,opt,name=receipt,proto3" json:"receipt,omitempty"`
	Height               int64        `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
	Index                int64        `protobuf:"varint,4,opt,name=index,proto3" json:"index,omitempty"`
	Blocktime            int64        `protobuf:"varint,5,opt,name=blocktime,proto3" json:"blocktime,omitempty"`
	Amount               int64        `protobuf:"varint,6,opt,name=amount,proto3" json:"amount,omitempty"`
	Fromaddr             string       `protobuf:"bytes,7,opt,name=fromaddr,proto3" json:"fromaddr,omitempty"`
	Txhash               []byte       `protobuf:"bytes,8,opt,name=txhash,proto3" json:"txhash,omitempty"`
	ActionName           string       `protobuf:"bytes,9,opt,name=actionName,proto3" json:"actionName,omitempty"`
	Payload              []byte       `protobuf:"bytes,10,opt,name=payload,proto3" json:"payload,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

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

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

var xxx_messageInfo_WalletTxDetail proto.InternalMessageInfo

func (m *WalletTxDetail) GetTx() *Transaction {
	if m != nil {
		return m.Tx
	}
	return nil
}

func (m *WalletTxDetail) GetReceipt() *ReceiptData {
	if m != nil {
		return m.Receipt
	}
	return nil
}

func (m *WalletTxDetail) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *WalletTxDetail) GetIndex() int64 {
	if m != nil {
		return m.Index
	}
	return 0
}

func (m *WalletTxDetail) GetBlocktime() int64 {
	if m != nil {
		return m.Blocktime
	}
	return 0
}

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

func (m *WalletTxDetail) GetFromaddr() string {
	if m != nil {
		return m.Fromaddr
	}
	return ""
}

func (m *WalletTxDetail) GetTxhash() []byte {
	if m != nil {
		return m.Txhash
	}
	return nil
}

func (m *WalletTxDetail) GetActionName() string {
	if m != nil {
		return m.ActionName
	}
	return ""
}

func (m *WalletTxDetail) GetPayload() []byte {
	if m != nil {
		return m.Payload
	}
	return nil
}

type WalletTxDetails struct {
	TxDetails            []*WalletTxDetail `protobuf:"bytes,1,rep,name=txDetails,proto3" json:"txDetails,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

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

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

var xxx_messageInfo_WalletTxDetails proto.InternalMessageInfo

func (m *WalletTxDetails) GetTxDetails() []*WalletTxDetail {
	if m != nil {
		return m.TxDetails
	}
	return nil
}

//钱包模块存贮的账户信息
// 	 privkey : 账户地址对应的私钥
//	 label :账户地址对应的标签
//	 addr :账户地址
//	 timeStamp :创建账户时的时标
type WalletAccountStore struct {
	Privkey              string   `protobuf:"bytes,1,opt,name=privkey,proto3" json:"privkey,omitempty"`
	Label                string   `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	Addr                 string   `protobuf:"bytes,3,opt,name=addr,proto3" json:"addr,omitempty"`
	TimeStamp            string   `protobuf:"bytes,4,opt,name=timeStamp,proto3" json:"timeStamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_WalletAccountStore proto.InternalMessageInfo

func (m *WalletAccountStore) GetPrivkey() string {
	if m != nil {
		return m.Privkey
	}
	return ""
}

func (m *WalletAccountStore) GetLabel() string {
	if m != nil {
		return m.Label
	}
	return ""
}

func (m *WalletAccountStore) GetAddr() string {
	if m != nil {
		return m.Addr
	}
	return ""
}

func (m *WalletAccountStore) GetTimeStamp() string {
	if m != nil {
		return m.TimeStamp
	}
	return ""
}

//钱包模块通过一个随机值对钱包密码加密
// 	 pwHash : 对钱包密码和一个随机值组合进行哈希计算
//	 randstr :对钱包密码加密的一个随机值
type WalletPwHash struct {
	PwHash               []byte   `protobuf:"bytes,1,opt,name=pwHash,proto3" json:"pwHash,omitempty"`
	Randstr              string   `protobuf:"bytes,2,opt,name=randstr,proto3" json:"randstr,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_WalletPwHash proto.InternalMessageInfo

func (m *WalletPwHash) GetPwHash() []byte {
	if m != nil {
		return m.PwHash
	}
	return nil
}

func (m *WalletPwHash) GetRandstr() string {
	if m != nil {
		return m.Randstr
	}
	return ""
}

//钱包当前的状态
// 	 isWalletLock : 钱包是否锁状态，true锁定，false解锁
//	 isAutoMining :钱包是否开启挖矿功能，true开启挖矿，false关闭挖矿
// 	 isHasSeed : 钱包是否有种子，true已有，false没有
//	 isTicketLock :钱包挖矿买票锁状态，true锁定，false解锁，只能用于挖矿转账
type WalletStatus struct {
	IsWalletLock         bool     `protobuf:"varint,1,opt,name=isWalletLock,proto3" json:"isWalletLock,omitempty"`
	IsAutoMining         bool     `protobuf:"varint,2,opt,name=isAutoMining,proto3" json:"isAutoMining,omitempty"`
	IsHasSeed            bool     `protobuf:"varint,3,opt,name=isHasSeed,proto3" json:"isHasSeed,omitempty"`
	IsTicketLock         bool     `protobuf:"varint,4,opt,name=isTicketLock,proto3" json:"isTicketLock,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_WalletStatus proto.InternalMessageInfo

func (m *WalletStatus) GetIsWalletLock() bool {
	if m != nil {
		return m.IsWalletLock
	}
	return false
}

func (m *WalletStatus) GetIsAutoMining() bool {
	if m != nil {
		return m.IsAutoMining
	}
	return false
}

func (m *WalletStatus) GetIsHasSeed() bool {
	if m != nil {
		return m.IsHasSeed
	}
	return false
}

func (m *WalletStatus) GetIsTicketLock() bool {
	if m != nil {
		return m.IsTicketLock
	}
	return false
}

type WalletAccounts struct {
	Wallets              []*WalletAccount `protobuf:"bytes,1,rep,name=wallets,proto3" json:"wallets,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

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

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

var xxx_messageInfo_WalletAccounts proto.InternalMessageInfo

func (m *WalletAccounts) GetWallets() []*WalletAccount {
	if m != nil {
		return m.Wallets
	}
	return nil
}

type WalletAccount struct {
	Acc                  *Account `protobuf:"bytes,1,opt,name=acc,proto3" json:"acc,omitempty"`
	Label                string   `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_WalletAccount proto.InternalMessageInfo

func (m *WalletAccount) GetAcc() *Account {
	if m != nil {
		return m.Acc
	}
	return nil
}

func (m *WalletAccount) GetLabel() string {
	if m != nil {
		return m.Label
	}
	return ""
}

//钱包解锁
// 	 passwd : 钱包密码
//	 timeout :钱包解锁时间，0，一直解锁，非0值，超时之后继续锁定
//	 walletOrTicket :解锁整个钱包还是只解锁挖矿买票功能，1只解锁挖矿买票，0解锁整个钱包
type WalletUnLock struct {
	Passwd               string   `protobuf:"bytes,1,opt,name=passwd,proto3" json:"passwd,omitempty"`
	Timeout              int64    `protobuf:"varint,2,opt,name=timeout,proto3" json:"timeout,omitempty"`
	WalletOrTicket       bool     `protobuf:"varint,3,opt,name=walletOrTicket,proto3" json:"walletOrTicket,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_WalletUnLock proto.InternalMessageInfo

func (m *WalletUnLock) GetPasswd() string {
	if m != nil {
		return m.Passwd
	}
	return ""
}

func (m *WalletUnLock) GetTimeout() int64 {
	if m != nil {
		return m.Timeout
	}
	return 0
}

func (m *WalletUnLock) GetWalletOrTicket() bool {
	if m != nil {
		return m.WalletOrTicket
	}
	return false
}

type GenSeedLang struct {
	Lang                 int32    `protobuf:"varint,1,opt,name=lang,proto3" json:"lang,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_GenSeedLang proto.InternalMessageInfo

func (m *GenSeedLang) GetLang() int32 {
	if m != nil {
		return m.Lang
	}
	return 0
}

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

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

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

var xxx_messageInfo_GetSeedByPw proto.InternalMessageInfo

func (m *GetSeedByPw) GetPasswd() string {
	if m != nil {
		return m.Passwd
	}
	return ""
}

//存储钱包的种子
// 	 seed : 钱包种子
//	 passwd :钱包密码
type SaveSeedByPw struct {
	Seed                 string   `protobuf:"bytes,1,opt,name=seed,proto3" json:"seed,omitempty"`
	Passwd               string   `protobuf:"bytes,2,opt,name=passwd,proto3" json:"passwd,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_SaveSeedByPw proto.InternalMessageInfo

func (m *SaveSeedByPw) GetSeed() string {
	if m != nil {
		return m.Seed
	}
	return ""
}

func (m *SaveSeedByPw) GetPasswd() string {
	if m != nil {
		return m.Passwd
	}
	return ""
}

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

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

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

var xxx_messageInfo_ReplySeed proto.InternalMessageInfo

func (m *ReplySeed) GetSeed() string {
	if m != nil {
		return m.Seed
	}
	return ""
}

type ReqWalletSetPasswd struct {
	OldPass              string   `protobuf:"bytes,1,opt,name=oldPass,proto3" json:"oldPass,omitempty"`
	NewPass              string   `protobuf:"bytes,2,opt,name=newPass,proto3" json:"newPass,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_ReqWalletSetPasswd proto.InternalMessageInfo

func (m *ReqWalletSetPasswd) GetOldPass() string {
	if m != nil {
		return m.OldPass
	}
	return ""
}

func (m *ReqWalletSetPasswd) GetNewPass() string {
	if m != nil {
		return m.NewPass
	}
	return ""
}

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

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

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

var xxx_messageInfo_ReqNewAccount proto.InternalMessageInfo

func (m *ReqNewAccount) GetLabel() string {
	if m != nil {
		return m.Label
	}
	return ""
}

//获取钱包交易的详细信息
// 	 fromTx : []byte( Sprintf("%018d", height*100000 + index)，
//				表示从高度 height 中的 index 开始获取交易列表；
//			    第一次传参为空，获取最新的交易。)
//	 count :获取交易列表的个数。
//	 direction :查找方式；0，上一页；1，下一页。
type ReqWalletTransactionList struct {
	FromTx               []byte   `protobuf:"bytes,1,opt,name=fromTx,proto3" json:"fromTx,omitempty"`
	Count                int32    `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
	Direction            int32    `protobuf:"varint,3,opt,name=direction,proto3" json:"direction,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_ReqWalletTransactionList proto.InternalMessageInfo

func (m *ReqWalletTransactionList) GetFromTx() []byte {
	if m != nil {
		return m.FromTx
	}
	return nil
}

func (m *ReqWalletTransactionList) GetCount() int32 {
	if m != nil {
		return m.Count
	}
	return 0
}

func (m *ReqWalletTransactionList) GetDirection() int32 {
	if m != nil {
		return m.Direction
	}
	return 0
}

type ReqWalletImportPrivkey struct {
	// bitcoin 的私钥格式
	Privkey              string   `protobuf:"bytes,1,opt,name=privkey,proto3" json:"privkey,omitempty"`
	Label                string   `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_ReqWalletImportPrivkey proto.InternalMessageInfo

func (m *ReqWalletImportPrivkey) GetPrivkey() string {
	if m != nil {
		return m.Privkey
	}
	return ""
}

func (m *ReqWalletImportPrivkey) GetLabel() string {
	if m != nil {
		return m.Label
	}
	return ""
}

//发送交易
// 	 from : 打出地址
//	 to :接受地址
// 	 amount : 转账额度
//	 note :转账备注
type ReqWalletSendToAddress struct {
	From                 string   `protobuf:"bytes,1,opt,name=from,proto3" json:"from,omitempty"`
	To                   string   `protobuf:"bytes,2,opt,name=to,proto3" json:"to,omitempty"`
	Amount               int64    `protobuf:"varint,3,opt,name=amount,proto3" json:"amount,omitempty"`
	Note                 []byte   `protobuf:"bytes,4,opt,name=note,proto3" json:"note,omitempty"`
	IsToken              bool     `protobuf:"varint,5,opt,name=isToken,proto3" json:"isToken,omitempty"`
	TokenSymbol          string   `protobuf:"bytes,6,opt,name=tokenSymbol,proto3" json:"tokenSymbol,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_ReqWalletSendToAddress proto.InternalMessageInfo

func (m *ReqWalletSendToAddress) GetFrom() string {
	if m != nil {
		return m.From
	}
	return ""
}

func (m *ReqWalletSendToAddress) GetTo() string {
	if m != nil {
		return m.To
	}
	return ""
}

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

func (m *ReqWalletSendToAddress) GetNote() []byte {
	if m != nil {
		return m.Note
	}
	return nil
}

func (m *ReqWalletSendToAddress) GetIsToken() bool {
	if m != nil {
		return m.IsToken
	}
	return false
}

func (m *ReqWalletSendToAddress) GetTokenSymbol() string {
	if m != nil {
		return m.TokenSymbol
	}
	return ""
}

type ReqWalletSetFee struct {
	Amount               int64    `protobuf:"varint,1,opt,name=amount,proto3" json:"amount,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReqWalletSetFee) Reset()         { *m = ReqWalletSetFee{} }
func (m *ReqWalletSetFee) String() string { return proto.CompactTextString(m) }
func (*ReqWalletSetFee) ProtoMessage()    {}
func (*ReqWalletSetFee) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{17}
}

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

var xxx_messageInfo_ReqWalletSetFee proto.InternalMessageInfo

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

type ReqWalletSetLabel struct {
	Addr                 string   `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
	Label                string   `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReqWalletSetLabel) Reset()         { *m = ReqWalletSetLabel{} }
func (m *ReqWalletSetLabel) String() string { return proto.CompactTextString(m) }
func (*ReqWalletSetLabel) ProtoMessage()    {}
func (*ReqWalletSetLabel) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{18}
}

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

var xxx_messageInfo_ReqWalletSetLabel proto.InternalMessageInfo

func (m *ReqWalletSetLabel) GetAddr() string {
	if m != nil {
		return m.Addr
	}
	return ""
}

func (m *ReqWalletSetLabel) GetLabel() string {
	if m != nil {
		return m.Label
	}
	return ""
}

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

func (m *ReqWalletMergeBalance) Reset()         { *m = ReqWalletMergeBalance{} }
func (m *ReqWalletMergeBalance) String() string { return proto.CompactTextString(m) }
func (*ReqWalletMergeBalance) ProtoMessage()    {}
func (*ReqWalletMergeBalance) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{19}
}

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

var xxx_messageInfo_ReqWalletMergeBalance proto.InternalMessageInfo

func (m *ReqWalletMergeBalance) GetTo() string {
	if m != nil {
		return m.To
	}
	return ""
}

type ReqTokenPreCreate struct {
	CreatorAddr          string   `protobuf:"bytes,1,opt,name=creator_addr,json=creatorAddr,proto3" json:"creator_addr,omitempty"`
	Name                 string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Symbol               string   `protobuf:"bytes,3,opt,name=symbol,proto3" json:"symbol,omitempty"`
	Introduction         string   `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction,omitempty"`
	OwnerAddr            string   `protobuf:"bytes,5,opt,name=owner_addr,json=ownerAddr,proto3" json:"owner_addr,omitempty"`
	Total                int64    `protobuf:"varint,6,opt,name=total,proto3" json:"total,omitempty"`
	Price                int64    `protobuf:"varint,7,opt,name=price,proto3" json:"price,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReqTokenPreCreate) Reset()         { *m = ReqTokenPreCreate{} }
func (m *ReqTokenPreCreate) String() string { return proto.CompactTextString(m) }
func (*ReqTokenPreCreate) ProtoMessage()    {}
func (*ReqTokenPreCreate) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{20}
}

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

var xxx_messageInfo_ReqTokenPreCreate proto.InternalMessageInfo

func (m *ReqTokenPreCreate) GetCreatorAddr() string {
	if m != nil {
		return m.CreatorAddr
	}
	return ""
}

func (m *ReqTokenPreCreate) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *ReqTokenPreCreate) GetSymbol() string {
	if m != nil {
		return m.Symbol
	}
	return ""
}

func (m *ReqTokenPreCreate) GetIntroduction() string {
	if m != nil {
		return m.Introduction
	}
	return ""
}

func (m *ReqTokenPreCreate) GetOwnerAddr() string {
	if m != nil {
		return m.OwnerAddr
	}
	return ""
}

func (m *ReqTokenPreCreate) GetTotal() int64 {
	if m != nil {
		return m.Total
	}
	return 0
}

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

type ReqTokenFinishCreate struct {
	FinisherAddr         string   `protobuf:"bytes,1,opt,name=finisher_addr,json=finisherAddr,proto3" json:"finisher_addr,omitempty"`
	Symbol               string   `protobuf:"bytes,2,opt,name=symbol,proto3" json:"symbol,omitempty"`
	OwnerAddr            string   `protobuf:"bytes,3,opt,name=owner_addr,json=ownerAddr,proto3" json:"owner_addr,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReqTokenFinishCreate) Reset()         { *m = ReqTokenFinishCreate{} }
func (m *ReqTokenFinishCreate) String() string { return proto.CompactTextString(m) }
func (*ReqTokenFinishCreate) ProtoMessage()    {}
func (*ReqTokenFinishCreate) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{21}
}

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

var xxx_messageInfo_ReqTokenFinishCreate proto.InternalMessageInfo

func (m *ReqTokenFinishCreate) GetFinisherAddr() string {
	if m != nil {
		return m.FinisherAddr
	}
	return ""
}

func (m *ReqTokenFinishCreate) GetSymbol() string {
	if m != nil {
		return m.Symbol
	}
	return ""
}

func (m *ReqTokenFinishCreate) GetOwnerAddr() string {
	if m != nil {
		return m.OwnerAddr
	}
	return ""
}

type ReqTokenRevokeCreate struct {
	RevokerAddr          string   `protobuf:"bytes,1,opt,name=revoker_addr,json=revokerAddr,proto3" json:"revoker_addr,omitempty"`
	Symbol               string   `protobuf:"bytes,2,opt,name=symbol,proto3" json:"symbol,omitempty"`
	OwnerAddr            string   `protobuf:"bytes,3,opt,name=owner_addr,json=ownerAddr,proto3" json:"owner_addr,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReqTokenRevokeCreate) Reset()         { *m = ReqTokenRevokeCreate{} }
func (m *ReqTokenRevokeCreate) String() string { return proto.CompactTextString(m) }
func (*ReqTokenRevokeCreate) ProtoMessage()    {}
func (*ReqTokenRevokeCreate) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{22}
}

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

var xxx_messageInfo_ReqTokenRevokeCreate proto.InternalMessageInfo

func (m *ReqTokenRevokeCreate) GetRevokerAddr() string {
	if m != nil {
		return m.RevokerAddr
	}
	return ""
}

func (m *ReqTokenRevokeCreate) GetSymbol() string {
	if m != nil {
		return m.Symbol
	}
	return ""
}

func (m *ReqTokenRevokeCreate) GetOwnerAddr() string {
	if m != nil {
		return m.OwnerAddr
	}
	return ""
}

type ReqModifyConfig struct {
	Key                  string   `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Op                   string   `protobuf:"bytes,2,opt,name=op,proto3" json:"op,omitempty"`
	Value                string   `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
	Modifier             string   `protobuf:"bytes,4,opt,name=modifier,proto3" json:"modifier,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReqModifyConfig) Reset()         { *m = ReqModifyConfig{} }
func (m *ReqModifyConfig) String() string { return proto.CompactTextString(m) }
func (*ReqModifyConfig) ProtoMessage()    {}
func (*ReqModifyConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{23}
}

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

var xxx_messageInfo_ReqModifyConfig proto.InternalMessageInfo

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

func (m *ReqModifyConfig) GetOp() string {
	if m != nil {
		return m.Op
	}
	return ""
}

func (m *ReqModifyConfig) GetValue() string {
	if m != nil {
		return m.Value
	}
	return ""
}

func (m *ReqModifyConfig) GetModifier() string {
	if m != nil {
		return m.Modifier
	}
	return ""
}

type ReqSignRawTx struct {
	Addr    string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
	Privkey string `protobuf:"bytes,2,opt,name=privkey,proto3" json:"privkey,omitempty"`
	TxHex   string `protobuf:"bytes,3,opt,name=txHex,proto3" json:"txHex,omitempty"`
	Expire  string `protobuf:"bytes,4,opt,name=expire,proto3" json:"expire,omitempty"`
	Index   int32  `protobuf:"varint,5,opt,name=index,proto3" json:"index,omitempty"`
	// 签名的模式类型
	// 0：普通交易
	// 1：隐私交易
	// int32  mode  = 6;
	Token                string   `protobuf:"bytes,7,opt,name=token,proto3" json:"token,omitempty"`
	Fee                  int64    `protobuf:"varint,8,opt,name=fee,proto3" json:"fee,omitempty"`
	NewExecer            []byte   `protobuf:"bytes,9,opt,name=newExecer,proto3" json:"newExecer,omitempty"`
	NewToAddr            string   `protobuf:"bytes,10,opt,name=newToAddr,proto3" json:"newToAddr,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReqSignRawTx) Reset()         { *m = ReqSignRawTx{} }
func (m *ReqSignRawTx) String() string { return proto.CompactTextString(m) }
func (*ReqSignRawTx) ProtoMessage()    {}
func (*ReqSignRawTx) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{24}
}

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

var xxx_messageInfo_ReqSignRawTx proto.InternalMessageInfo

func (m *ReqSignRawTx) GetAddr() string {
	if m != nil {
		return m.Addr
	}
	return ""
}

func (m *ReqSignRawTx) GetPrivkey() string {
	if m != nil {
		return m.Privkey
	}
	return ""
}

func (m *ReqSignRawTx) GetTxHex() string {
	if m != nil {
		return m.TxHex
	}
	return ""
}

func (m *ReqSignRawTx) GetExpire() string {
	if m != nil {
		return m.Expire
	}
	return ""
}

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

func (m *ReqSignRawTx) GetToken() string {
	if m != nil {
		return m.Token
	}
	return ""
}

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

func (m *ReqSignRawTx) GetNewExecer() []byte {
	if m != nil {
		return m.NewExecer
	}
	return nil
}

func (m *ReqSignRawTx) GetNewToAddr() string {
	if m != nil {
		return m.NewToAddr
	}
	return ""
}

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

func (m *ReplySignRawTx) Reset()         { *m = ReplySignRawTx{} }
func (m *ReplySignRawTx) String() string { return proto.CompactTextString(m) }
func (*ReplySignRawTx) ProtoMessage()    {}
func (*ReplySignRawTx) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{25}
}

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

var xxx_messageInfo_ReplySignRawTx proto.InternalMessageInfo

func (m *ReplySignRawTx) GetTxHex() string {
	if m != nil {
		return m.TxHex
	}
	return ""
}

type ReportErrEvent struct {
	Frommodule           string   `protobuf:"bytes,1,opt,name=frommodule,proto3" json:"frommodule,omitempty"`
	Tomodule             string   `protobuf:"bytes,2,opt,name=tomodule,proto3" json:"tomodule,omitempty"`
	Error                string   `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReportErrEvent) Reset()         { *m = ReportErrEvent{} }
func (m *ReportErrEvent) String() string { return proto.CompactTextString(m) }
func (*ReportErrEvent) ProtoMessage()    {}
func (*ReportErrEvent) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{26}
}

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

var xxx_messageInfo_ReportErrEvent proto.InternalMessageInfo

func (m *ReportErrEvent) GetFrommodule() string {
	if m != nil {
		return m.Frommodule
	}
	return ""
}

func (m *ReportErrEvent) GetTomodule() string {
	if m != nil {
		return m.Tomodule
	}
	return ""
}

func (m *ReportErrEvent) GetError() string {
	if m != nil {
		return m.Error
	}
	return ""
}

type Int32 struct {
	Data                 int32    `protobuf:"varint,1,opt,name=data,proto3" json:"data,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Int32) Reset()         { *m = Int32{} }
func (m *Int32) String() string { return proto.CompactTextString(m) }
func (*Int32) ProtoMessage()    {}
func (*Int32) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{27}
}

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

var xxx_messageInfo_Int32 proto.InternalMessageInfo

func (m *Int32) GetData() int32 {
	if m != nil {
		return m.Data
	}
	return 0
}

// 某些交易需要存在一些复杂的算法，所以需要请求服务器协助构建交易，返回对应交易哈希值，后续签名可以根据此哈希值进行处理
type ReqCreateTransaction struct {
	Tokenname string `protobuf:"bytes,1,opt,name=tokenname,proto3" json:"tokenname,omitempty"`
	// 构建交易类型
	// 0：普通的交易（暂不支持）
	// 1：隐私交易 公开->隐私
	// 2：隐私交易 隐私->隐私
	// 3：隐私交易 隐私->公开
	Type   int32  `protobuf:"varint,2,opt,name=type,proto3" json:"type,omitempty"`
	Amount int64  `protobuf:"varint,3,opt,name=amount,proto3" json:"amount,omitempty"`
	Note   []byte `protobuf:"bytes,4,opt,name=note,proto3" json:"note,omitempty"`
	// 普通交易的发送方
	From string `protobuf:"bytes,5,opt,name=from,proto3" json:"from,omitempty"`
	// 普通交易的接收方
	To string `protobuf:"bytes,6,opt,name=to,proto3" json:"to,omitempty"`
	// 隐私交易，接收方的公钥对
	Pubkeypair           string   `protobuf:"bytes,10,opt,name=pubkeypair,proto3" json:"pubkeypair,omitempty"`
	Mixcount             int32    `protobuf:"varint,11,opt,name=mixcount,proto3" json:"mixcount,omitempty"`
	Expire               int64    `protobuf:"varint,12,opt,name=expire,proto3" json:"expire,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ReqCreateTransaction) Reset()         { *m = ReqCreateTransaction{} }
func (m *ReqCreateTransaction) String() string { return proto.CompactTextString(m) }
func (*ReqCreateTransaction) ProtoMessage()    {}
func (*ReqCreateTransaction) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{28}
}

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

var xxx_messageInfo_ReqCreateTransaction proto.InternalMessageInfo

func (m *ReqCreateTransaction) GetTokenname() string {
	if m != nil {
		return m.Tokenname
	}
	return ""
}

func (m *ReqCreateTransaction) GetType() int32 {
	if m != nil {
		return m.Type
	}
	return 0
}

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

func (m *ReqCreateTransaction) GetNote() []byte {
	if m != nil {
		return m.Note
	}
	return nil
}

func (m *ReqCreateTransaction) GetFrom() string {
	if m != nil {
		return m.From
	}
	return ""
}

func (m *ReqCreateTransaction) GetTo() string {
	if m != nil {
		return m.To
	}
	return ""
}

func (m *ReqCreateTransaction) GetPubkeypair() string {
	if m != nil {
		return m.Pubkeypair
	}
	return ""
}

func (m *ReqCreateTransaction) GetMixcount() int32 {
	if m != nil {
		return m.Mixcount
	}
	return 0
}

func (m *ReqCreateTransaction) GetExpire() int64 {
	if m != nil {
		return m.Expire
	}
	return 0
}

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

func (m *ReqAccountList) Reset()         { *m = ReqAccountList{} }
func (m *ReqAccountList) String() string { return proto.CompactTextString(m) }
func (*ReqAccountList) ProtoMessage()    {}
func (*ReqAccountList) Descriptor() ([]byte, []int) {
	return fileDescriptor_b88fd140af4deb6f, []int{29}
}

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

var xxx_messageInfo_ReqAccountList proto.InternalMessageInfo

func (m *ReqAccountList) GetWithoutBalance() bool {
	if m != nil {
		return m.WithoutBalance
	}
	return false
}

func init() {
	proto.RegisterType((*WalletTxDetail)(nil), "types.WalletTxDetail")
	proto.RegisterType((*WalletTxDetails)(nil), "types.WalletTxDetails")
	proto.RegisterType((*WalletAccountStore)(nil), "types.WalletAccountStore")
	proto.RegisterType((*WalletPwHash)(nil), "types.WalletPwHash")
	proto.RegisterType((*WalletStatus)(nil), "types.WalletStatus")
	proto.RegisterType((*WalletAccounts)(nil), "types.WalletAccounts")
	proto.RegisterType((*WalletAccount)(nil), "types.WalletAccount")
	proto.RegisterType((*WalletUnLock)(nil), "types.WalletUnLock")
	proto.RegisterType((*GenSeedLang)(nil), "types.GenSeedLang")
	proto.RegisterType((*GetSeedByPw)(nil), "types.GetSeedByPw")
	proto.RegisterType((*SaveSeedByPw)(nil), "types.SaveSeedByPw")
	proto.RegisterType((*ReplySeed)(nil), "types.ReplySeed")
	proto.RegisterType((*ReqWalletSetPasswd)(nil), "types.ReqWalletSetPasswd")
	proto.RegisterType((*ReqNewAccount)(nil), "types.ReqNewAccount")
	proto.RegisterType((*ReqWalletTransactionList)(nil), "types.ReqWalletTransactionList")
	proto.RegisterType((*ReqWalletImportPrivkey)(nil), "types.ReqWalletImportPrivkey")
	proto.RegisterType((*ReqWalletSendToAddress)(nil), "types.ReqWalletSendToAddress")
	proto.RegisterType((*ReqWalletSetFee)(nil), "types.ReqWalletSetFee")
	proto.RegisterType((*ReqWalletSetLabel)(nil), "types.ReqWalletSetLabel")
	proto.RegisterType((*ReqWalletMergeBalance)(nil), "types.ReqWalletMergeBalance")
	proto.RegisterType((*ReqTokenPreCreate)(nil), "types.ReqTokenPreCreate")
	proto.RegisterType((*ReqTokenFinishCreate)(nil), "types.ReqTokenFinishCreate")
	proto.RegisterType((*ReqTokenRevokeCreate)(nil), "types.ReqTokenRevokeCreate")
	proto.RegisterType((*ReqModifyConfig)(nil), "types.ReqModifyConfig")
	proto.RegisterType((*ReqSignRawTx)(nil), "types.ReqSignRawTx")
	proto.RegisterType((*ReplySignRawTx)(nil), "types.ReplySignRawTx")
	proto.RegisterType((*ReportErrEvent)(nil), "types.ReportErrEvent")
	proto.RegisterType((*Int32)(nil), "types.Int32")
	proto.RegisterType((*ReqCreateTransaction)(nil), "types.ReqCreateTransaction")
	proto.RegisterType((*ReqAccountList)(nil), "types.ReqAccountList")
}

func init() { proto.RegisterFile("wallet.proto", fileDescriptor_b88fd140af4deb6f) }

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