github.com/aergoio/aergo@v1.3.1/types/p2p.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // source: p2p.proto
     3  
     4  package types
     5  
     6  import proto "github.com/golang/protobuf/proto"
     7  import fmt "fmt"
     8  import math "math"
     9  
    10  // Reference imports to suppress errors if they are not otherwise used.
    11  var _ = proto.Marshal
    12  var _ = fmt.Errorf
    13  var _ = math.Inf
    14  
    15  // This is a compile-time assertion to ensure that this generated file
    16  // is compatible with the proto package it is being compiled against.
    17  // A compilation error at this line likely means your copy of the
    18  // proto package needs to be updated.
    19  const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
    20  
    21  // Not all response contains ResultStatus value.
    22  // names from gRPC status
    23  type ResultStatus int32
    24  
    25  const (
    26  	// OK is returned on success.
    27  	ResultStatus_OK ResultStatus = 0
    28  	// CANCELED when operation was canceled (typically by the caller).
    29  	ResultStatus_CANCELED ResultStatus = 1
    30  	// UNKNOWN
    31  	ResultStatus_UNKNOWN ResultStatus = 2
    32  	// INVALID_ARGUMENT is missing or wrong value of argument
    33  	ResultStatus_INVALID_ARGUMENT ResultStatus = 3
    34  	// DEADLINE_EXCEEDED timeout
    35  	ResultStatus_DEADLINE_EXCEEDED ResultStatus = 4
    36  	// NOT_FOUND
    37  	ResultStatus_NOT_FOUND ResultStatus = 5
    38  	// ALREADY_EXISTS
    39  	ResultStatus_ALREADY_EXISTS ResultStatus = 6
    40  	// PERMISSION_DENIED
    41  	ResultStatus_PERMISSION_DENIED ResultStatus = 7
    42  	//
    43  	ResultStatus_RESOURCE_EXHAUSTED ResultStatus = 8
    44  	//
    45  	ResultStatus_FAILED_PRECONDITION ResultStatus = 9
    46  	// ABORTED
    47  	ResultStatus_ABORTED ResultStatus = 10
    48  	//
    49  	ResultStatus_OUT_OF_RANGE ResultStatus = 11
    50  	// UNIMPLEMENTED indicates operation is not implemented or not
    51  	// supported/enabled in this service.
    52  	ResultStatus_UNIMPLEMENTED ResultStatus = 12
    53  	// INTERNAL errors. Means some invariants expected by underlying
    54  	// system has been broken. If you see one of these errors,
    55  	// something is very broken.
    56  	ResultStatus_INTERNAL ResultStatus = 13
    57  	// Unavailable indicates the service is currently unavailable.
    58  	// This is a most likely a transient condition and may be corrected
    59  	// by retrying with a backoff.
    60  	//
    61  	// See litmus test above for deciding between FailedPrecondition,
    62  	// Aborted, and Unavailable.
    63  	ResultStatus_UNAVAILABLE ResultStatus = 14
    64  	ResultStatus_DATA_LOSS   ResultStatus = 15
    65  	// UNAUTHENTICATED indicates the request does not have valid
    66  	// authentication credentials for the operation.
    67  	ResultStatus_UNAUTHENTICATED ResultStatus = 16
    68  )
    69  
    70  var ResultStatus_name = map[int32]string{
    71  	0:  "OK",
    72  	1:  "CANCELED",
    73  	2:  "UNKNOWN",
    74  	3:  "INVALID_ARGUMENT",
    75  	4:  "DEADLINE_EXCEEDED",
    76  	5:  "NOT_FOUND",
    77  	6:  "ALREADY_EXISTS",
    78  	7:  "PERMISSION_DENIED",
    79  	8:  "RESOURCE_EXHAUSTED",
    80  	9:  "FAILED_PRECONDITION",
    81  	10: "ABORTED",
    82  	11: "OUT_OF_RANGE",
    83  	12: "UNIMPLEMENTED",
    84  	13: "INTERNAL",
    85  	14: "UNAVAILABLE",
    86  	15: "DATA_LOSS",
    87  	16: "UNAUTHENTICATED",
    88  }
    89  
    90  var ResultStatus_value = map[string]int32{
    91  	"OK":                  0,
    92  	"CANCELED":            1,
    93  	"UNKNOWN":             2,
    94  	"INVALID_ARGUMENT":    3,
    95  	"DEADLINE_EXCEEDED":   4,
    96  	"NOT_FOUND":           5,
    97  	"ALREADY_EXISTS":      6,
    98  	"PERMISSION_DENIED":   7,
    99  	"RESOURCE_EXHAUSTED":  8,
   100  	"FAILED_PRECONDITION": 9,
   101  	"ABORTED":             10,
   102  	"OUT_OF_RANGE":        11,
   103  	"UNIMPLEMENTED":       12,
   104  	"INTERNAL":            13,
   105  	"UNAVAILABLE":         14,
   106  	"DATA_LOSS":           15,
   107  	"UNAUTHENTICATED":     16,
   108  }
   109  
   110  func (x ResultStatus) String() string {
   111  	return proto.EnumName(ResultStatus_name, int32(x))
   112  }
   113  
   114  func (ResultStatus) EnumDescriptor() ([]byte, []int) {
   115  	return fileDescriptor_e7fdddb109e6467a, []int{0}
   116  }
   117  
   118  // MsgHeader contains common properties of all p2p messages
   119  type MsgHeader struct {
   120  	// Deprecated client version.
   121  	ClientVersion string `protobuf:"bytes,1,opt,name=clientVersion,proto3" json:"clientVersion,omitempty"`
   122  	// unix time
   123  	Timestamp int64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
   124  	// allows requesters to use request data when processing a response
   125  	Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
   126  	// Gossip is flag to have receiver peer gossip the message to neighbors
   127  	// Deprecated whether to gossip other peers is determined by subprotocol since version 0.3.0 .
   128  	Gossip bool `protobuf:"varint,4,opt,name=gossip,proto3" json:"gossip,omitempty"`
   129  	// PeerID is id of node that created the message (not the peer that may have sent it). =base58(mh(sha256(nodePubKey)))
   130  	PeerID []byte `protobuf:"bytes,5,opt,name=peerID,proto3" json:"peerID,omitempty"`
   131  	// nodePubKey Authoring node Secp256k1 public key (32bytes) - protobufs serielized
   132  	NodePubKey []byte `protobuf:"bytes,6,opt,name=nodePubKey,proto3" json:"nodePubKey,omitempty"`
   133  	// signature of message data + method specific data by message authoring node. format: string([]bytes)
   134  	Sign []byte `protobuf:"bytes,7,opt,name=sign,proto3" json:"sign,omitempty"`
   135  	// sub category of message. the receiving peer determines how to deserialize payload data and whether to spread messages to other peers
   136  	Subprotocol uint32 `protobuf:"varint,8,opt,name=subprotocol,proto3" json:"subprotocol,omitempty"`
   137  	// size of bytes of the payload
   138  	Length               uint32   `protobuf:"varint,9,opt,name=length,proto3" json:"length,omitempty"`
   139  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   140  	XXX_unrecognized     []byte   `json:"-"`
   141  	XXX_sizecache        int32    `json:"-"`
   142  }
   143  
   144  func (m *MsgHeader) Reset()         { *m = MsgHeader{} }
   145  func (m *MsgHeader) String() string { return proto.CompactTextString(m) }
   146  func (*MsgHeader) ProtoMessage()    {}
   147  func (*MsgHeader) Descriptor() ([]byte, []int) {
   148  	return fileDescriptor_e7fdddb109e6467a, []int{0}
   149  }
   150  func (m *MsgHeader) XXX_Unmarshal(b []byte) error {
   151  	return xxx_messageInfo_MsgHeader.Unmarshal(m, b)
   152  }
   153  func (m *MsgHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   154  	return xxx_messageInfo_MsgHeader.Marshal(b, m, deterministic)
   155  }
   156  func (m *MsgHeader) XXX_Merge(src proto.Message) {
   157  	xxx_messageInfo_MsgHeader.Merge(m, src)
   158  }
   159  func (m *MsgHeader) XXX_Size() int {
   160  	return xxx_messageInfo_MsgHeader.Size(m)
   161  }
   162  func (m *MsgHeader) XXX_DiscardUnknown() {
   163  	xxx_messageInfo_MsgHeader.DiscardUnknown(m)
   164  }
   165  
   166  var xxx_messageInfo_MsgHeader proto.InternalMessageInfo
   167  
   168  func (m *MsgHeader) GetClientVersion() string {
   169  	if m != nil {
   170  		return m.ClientVersion
   171  	}
   172  	return ""
   173  }
   174  
   175  func (m *MsgHeader) GetTimestamp() int64 {
   176  	if m != nil {
   177  		return m.Timestamp
   178  	}
   179  	return 0
   180  }
   181  
   182  func (m *MsgHeader) GetId() string {
   183  	if m != nil {
   184  		return m.Id
   185  	}
   186  	return ""
   187  }
   188  
   189  func (m *MsgHeader) GetGossip() bool {
   190  	if m != nil {
   191  		return m.Gossip
   192  	}
   193  	return false
   194  }
   195  
   196  func (m *MsgHeader) GetPeerID() []byte {
   197  	if m != nil {
   198  		return m.PeerID
   199  	}
   200  	return nil
   201  }
   202  
   203  func (m *MsgHeader) GetNodePubKey() []byte {
   204  	if m != nil {
   205  		return m.NodePubKey
   206  	}
   207  	return nil
   208  }
   209  
   210  func (m *MsgHeader) GetSign() []byte {
   211  	if m != nil {
   212  		return m.Sign
   213  	}
   214  	return nil
   215  }
   216  
   217  func (m *MsgHeader) GetSubprotocol() uint32 {
   218  	if m != nil {
   219  		return m.Subprotocol
   220  	}
   221  	return 0
   222  }
   223  
   224  func (m *MsgHeader) GetLength() uint32 {
   225  	if m != nil {
   226  		return m.Length
   227  	}
   228  	return 0
   229  }
   230  
   231  // Deprecated P2PMessage is data structure for aergo v0.2 or earlier. This structure is not used anymore since v0.3.0.
   232  type P2PMessage struct {
   233  	Header               *MsgHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
   234  	Data                 []byte     `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
   235  	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
   236  	XXX_unrecognized     []byte     `json:"-"`
   237  	XXX_sizecache        int32      `json:"-"`
   238  }
   239  
   240  func (m *P2PMessage) Reset()         { *m = P2PMessage{} }
   241  func (m *P2PMessage) String() string { return proto.CompactTextString(m) }
   242  func (*P2PMessage) ProtoMessage()    {}
   243  func (*P2PMessage) Descriptor() ([]byte, []int) {
   244  	return fileDescriptor_e7fdddb109e6467a, []int{1}
   245  }
   246  func (m *P2PMessage) XXX_Unmarshal(b []byte) error {
   247  	return xxx_messageInfo_P2PMessage.Unmarshal(m, b)
   248  }
   249  func (m *P2PMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   250  	return xxx_messageInfo_P2PMessage.Marshal(b, m, deterministic)
   251  }
   252  func (m *P2PMessage) XXX_Merge(src proto.Message) {
   253  	xxx_messageInfo_P2PMessage.Merge(m, src)
   254  }
   255  func (m *P2PMessage) XXX_Size() int {
   256  	return xxx_messageInfo_P2PMessage.Size(m)
   257  }
   258  func (m *P2PMessage) XXX_DiscardUnknown() {
   259  	xxx_messageInfo_P2PMessage.DiscardUnknown(m)
   260  }
   261  
   262  var xxx_messageInfo_P2PMessage proto.InternalMessageInfo
   263  
   264  func (m *P2PMessage) GetHeader() *MsgHeader {
   265  	if m != nil {
   266  		return m.Header
   267  	}
   268  	return nil
   269  }
   270  
   271  func (m *P2PMessage) GetData() []byte {
   272  	if m != nil {
   273  		return m.Data
   274  	}
   275  	return nil
   276  }
   277  
   278  // Ping request message
   279  type Ping struct {
   280  	BestBlockHash        []byte   `protobuf:"bytes,1,opt,name=best_block_hash,json=bestBlockHash,proto3" json:"best_block_hash,omitempty"`
   281  	BestHeight           uint64   `protobuf:"varint,2,opt,name=best_height,json=bestHeight,proto3" json:"best_height,omitempty"`
   282  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   283  	XXX_unrecognized     []byte   `json:"-"`
   284  	XXX_sizecache        int32    `json:"-"`
   285  }
   286  
   287  func (m *Ping) Reset()         { *m = Ping{} }
   288  func (m *Ping) String() string { return proto.CompactTextString(m) }
   289  func (*Ping) ProtoMessage()    {}
   290  func (*Ping) Descriptor() ([]byte, []int) {
   291  	return fileDescriptor_e7fdddb109e6467a, []int{2}
   292  }
   293  func (m *Ping) XXX_Unmarshal(b []byte) error {
   294  	return xxx_messageInfo_Ping.Unmarshal(m, b)
   295  }
   296  func (m *Ping) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   297  	return xxx_messageInfo_Ping.Marshal(b, m, deterministic)
   298  }
   299  func (m *Ping) XXX_Merge(src proto.Message) {
   300  	xxx_messageInfo_Ping.Merge(m, src)
   301  }
   302  func (m *Ping) XXX_Size() int {
   303  	return xxx_messageInfo_Ping.Size(m)
   304  }
   305  func (m *Ping) XXX_DiscardUnknown() {
   306  	xxx_messageInfo_Ping.DiscardUnknown(m)
   307  }
   308  
   309  var xxx_messageInfo_Ping proto.InternalMessageInfo
   310  
   311  func (m *Ping) GetBestBlockHash() []byte {
   312  	if m != nil {
   313  		return m.BestBlockHash
   314  	}
   315  	return nil
   316  }
   317  
   318  func (m *Ping) GetBestHeight() uint64 {
   319  	if m != nil {
   320  		return m.BestHeight
   321  	}
   322  	return 0
   323  }
   324  
   325  // Ping response message
   326  type Pong struct {
   327  	BestBlockHash        []byte   `protobuf:"bytes,1,opt,name=bestBlockHash,proto3" json:"bestBlockHash,omitempty"`
   328  	BestHeight           uint64   `protobuf:"varint,2,opt,name=bestHeight,proto3" json:"bestHeight,omitempty"`
   329  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   330  	XXX_unrecognized     []byte   `json:"-"`
   331  	XXX_sizecache        int32    `json:"-"`
   332  }
   333  
   334  func (m *Pong) Reset()         { *m = Pong{} }
   335  func (m *Pong) String() string { return proto.CompactTextString(m) }
   336  func (*Pong) ProtoMessage()    {}
   337  func (*Pong) Descriptor() ([]byte, []int) {
   338  	return fileDescriptor_e7fdddb109e6467a, []int{3}
   339  }
   340  func (m *Pong) XXX_Unmarshal(b []byte) error {
   341  	return xxx_messageInfo_Pong.Unmarshal(m, b)
   342  }
   343  func (m *Pong) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   344  	return xxx_messageInfo_Pong.Marshal(b, m, deterministic)
   345  }
   346  func (m *Pong) XXX_Merge(src proto.Message) {
   347  	xxx_messageInfo_Pong.Merge(m, src)
   348  }
   349  func (m *Pong) XXX_Size() int {
   350  	return xxx_messageInfo_Pong.Size(m)
   351  }
   352  func (m *Pong) XXX_DiscardUnknown() {
   353  	xxx_messageInfo_Pong.DiscardUnknown(m)
   354  }
   355  
   356  var xxx_messageInfo_Pong proto.InternalMessageInfo
   357  
   358  func (m *Pong) GetBestBlockHash() []byte {
   359  	if m != nil {
   360  		return m.BestBlockHash
   361  	}
   362  	return nil
   363  }
   364  
   365  func (m *Pong) GetBestHeight() uint64 {
   366  	if m != nil {
   367  		return m.BestHeight
   368  	}
   369  	return 0
   370  }
   371  
   372  // Status is peer status exchanged during handshaking.
   373  type Status struct {
   374  	Sender        *PeerAddress `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"`
   375  	BestBlockHash []byte       `protobuf:"bytes,2,opt,name=bestBlockHash,proto3" json:"bestBlockHash,omitempty"`
   376  	BestHeight    uint64       `protobuf:"varint,3,opt,name=bestHeight,proto3" json:"bestHeight,omitempty"`
   377  	ChainID       []byte       `protobuf:"bytes,4,opt,name=chainID,proto3" json:"chainID,omitempty"`
   378  	// noExpose means that peer doesn't want to be known to other peers.
   379  	NoExpose bool `protobuf:"varint,5,opt,name=noExpose,proto3" json:"noExpose,omitempty"`
   380  	// version of server binary
   381  	Version string `protobuf:"bytes,6,opt,name=version,proto3" json:"version,omitempty"`
   382  	// hash of genesis block
   383  	Genesis              []byte   `protobuf:"bytes,7,opt,name=genesis,proto3" json:"genesis,omitempty"`
   384  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   385  	XXX_unrecognized     []byte   `json:"-"`
   386  	XXX_sizecache        int32    `json:"-"`
   387  }
   388  
   389  func (m *Status) Reset()         { *m = Status{} }
   390  func (m *Status) String() string { return proto.CompactTextString(m) }
   391  func (*Status) ProtoMessage()    {}
   392  func (*Status) Descriptor() ([]byte, []int) {
   393  	return fileDescriptor_e7fdddb109e6467a, []int{4}
   394  }
   395  func (m *Status) XXX_Unmarshal(b []byte) error {
   396  	return xxx_messageInfo_Status.Unmarshal(m, b)
   397  }
   398  func (m *Status) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   399  	return xxx_messageInfo_Status.Marshal(b, m, deterministic)
   400  }
   401  func (m *Status) XXX_Merge(src proto.Message) {
   402  	xxx_messageInfo_Status.Merge(m, src)
   403  }
   404  func (m *Status) XXX_Size() int {
   405  	return xxx_messageInfo_Status.Size(m)
   406  }
   407  func (m *Status) XXX_DiscardUnknown() {
   408  	xxx_messageInfo_Status.DiscardUnknown(m)
   409  }
   410  
   411  var xxx_messageInfo_Status proto.InternalMessageInfo
   412  
   413  func (m *Status) GetSender() *PeerAddress {
   414  	if m != nil {
   415  		return m.Sender
   416  	}
   417  	return nil
   418  }
   419  
   420  func (m *Status) GetBestBlockHash() []byte {
   421  	if m != nil {
   422  		return m.BestBlockHash
   423  	}
   424  	return nil
   425  }
   426  
   427  func (m *Status) GetBestHeight() uint64 {
   428  	if m != nil {
   429  		return m.BestHeight
   430  	}
   431  	return 0
   432  }
   433  
   434  func (m *Status) GetChainID() []byte {
   435  	if m != nil {
   436  		return m.ChainID
   437  	}
   438  	return nil
   439  }
   440  
   441  func (m *Status) GetNoExpose() bool {
   442  	if m != nil {
   443  		return m.NoExpose
   444  	}
   445  	return false
   446  }
   447  
   448  func (m *Status) GetVersion() string {
   449  	if m != nil {
   450  		return m.Version
   451  	}
   452  	return ""
   453  }
   454  
   455  func (m *Status) GetGenesis() []byte {
   456  	if m != nil {
   457  		return m.Genesis
   458  	}
   459  	return nil
   460  }
   461  
   462  // GoAwayNotice is sent before host peer is closing connection to remote peer. it contains why the host closing connection.
   463  type GoAwayNotice struct {
   464  	Message              string   `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
   465  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   466  	XXX_unrecognized     []byte   `json:"-"`
   467  	XXX_sizecache        int32    `json:"-"`
   468  }
   469  
   470  func (m *GoAwayNotice) Reset()         { *m = GoAwayNotice{} }
   471  func (m *GoAwayNotice) String() string { return proto.CompactTextString(m) }
   472  func (*GoAwayNotice) ProtoMessage()    {}
   473  func (*GoAwayNotice) Descriptor() ([]byte, []int) {
   474  	return fileDescriptor_e7fdddb109e6467a, []int{5}
   475  }
   476  func (m *GoAwayNotice) XXX_Unmarshal(b []byte) error {
   477  	return xxx_messageInfo_GoAwayNotice.Unmarshal(m, b)
   478  }
   479  func (m *GoAwayNotice) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   480  	return xxx_messageInfo_GoAwayNotice.Marshal(b, m, deterministic)
   481  }
   482  func (m *GoAwayNotice) XXX_Merge(src proto.Message) {
   483  	xxx_messageInfo_GoAwayNotice.Merge(m, src)
   484  }
   485  func (m *GoAwayNotice) XXX_Size() int {
   486  	return xxx_messageInfo_GoAwayNotice.Size(m)
   487  }
   488  func (m *GoAwayNotice) XXX_DiscardUnknown() {
   489  	xxx_messageInfo_GoAwayNotice.DiscardUnknown(m)
   490  }
   491  
   492  var xxx_messageInfo_GoAwayNotice proto.InternalMessageInfo
   493  
   494  func (m *GoAwayNotice) GetMessage() string {
   495  	if m != nil {
   496  		return m.Message
   497  	}
   498  	return ""
   499  }
   500  
   501  type AddressesRequest struct {
   502  	Sender               *PeerAddress `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"`
   503  	MaxSize              uint32       `protobuf:"varint,2,opt,name=maxSize,proto3" json:"maxSize,omitempty"`
   504  	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
   505  	XXX_unrecognized     []byte       `json:"-"`
   506  	XXX_sizecache        int32        `json:"-"`
   507  }
   508  
   509  func (m *AddressesRequest) Reset()         { *m = AddressesRequest{} }
   510  func (m *AddressesRequest) String() string { return proto.CompactTextString(m) }
   511  func (*AddressesRequest) ProtoMessage()    {}
   512  func (*AddressesRequest) Descriptor() ([]byte, []int) {
   513  	return fileDescriptor_e7fdddb109e6467a, []int{6}
   514  }
   515  func (m *AddressesRequest) XXX_Unmarshal(b []byte) error {
   516  	return xxx_messageInfo_AddressesRequest.Unmarshal(m, b)
   517  }
   518  func (m *AddressesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   519  	return xxx_messageInfo_AddressesRequest.Marshal(b, m, deterministic)
   520  }
   521  func (m *AddressesRequest) XXX_Merge(src proto.Message) {
   522  	xxx_messageInfo_AddressesRequest.Merge(m, src)
   523  }
   524  func (m *AddressesRequest) XXX_Size() int {
   525  	return xxx_messageInfo_AddressesRequest.Size(m)
   526  }
   527  func (m *AddressesRequest) XXX_DiscardUnknown() {
   528  	xxx_messageInfo_AddressesRequest.DiscardUnknown(m)
   529  }
   530  
   531  var xxx_messageInfo_AddressesRequest proto.InternalMessageInfo
   532  
   533  func (m *AddressesRequest) GetSender() *PeerAddress {
   534  	if m != nil {
   535  		return m.Sender
   536  	}
   537  	return nil
   538  }
   539  
   540  func (m *AddressesRequest) GetMaxSize() uint32 {
   541  	if m != nil {
   542  		return m.MaxSize
   543  	}
   544  	return 0
   545  }
   546  
   547  type AddressesResponse struct {
   548  	Status               ResultStatus   `protobuf:"varint,1,opt,name=status,proto3,enum=types.ResultStatus" json:"status,omitempty"`
   549  	Peers                []*PeerAddress `protobuf:"bytes,2,rep,name=peers,proto3" json:"peers,omitempty"`
   550  	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
   551  	XXX_unrecognized     []byte         `json:"-"`
   552  	XXX_sizecache        int32          `json:"-"`
   553  }
   554  
   555  func (m *AddressesResponse) Reset()         { *m = AddressesResponse{} }
   556  func (m *AddressesResponse) String() string { return proto.CompactTextString(m) }
   557  func (*AddressesResponse) ProtoMessage()    {}
   558  func (*AddressesResponse) Descriptor() ([]byte, []int) {
   559  	return fileDescriptor_e7fdddb109e6467a, []int{7}
   560  }
   561  func (m *AddressesResponse) XXX_Unmarshal(b []byte) error {
   562  	return xxx_messageInfo_AddressesResponse.Unmarshal(m, b)
   563  }
   564  func (m *AddressesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   565  	return xxx_messageInfo_AddressesResponse.Marshal(b, m, deterministic)
   566  }
   567  func (m *AddressesResponse) XXX_Merge(src proto.Message) {
   568  	xxx_messageInfo_AddressesResponse.Merge(m, src)
   569  }
   570  func (m *AddressesResponse) XXX_Size() int {
   571  	return xxx_messageInfo_AddressesResponse.Size(m)
   572  }
   573  func (m *AddressesResponse) XXX_DiscardUnknown() {
   574  	xxx_messageInfo_AddressesResponse.DiscardUnknown(m)
   575  }
   576  
   577  var xxx_messageInfo_AddressesResponse proto.InternalMessageInfo
   578  
   579  func (m *AddressesResponse) GetStatus() ResultStatus {
   580  	if m != nil {
   581  		return m.Status
   582  	}
   583  	return ResultStatus_OK
   584  }
   585  
   586  func (m *AddressesResponse) GetPeers() []*PeerAddress {
   587  	if m != nil {
   588  		return m.Peers
   589  	}
   590  	return nil
   591  }
   592  
   593  // NewBlockNotice is sent to other peers when host node add a block, which is not produced by this host peer (i.e. added block
   594  // that other bp node produced.) It contains just hash and blockNo. The host node will not send notice if target receiving peer
   595  // knows that block already at best effort.
   596  type NewBlockNotice struct {
   597  	BlockHash            []byte   `protobuf:"bytes,1,opt,name=blockHash,proto3" json:"blockHash,omitempty"`
   598  	BlockNo              uint64   `protobuf:"varint,2,opt,name=blockNo,proto3" json:"blockNo,omitempty"`
   599  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   600  	XXX_unrecognized     []byte   `json:"-"`
   601  	XXX_sizecache        int32    `json:"-"`
   602  }
   603  
   604  func (m *NewBlockNotice) Reset()         { *m = NewBlockNotice{} }
   605  func (m *NewBlockNotice) String() string { return proto.CompactTextString(m) }
   606  func (*NewBlockNotice) ProtoMessage()    {}
   607  func (*NewBlockNotice) Descriptor() ([]byte, []int) {
   608  	return fileDescriptor_e7fdddb109e6467a, []int{8}
   609  }
   610  func (m *NewBlockNotice) XXX_Unmarshal(b []byte) error {
   611  	return xxx_messageInfo_NewBlockNotice.Unmarshal(m, b)
   612  }
   613  func (m *NewBlockNotice) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   614  	return xxx_messageInfo_NewBlockNotice.Marshal(b, m, deterministic)
   615  }
   616  func (m *NewBlockNotice) XXX_Merge(src proto.Message) {
   617  	xxx_messageInfo_NewBlockNotice.Merge(m, src)
   618  }
   619  func (m *NewBlockNotice) XXX_Size() int {
   620  	return xxx_messageInfo_NewBlockNotice.Size(m)
   621  }
   622  func (m *NewBlockNotice) XXX_DiscardUnknown() {
   623  	xxx_messageInfo_NewBlockNotice.DiscardUnknown(m)
   624  }
   625  
   626  var xxx_messageInfo_NewBlockNotice proto.InternalMessageInfo
   627  
   628  func (m *NewBlockNotice) GetBlockHash() []byte {
   629  	if m != nil {
   630  		return m.BlockHash
   631  	}
   632  	return nil
   633  }
   634  
   635  func (m *NewBlockNotice) GetBlockNo() uint64 {
   636  	if m != nil {
   637  		return m.BlockNo
   638  	}
   639  	return 0
   640  }
   641  
   642  // BlockProducedNotice is sent when BP created blocks and host peer is BP (or surrogate of BP) and receiving peer is also trusted BP or surrogate of BP.
   643  // It contains whole block information
   644  type BlockProducedNotice struct {
   645  	ProducerID           []byte   `protobuf:"bytes,1,opt,name=producerID,proto3" json:"producerID,omitempty"`
   646  	BlockNo              uint64   `protobuf:"varint,2,opt,name=blockNo,proto3" json:"blockNo,omitempty"`
   647  	Block                *Block   `protobuf:"bytes,3,opt,name=block,proto3" json:"block,omitempty"`
   648  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   649  	XXX_unrecognized     []byte   `json:"-"`
   650  	XXX_sizecache        int32    `json:"-"`
   651  }
   652  
   653  func (m *BlockProducedNotice) Reset()         { *m = BlockProducedNotice{} }
   654  func (m *BlockProducedNotice) String() string { return proto.CompactTextString(m) }
   655  func (*BlockProducedNotice) ProtoMessage()    {}
   656  func (*BlockProducedNotice) Descriptor() ([]byte, []int) {
   657  	return fileDescriptor_e7fdddb109e6467a, []int{9}
   658  }
   659  func (m *BlockProducedNotice) XXX_Unmarshal(b []byte) error {
   660  	return xxx_messageInfo_BlockProducedNotice.Unmarshal(m, b)
   661  }
   662  func (m *BlockProducedNotice) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   663  	return xxx_messageInfo_BlockProducedNotice.Marshal(b, m, deterministic)
   664  }
   665  func (m *BlockProducedNotice) XXX_Merge(src proto.Message) {
   666  	xxx_messageInfo_BlockProducedNotice.Merge(m, src)
   667  }
   668  func (m *BlockProducedNotice) XXX_Size() int {
   669  	return xxx_messageInfo_BlockProducedNotice.Size(m)
   670  }
   671  func (m *BlockProducedNotice) XXX_DiscardUnknown() {
   672  	xxx_messageInfo_BlockProducedNotice.DiscardUnknown(m)
   673  }
   674  
   675  var xxx_messageInfo_BlockProducedNotice proto.InternalMessageInfo
   676  
   677  func (m *BlockProducedNotice) GetProducerID() []byte {
   678  	if m != nil {
   679  		return m.ProducerID
   680  	}
   681  	return nil
   682  }
   683  
   684  func (m *BlockProducedNotice) GetBlockNo() uint64 {
   685  	if m != nil {
   686  		return m.BlockNo
   687  	}
   688  	return 0
   689  }
   690  
   691  func (m *BlockProducedNotice) GetBlock() *Block {
   692  	if m != nil {
   693  		return m.Block
   694  	}
   695  	return nil
   696  }
   697  
   698  // GetBlockHeadersRequest
   699  type GetBlockHeadersRequest struct {
   700  	// Hash indicated referenced block hash. server will return headers from this block.
   701  	Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
   702  	// Block height instead of hash will be used for the first returned block, if hash is nil or empty
   703  	Height uint64 `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`
   704  	Offset uint64 `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"`
   705  	Size   uint32 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
   706  	// default is false.
   707  	Asc                  bool     `protobuf:"varint,5,opt,name=asc,proto3" json:"asc,omitempty"`
   708  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   709  	XXX_unrecognized     []byte   `json:"-"`
   710  	XXX_sizecache        int32    `json:"-"`
   711  }
   712  
   713  func (m *GetBlockHeadersRequest) Reset()         { *m = GetBlockHeadersRequest{} }
   714  func (m *GetBlockHeadersRequest) String() string { return proto.CompactTextString(m) }
   715  func (*GetBlockHeadersRequest) ProtoMessage()    {}
   716  func (*GetBlockHeadersRequest) Descriptor() ([]byte, []int) {
   717  	return fileDescriptor_e7fdddb109e6467a, []int{10}
   718  }
   719  func (m *GetBlockHeadersRequest) XXX_Unmarshal(b []byte) error {
   720  	return xxx_messageInfo_GetBlockHeadersRequest.Unmarshal(m, b)
   721  }
   722  func (m *GetBlockHeadersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   723  	return xxx_messageInfo_GetBlockHeadersRequest.Marshal(b, m, deterministic)
   724  }
   725  func (m *GetBlockHeadersRequest) XXX_Merge(src proto.Message) {
   726  	xxx_messageInfo_GetBlockHeadersRequest.Merge(m, src)
   727  }
   728  func (m *GetBlockHeadersRequest) XXX_Size() int {
   729  	return xxx_messageInfo_GetBlockHeadersRequest.Size(m)
   730  }
   731  func (m *GetBlockHeadersRequest) XXX_DiscardUnknown() {
   732  	xxx_messageInfo_GetBlockHeadersRequest.DiscardUnknown(m)
   733  }
   734  
   735  var xxx_messageInfo_GetBlockHeadersRequest proto.InternalMessageInfo
   736  
   737  func (m *GetBlockHeadersRequest) GetHash() []byte {
   738  	if m != nil {
   739  		return m.Hash
   740  	}
   741  	return nil
   742  }
   743  
   744  func (m *GetBlockHeadersRequest) GetHeight() uint64 {
   745  	if m != nil {
   746  		return m.Height
   747  	}
   748  	return 0
   749  }
   750  
   751  func (m *GetBlockHeadersRequest) GetOffset() uint64 {
   752  	if m != nil {
   753  		return m.Offset
   754  	}
   755  	return 0
   756  }
   757  
   758  func (m *GetBlockHeadersRequest) GetSize() uint32 {
   759  	if m != nil {
   760  		return m.Size
   761  	}
   762  	return 0
   763  }
   764  
   765  func (m *GetBlockHeadersRequest) GetAsc() bool {
   766  	if m != nil {
   767  		return m.Asc
   768  	}
   769  	return false
   770  }
   771  
   772  // GetBlockResponse contains response of GetBlockRequest.
   773  type GetBlockHeadersResponse struct {
   774  	Status               ResultStatus   `protobuf:"varint,1,opt,name=status,proto3,enum=types.ResultStatus" json:"status,omitempty"`
   775  	Hashes               [][]byte       `protobuf:"bytes,2,rep,name=hashes,proto3" json:"hashes,omitempty"`
   776  	Headers              []*BlockHeader `protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty"`
   777  	HasNext              bool           `protobuf:"varint,4,opt,name=hasNext,proto3" json:"hasNext,omitempty"`
   778  	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
   779  	XXX_unrecognized     []byte         `json:"-"`
   780  	XXX_sizecache        int32          `json:"-"`
   781  }
   782  
   783  func (m *GetBlockHeadersResponse) Reset()         { *m = GetBlockHeadersResponse{} }
   784  func (m *GetBlockHeadersResponse) String() string { return proto.CompactTextString(m) }
   785  func (*GetBlockHeadersResponse) ProtoMessage()    {}
   786  func (*GetBlockHeadersResponse) Descriptor() ([]byte, []int) {
   787  	return fileDescriptor_e7fdddb109e6467a, []int{11}
   788  }
   789  func (m *GetBlockHeadersResponse) XXX_Unmarshal(b []byte) error {
   790  	return xxx_messageInfo_GetBlockHeadersResponse.Unmarshal(m, b)
   791  }
   792  func (m *GetBlockHeadersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   793  	return xxx_messageInfo_GetBlockHeadersResponse.Marshal(b, m, deterministic)
   794  }
   795  func (m *GetBlockHeadersResponse) XXX_Merge(src proto.Message) {
   796  	xxx_messageInfo_GetBlockHeadersResponse.Merge(m, src)
   797  }
   798  func (m *GetBlockHeadersResponse) XXX_Size() int {
   799  	return xxx_messageInfo_GetBlockHeadersResponse.Size(m)
   800  }
   801  func (m *GetBlockHeadersResponse) XXX_DiscardUnknown() {
   802  	xxx_messageInfo_GetBlockHeadersResponse.DiscardUnknown(m)
   803  }
   804  
   805  var xxx_messageInfo_GetBlockHeadersResponse proto.InternalMessageInfo
   806  
   807  func (m *GetBlockHeadersResponse) GetStatus() ResultStatus {
   808  	if m != nil {
   809  		return m.Status
   810  	}
   811  	return ResultStatus_OK
   812  }
   813  
   814  func (m *GetBlockHeadersResponse) GetHashes() [][]byte {
   815  	if m != nil {
   816  		return m.Hashes
   817  	}
   818  	return nil
   819  }
   820  
   821  func (m *GetBlockHeadersResponse) GetHeaders() []*BlockHeader {
   822  	if m != nil {
   823  		return m.Headers
   824  	}
   825  	return nil
   826  }
   827  
   828  func (m *GetBlockHeadersResponse) GetHasNext() bool {
   829  	if m != nil {
   830  		return m.HasNext
   831  	}
   832  	return false
   833  }
   834  
   835  // GetBlockRequest request blocks informations, not just single block.
   836  type GetBlockRequest struct {
   837  	Hashes               [][]byte `protobuf:"bytes,1,rep,name=hashes,proto3" json:"hashes,omitempty"`
   838  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   839  	XXX_unrecognized     []byte   `json:"-"`
   840  	XXX_sizecache        int32    `json:"-"`
   841  }
   842  
   843  func (m *GetBlockRequest) Reset()         { *m = GetBlockRequest{} }
   844  func (m *GetBlockRequest) String() string { return proto.CompactTextString(m) }
   845  func (*GetBlockRequest) ProtoMessage()    {}
   846  func (*GetBlockRequest) Descriptor() ([]byte, []int) {
   847  	return fileDescriptor_e7fdddb109e6467a, []int{12}
   848  }
   849  func (m *GetBlockRequest) XXX_Unmarshal(b []byte) error {
   850  	return xxx_messageInfo_GetBlockRequest.Unmarshal(m, b)
   851  }
   852  func (m *GetBlockRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   853  	return xxx_messageInfo_GetBlockRequest.Marshal(b, m, deterministic)
   854  }
   855  func (m *GetBlockRequest) XXX_Merge(src proto.Message) {
   856  	xxx_messageInfo_GetBlockRequest.Merge(m, src)
   857  }
   858  func (m *GetBlockRequest) XXX_Size() int {
   859  	return xxx_messageInfo_GetBlockRequest.Size(m)
   860  }
   861  func (m *GetBlockRequest) XXX_DiscardUnknown() {
   862  	xxx_messageInfo_GetBlockRequest.DiscardUnknown(m)
   863  }
   864  
   865  var xxx_messageInfo_GetBlockRequest proto.InternalMessageInfo
   866  
   867  func (m *GetBlockRequest) GetHashes() [][]byte {
   868  	if m != nil {
   869  		return m.Hashes
   870  	}
   871  	return nil
   872  }
   873  
   874  // GetBlockResponse contains response of GetBlockRequest.
   875  type GetBlockResponse struct {
   876  	Status               ResultStatus `protobuf:"varint,1,opt,name=status,proto3,enum=types.ResultStatus" json:"status,omitempty"`
   877  	Blocks               []*Block     `protobuf:"bytes,2,rep,name=blocks,proto3" json:"blocks,omitempty"`
   878  	HasNext              bool         `protobuf:"varint,3,opt,name=hasNext,proto3" json:"hasNext,omitempty"`
   879  	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
   880  	XXX_unrecognized     []byte       `json:"-"`
   881  	XXX_sizecache        int32        `json:"-"`
   882  }
   883  
   884  func (m *GetBlockResponse) Reset()         { *m = GetBlockResponse{} }
   885  func (m *GetBlockResponse) String() string { return proto.CompactTextString(m) }
   886  func (*GetBlockResponse) ProtoMessage()    {}
   887  func (*GetBlockResponse) Descriptor() ([]byte, []int) {
   888  	return fileDescriptor_e7fdddb109e6467a, []int{13}
   889  }
   890  func (m *GetBlockResponse) XXX_Unmarshal(b []byte) error {
   891  	return xxx_messageInfo_GetBlockResponse.Unmarshal(m, b)
   892  }
   893  func (m *GetBlockResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   894  	return xxx_messageInfo_GetBlockResponse.Marshal(b, m, deterministic)
   895  }
   896  func (m *GetBlockResponse) XXX_Merge(src proto.Message) {
   897  	xxx_messageInfo_GetBlockResponse.Merge(m, src)
   898  }
   899  func (m *GetBlockResponse) XXX_Size() int {
   900  	return xxx_messageInfo_GetBlockResponse.Size(m)
   901  }
   902  func (m *GetBlockResponse) XXX_DiscardUnknown() {
   903  	xxx_messageInfo_GetBlockResponse.DiscardUnknown(m)
   904  }
   905  
   906  var xxx_messageInfo_GetBlockResponse proto.InternalMessageInfo
   907  
   908  func (m *GetBlockResponse) GetStatus() ResultStatus {
   909  	if m != nil {
   910  		return m.Status
   911  	}
   912  	return ResultStatus_OK
   913  }
   914  
   915  func (m *GetBlockResponse) GetBlocks() []*Block {
   916  	if m != nil {
   917  		return m.Blocks
   918  	}
   919  	return nil
   920  }
   921  
   922  func (m *GetBlockResponse) GetHasNext() bool {
   923  	if m != nil {
   924  		return m.HasNext
   925  	}
   926  	return false
   927  }
   928  
   929  type NewTransactionsNotice struct {
   930  	TxHashes             [][]byte `protobuf:"bytes,1,rep,name=txHashes,proto3" json:"txHashes,omitempty"`
   931  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   932  	XXX_unrecognized     []byte   `json:"-"`
   933  	XXX_sizecache        int32    `json:"-"`
   934  }
   935  
   936  func (m *NewTransactionsNotice) Reset()         { *m = NewTransactionsNotice{} }
   937  func (m *NewTransactionsNotice) String() string { return proto.CompactTextString(m) }
   938  func (*NewTransactionsNotice) ProtoMessage()    {}
   939  func (*NewTransactionsNotice) Descriptor() ([]byte, []int) {
   940  	return fileDescriptor_e7fdddb109e6467a, []int{14}
   941  }
   942  func (m *NewTransactionsNotice) XXX_Unmarshal(b []byte) error {
   943  	return xxx_messageInfo_NewTransactionsNotice.Unmarshal(m, b)
   944  }
   945  func (m *NewTransactionsNotice) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   946  	return xxx_messageInfo_NewTransactionsNotice.Marshal(b, m, deterministic)
   947  }
   948  func (m *NewTransactionsNotice) XXX_Merge(src proto.Message) {
   949  	xxx_messageInfo_NewTransactionsNotice.Merge(m, src)
   950  }
   951  func (m *NewTransactionsNotice) XXX_Size() int {
   952  	return xxx_messageInfo_NewTransactionsNotice.Size(m)
   953  }
   954  func (m *NewTransactionsNotice) XXX_DiscardUnknown() {
   955  	xxx_messageInfo_NewTransactionsNotice.DiscardUnknown(m)
   956  }
   957  
   958  var xxx_messageInfo_NewTransactionsNotice proto.InternalMessageInfo
   959  
   960  func (m *NewTransactionsNotice) GetTxHashes() [][]byte {
   961  	if m != nil {
   962  		return m.TxHashes
   963  	}
   964  	return nil
   965  }
   966  
   967  type GetTransactionsRequest struct {
   968  	Hashes               [][]byte `protobuf:"bytes,1,rep,name=hashes,proto3" json:"hashes,omitempty"`
   969  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   970  	XXX_unrecognized     []byte   `json:"-"`
   971  	XXX_sizecache        int32    `json:"-"`
   972  }
   973  
   974  func (m *GetTransactionsRequest) Reset()         { *m = GetTransactionsRequest{} }
   975  func (m *GetTransactionsRequest) String() string { return proto.CompactTextString(m) }
   976  func (*GetTransactionsRequest) ProtoMessage()    {}
   977  func (*GetTransactionsRequest) Descriptor() ([]byte, []int) {
   978  	return fileDescriptor_e7fdddb109e6467a, []int{15}
   979  }
   980  func (m *GetTransactionsRequest) XXX_Unmarshal(b []byte) error {
   981  	return xxx_messageInfo_GetTransactionsRequest.Unmarshal(m, b)
   982  }
   983  func (m *GetTransactionsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   984  	return xxx_messageInfo_GetTransactionsRequest.Marshal(b, m, deterministic)
   985  }
   986  func (m *GetTransactionsRequest) XXX_Merge(src proto.Message) {
   987  	xxx_messageInfo_GetTransactionsRequest.Merge(m, src)
   988  }
   989  func (m *GetTransactionsRequest) XXX_Size() int {
   990  	return xxx_messageInfo_GetTransactionsRequest.Size(m)
   991  }
   992  func (m *GetTransactionsRequest) XXX_DiscardUnknown() {
   993  	xxx_messageInfo_GetTransactionsRequest.DiscardUnknown(m)
   994  }
   995  
   996  var xxx_messageInfo_GetTransactionsRequest proto.InternalMessageInfo
   997  
   998  func (m *GetTransactionsRequest) GetHashes() [][]byte {
   999  	if m != nil {
  1000  		return m.Hashes
  1001  	}
  1002  	return nil
  1003  }
  1004  
  1005  type GetTransactionsResponse struct {
  1006  	Status               ResultStatus `protobuf:"varint,1,opt,name=status,proto3,enum=types.ResultStatus" json:"status,omitempty"`
  1007  	Hashes               [][]byte     `protobuf:"bytes,2,rep,name=hashes,proto3" json:"hashes,omitempty"`
  1008  	Txs                  []*Tx        `protobuf:"bytes,3,rep,name=txs,proto3" json:"txs,omitempty"`
  1009  	HasNext              bool         `protobuf:"varint,4,opt,name=hasNext,proto3" json:"hasNext,omitempty"`
  1010  	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
  1011  	XXX_unrecognized     []byte       `json:"-"`
  1012  	XXX_sizecache        int32        `json:"-"`
  1013  }
  1014  
  1015  func (m *GetTransactionsResponse) Reset()         { *m = GetTransactionsResponse{} }
  1016  func (m *GetTransactionsResponse) String() string { return proto.CompactTextString(m) }
  1017  func (*GetTransactionsResponse) ProtoMessage()    {}
  1018  func (*GetTransactionsResponse) Descriptor() ([]byte, []int) {
  1019  	return fileDescriptor_e7fdddb109e6467a, []int{16}
  1020  }
  1021  func (m *GetTransactionsResponse) XXX_Unmarshal(b []byte) error {
  1022  	return xxx_messageInfo_GetTransactionsResponse.Unmarshal(m, b)
  1023  }
  1024  func (m *GetTransactionsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1025  	return xxx_messageInfo_GetTransactionsResponse.Marshal(b, m, deterministic)
  1026  }
  1027  func (m *GetTransactionsResponse) XXX_Merge(src proto.Message) {
  1028  	xxx_messageInfo_GetTransactionsResponse.Merge(m, src)
  1029  }
  1030  func (m *GetTransactionsResponse) XXX_Size() int {
  1031  	return xxx_messageInfo_GetTransactionsResponse.Size(m)
  1032  }
  1033  func (m *GetTransactionsResponse) XXX_DiscardUnknown() {
  1034  	xxx_messageInfo_GetTransactionsResponse.DiscardUnknown(m)
  1035  }
  1036  
  1037  var xxx_messageInfo_GetTransactionsResponse proto.InternalMessageInfo
  1038  
  1039  func (m *GetTransactionsResponse) GetStatus() ResultStatus {
  1040  	if m != nil {
  1041  		return m.Status
  1042  	}
  1043  	return ResultStatus_OK
  1044  }
  1045  
  1046  func (m *GetTransactionsResponse) GetHashes() [][]byte {
  1047  	if m != nil {
  1048  		return m.Hashes
  1049  	}
  1050  	return nil
  1051  }
  1052  
  1053  func (m *GetTransactionsResponse) GetTxs() []*Tx {
  1054  	if m != nil {
  1055  		return m.Txs
  1056  	}
  1057  	return nil
  1058  }
  1059  
  1060  func (m *GetTransactionsResponse) GetHasNext() bool {
  1061  	if m != nil {
  1062  		return m.HasNext
  1063  	}
  1064  	return false
  1065  }
  1066  
  1067  // GetMissingRequest
  1068  type GetMissingRequest struct {
  1069  	// Hash indicated referenced sparse block hash array of longest chain(caller).
  1070  	Hashes [][]byte `protobuf:"bytes,1,rep,name=hashes,proto3" json:"hashes,omitempty"`
  1071  	// stophash will be used the meaning of end point of missing part.
  1072  	Stophash             []byte   `protobuf:"bytes,2,opt,name=stophash,proto3" json:"stophash,omitempty"`
  1073  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1074  	XXX_unrecognized     []byte   `json:"-"`
  1075  	XXX_sizecache        int32    `json:"-"`
  1076  }
  1077  
  1078  func (m *GetMissingRequest) Reset()         { *m = GetMissingRequest{} }
  1079  func (m *GetMissingRequest) String() string { return proto.CompactTextString(m) }
  1080  func (*GetMissingRequest) ProtoMessage()    {}
  1081  func (*GetMissingRequest) Descriptor() ([]byte, []int) {
  1082  	return fileDescriptor_e7fdddb109e6467a, []int{17}
  1083  }
  1084  func (m *GetMissingRequest) XXX_Unmarshal(b []byte) error {
  1085  	return xxx_messageInfo_GetMissingRequest.Unmarshal(m, b)
  1086  }
  1087  func (m *GetMissingRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1088  	return xxx_messageInfo_GetMissingRequest.Marshal(b, m, deterministic)
  1089  }
  1090  func (m *GetMissingRequest) XXX_Merge(src proto.Message) {
  1091  	xxx_messageInfo_GetMissingRequest.Merge(m, src)
  1092  }
  1093  func (m *GetMissingRequest) XXX_Size() int {
  1094  	return xxx_messageInfo_GetMissingRequest.Size(m)
  1095  }
  1096  func (m *GetMissingRequest) XXX_DiscardUnknown() {
  1097  	xxx_messageInfo_GetMissingRequest.DiscardUnknown(m)
  1098  }
  1099  
  1100  var xxx_messageInfo_GetMissingRequest proto.InternalMessageInfo
  1101  
  1102  func (m *GetMissingRequest) GetHashes() [][]byte {
  1103  	if m != nil {
  1104  		return m.Hashes
  1105  	}
  1106  	return nil
  1107  }
  1108  
  1109  func (m *GetMissingRequest) GetStophash() []byte {
  1110  	if m != nil {
  1111  		return m.Stophash
  1112  	}
  1113  	return nil
  1114  }
  1115  
  1116  type GetAncestorRequest struct {
  1117  	// Hash indicated referenced sparse block hash array of longest chain(caller).
  1118  	Hashes               [][]byte `protobuf:"bytes,1,rep,name=hashes,proto3" json:"hashes,omitempty"`
  1119  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1120  	XXX_unrecognized     []byte   `json:"-"`
  1121  	XXX_sizecache        int32    `json:"-"`
  1122  }
  1123  
  1124  func (m *GetAncestorRequest) Reset()         { *m = GetAncestorRequest{} }
  1125  func (m *GetAncestorRequest) String() string { return proto.CompactTextString(m) }
  1126  func (*GetAncestorRequest) ProtoMessage()    {}
  1127  func (*GetAncestorRequest) Descriptor() ([]byte, []int) {
  1128  	return fileDescriptor_e7fdddb109e6467a, []int{18}
  1129  }
  1130  func (m *GetAncestorRequest) XXX_Unmarshal(b []byte) error {
  1131  	return xxx_messageInfo_GetAncestorRequest.Unmarshal(m, b)
  1132  }
  1133  func (m *GetAncestorRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1134  	return xxx_messageInfo_GetAncestorRequest.Marshal(b, m, deterministic)
  1135  }
  1136  func (m *GetAncestorRequest) XXX_Merge(src proto.Message) {
  1137  	xxx_messageInfo_GetAncestorRequest.Merge(m, src)
  1138  }
  1139  func (m *GetAncestorRequest) XXX_Size() int {
  1140  	return xxx_messageInfo_GetAncestorRequest.Size(m)
  1141  }
  1142  func (m *GetAncestorRequest) XXX_DiscardUnknown() {
  1143  	xxx_messageInfo_GetAncestorRequest.DiscardUnknown(m)
  1144  }
  1145  
  1146  var xxx_messageInfo_GetAncestorRequest proto.InternalMessageInfo
  1147  
  1148  func (m *GetAncestorRequest) GetHashes() [][]byte {
  1149  	if m != nil {
  1150  		return m.Hashes
  1151  	}
  1152  	return nil
  1153  }
  1154  
  1155  type GetAncestorResponse struct {
  1156  	Status               ResultStatus `protobuf:"varint,1,opt,name=status,proto3,enum=types.ResultStatus" json:"status,omitempty"`
  1157  	AncestorHash         []byte       `protobuf:"bytes,2,opt,name=ancestorHash,proto3" json:"ancestorHash,omitempty"`
  1158  	AncestorNo           uint64       `protobuf:"varint,3,opt,name=ancestorNo,proto3" json:"ancestorNo,omitempty"`
  1159  	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
  1160  	XXX_unrecognized     []byte       `json:"-"`
  1161  	XXX_sizecache        int32        `json:"-"`
  1162  }
  1163  
  1164  func (m *GetAncestorResponse) Reset()         { *m = GetAncestorResponse{} }
  1165  func (m *GetAncestorResponse) String() string { return proto.CompactTextString(m) }
  1166  func (*GetAncestorResponse) ProtoMessage()    {}
  1167  func (*GetAncestorResponse) Descriptor() ([]byte, []int) {
  1168  	return fileDescriptor_e7fdddb109e6467a, []int{19}
  1169  }
  1170  func (m *GetAncestorResponse) XXX_Unmarshal(b []byte) error {
  1171  	return xxx_messageInfo_GetAncestorResponse.Unmarshal(m, b)
  1172  }
  1173  func (m *GetAncestorResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1174  	return xxx_messageInfo_GetAncestorResponse.Marshal(b, m, deterministic)
  1175  }
  1176  func (m *GetAncestorResponse) XXX_Merge(src proto.Message) {
  1177  	xxx_messageInfo_GetAncestorResponse.Merge(m, src)
  1178  }
  1179  func (m *GetAncestorResponse) XXX_Size() int {
  1180  	return xxx_messageInfo_GetAncestorResponse.Size(m)
  1181  }
  1182  func (m *GetAncestorResponse) XXX_DiscardUnknown() {
  1183  	xxx_messageInfo_GetAncestorResponse.DiscardUnknown(m)
  1184  }
  1185  
  1186  var xxx_messageInfo_GetAncestorResponse proto.InternalMessageInfo
  1187  
  1188  func (m *GetAncestorResponse) GetStatus() ResultStatus {
  1189  	if m != nil {
  1190  		return m.Status
  1191  	}
  1192  	return ResultStatus_OK
  1193  }
  1194  
  1195  func (m *GetAncestorResponse) GetAncestorHash() []byte {
  1196  	if m != nil {
  1197  		return m.AncestorHash
  1198  	}
  1199  	return nil
  1200  }
  1201  
  1202  func (m *GetAncestorResponse) GetAncestorNo() uint64 {
  1203  	if m != nil {
  1204  		return m.AncestorNo
  1205  	}
  1206  	return 0
  1207  }
  1208  
  1209  type GetHashByNo struct {
  1210  	BlockNo              uint64   `protobuf:"varint,1,opt,name=blockNo,proto3" json:"blockNo,omitempty"`
  1211  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1212  	XXX_unrecognized     []byte   `json:"-"`
  1213  	XXX_sizecache        int32    `json:"-"`
  1214  }
  1215  
  1216  func (m *GetHashByNo) Reset()         { *m = GetHashByNo{} }
  1217  func (m *GetHashByNo) String() string { return proto.CompactTextString(m) }
  1218  func (*GetHashByNo) ProtoMessage()    {}
  1219  func (*GetHashByNo) Descriptor() ([]byte, []int) {
  1220  	return fileDescriptor_e7fdddb109e6467a, []int{20}
  1221  }
  1222  func (m *GetHashByNo) XXX_Unmarshal(b []byte) error {
  1223  	return xxx_messageInfo_GetHashByNo.Unmarshal(m, b)
  1224  }
  1225  func (m *GetHashByNo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1226  	return xxx_messageInfo_GetHashByNo.Marshal(b, m, deterministic)
  1227  }
  1228  func (m *GetHashByNo) XXX_Merge(src proto.Message) {
  1229  	xxx_messageInfo_GetHashByNo.Merge(m, src)
  1230  }
  1231  func (m *GetHashByNo) XXX_Size() int {
  1232  	return xxx_messageInfo_GetHashByNo.Size(m)
  1233  }
  1234  func (m *GetHashByNo) XXX_DiscardUnknown() {
  1235  	xxx_messageInfo_GetHashByNo.DiscardUnknown(m)
  1236  }
  1237  
  1238  var xxx_messageInfo_GetHashByNo proto.InternalMessageInfo
  1239  
  1240  func (m *GetHashByNo) GetBlockNo() uint64 {
  1241  	if m != nil {
  1242  		return m.BlockNo
  1243  	}
  1244  	return 0
  1245  }
  1246  
  1247  type GetHashByNoResponse struct {
  1248  	Status               ResultStatus `protobuf:"varint,1,opt,name=status,proto3,enum=types.ResultStatus" json:"status,omitempty"`
  1249  	BlockHash            []byte       `protobuf:"bytes,2,opt,name=blockHash,proto3" json:"blockHash,omitempty"`
  1250  	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
  1251  	XXX_unrecognized     []byte       `json:"-"`
  1252  	XXX_sizecache        int32        `json:"-"`
  1253  }
  1254  
  1255  func (m *GetHashByNoResponse) Reset()         { *m = GetHashByNoResponse{} }
  1256  func (m *GetHashByNoResponse) String() string { return proto.CompactTextString(m) }
  1257  func (*GetHashByNoResponse) ProtoMessage()    {}
  1258  func (*GetHashByNoResponse) Descriptor() ([]byte, []int) {
  1259  	return fileDescriptor_e7fdddb109e6467a, []int{21}
  1260  }
  1261  func (m *GetHashByNoResponse) XXX_Unmarshal(b []byte) error {
  1262  	return xxx_messageInfo_GetHashByNoResponse.Unmarshal(m, b)
  1263  }
  1264  func (m *GetHashByNoResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1265  	return xxx_messageInfo_GetHashByNoResponse.Marshal(b, m, deterministic)
  1266  }
  1267  func (m *GetHashByNoResponse) XXX_Merge(src proto.Message) {
  1268  	xxx_messageInfo_GetHashByNoResponse.Merge(m, src)
  1269  }
  1270  func (m *GetHashByNoResponse) XXX_Size() int {
  1271  	return xxx_messageInfo_GetHashByNoResponse.Size(m)
  1272  }
  1273  func (m *GetHashByNoResponse) XXX_DiscardUnknown() {
  1274  	xxx_messageInfo_GetHashByNoResponse.DiscardUnknown(m)
  1275  }
  1276  
  1277  var xxx_messageInfo_GetHashByNoResponse proto.InternalMessageInfo
  1278  
  1279  func (m *GetHashByNoResponse) GetStatus() ResultStatus {
  1280  	if m != nil {
  1281  		return m.Status
  1282  	}
  1283  	return ResultStatus_OK
  1284  }
  1285  
  1286  func (m *GetHashByNoResponse) GetBlockHash() []byte {
  1287  	if m != nil {
  1288  		return m.BlockHash
  1289  	}
  1290  	return nil
  1291  }
  1292  
  1293  // GetHashesRequest
  1294  type GetHashesRequest struct {
  1295  	// prevHash indicated referenced block hash. server will return hashes after this block.
  1296  	PrevHash []byte `protobuf:"bytes,1,opt,name=prevHash,proto3" json:"prevHash,omitempty"`
  1297  	// prevNumber indicated referenced block
  1298  	PrevNumber uint64 `protobuf:"varint,2,opt,name=prevNumber,proto3" json:"prevNumber,omitempty"`
  1299  	// maximum count of hashes that want to get
  1300  	Size                 uint64   `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
  1301  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1302  	XXX_unrecognized     []byte   `json:"-"`
  1303  	XXX_sizecache        int32    `json:"-"`
  1304  }
  1305  
  1306  func (m *GetHashesRequest) Reset()         { *m = GetHashesRequest{} }
  1307  func (m *GetHashesRequest) String() string { return proto.CompactTextString(m) }
  1308  func (*GetHashesRequest) ProtoMessage()    {}
  1309  func (*GetHashesRequest) Descriptor() ([]byte, []int) {
  1310  	return fileDescriptor_e7fdddb109e6467a, []int{22}
  1311  }
  1312  func (m *GetHashesRequest) XXX_Unmarshal(b []byte) error {
  1313  	return xxx_messageInfo_GetHashesRequest.Unmarshal(m, b)
  1314  }
  1315  func (m *GetHashesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1316  	return xxx_messageInfo_GetHashesRequest.Marshal(b, m, deterministic)
  1317  }
  1318  func (m *GetHashesRequest) XXX_Merge(src proto.Message) {
  1319  	xxx_messageInfo_GetHashesRequest.Merge(m, src)
  1320  }
  1321  func (m *GetHashesRequest) XXX_Size() int {
  1322  	return xxx_messageInfo_GetHashesRequest.Size(m)
  1323  }
  1324  func (m *GetHashesRequest) XXX_DiscardUnknown() {
  1325  	xxx_messageInfo_GetHashesRequest.DiscardUnknown(m)
  1326  }
  1327  
  1328  var xxx_messageInfo_GetHashesRequest proto.InternalMessageInfo
  1329  
  1330  func (m *GetHashesRequest) GetPrevHash() []byte {
  1331  	if m != nil {
  1332  		return m.PrevHash
  1333  	}
  1334  	return nil
  1335  }
  1336  
  1337  func (m *GetHashesRequest) GetPrevNumber() uint64 {
  1338  	if m != nil {
  1339  		return m.PrevNumber
  1340  	}
  1341  	return 0
  1342  }
  1343  
  1344  func (m *GetHashesRequest) GetSize() uint64 {
  1345  	if m != nil {
  1346  		return m.Size
  1347  	}
  1348  	return 0
  1349  }
  1350  
  1351  // GetHashesResponse contains response of GetHashesRequest.
  1352  type GetHashesResponse struct {
  1353  	Status               ResultStatus `protobuf:"varint,1,opt,name=status,proto3,enum=types.ResultStatus" json:"status,omitempty"`
  1354  	Hashes               [][]byte     `protobuf:"bytes,2,rep,name=hashes,proto3" json:"hashes,omitempty"`
  1355  	HasNext              bool         `protobuf:"varint,3,opt,name=hasNext,proto3" json:"hasNext,omitempty"`
  1356  	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
  1357  	XXX_unrecognized     []byte       `json:"-"`
  1358  	XXX_sizecache        int32        `json:"-"`
  1359  }
  1360  
  1361  func (m *GetHashesResponse) Reset()         { *m = GetHashesResponse{} }
  1362  func (m *GetHashesResponse) String() string { return proto.CompactTextString(m) }
  1363  func (*GetHashesResponse) ProtoMessage()    {}
  1364  func (*GetHashesResponse) Descriptor() ([]byte, []int) {
  1365  	return fileDescriptor_e7fdddb109e6467a, []int{23}
  1366  }
  1367  func (m *GetHashesResponse) XXX_Unmarshal(b []byte) error {
  1368  	return xxx_messageInfo_GetHashesResponse.Unmarshal(m, b)
  1369  }
  1370  func (m *GetHashesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1371  	return xxx_messageInfo_GetHashesResponse.Marshal(b, m, deterministic)
  1372  }
  1373  func (m *GetHashesResponse) XXX_Merge(src proto.Message) {
  1374  	xxx_messageInfo_GetHashesResponse.Merge(m, src)
  1375  }
  1376  func (m *GetHashesResponse) XXX_Size() int {
  1377  	return xxx_messageInfo_GetHashesResponse.Size(m)
  1378  }
  1379  func (m *GetHashesResponse) XXX_DiscardUnknown() {
  1380  	xxx_messageInfo_GetHashesResponse.DiscardUnknown(m)
  1381  }
  1382  
  1383  var xxx_messageInfo_GetHashesResponse proto.InternalMessageInfo
  1384  
  1385  func (m *GetHashesResponse) GetStatus() ResultStatus {
  1386  	if m != nil {
  1387  		return m.Status
  1388  	}
  1389  	return ResultStatus_OK
  1390  }
  1391  
  1392  func (m *GetHashesResponse) GetHashes() [][]byte {
  1393  	if m != nil {
  1394  		return m.Hashes
  1395  	}
  1396  	return nil
  1397  }
  1398  
  1399  func (m *GetHashesResponse) GetHasNext() bool {
  1400  	if m != nil {
  1401  		return m.HasNext
  1402  	}
  1403  	return false
  1404  }
  1405  
  1406  func init() {
  1407  	proto.RegisterType((*MsgHeader)(nil), "types.MsgHeader")
  1408  	proto.RegisterType((*P2PMessage)(nil), "types.P2PMessage")
  1409  	proto.RegisterType((*Ping)(nil), "types.Ping")
  1410  	proto.RegisterType((*Pong)(nil), "types.Pong")
  1411  	proto.RegisterType((*Status)(nil), "types.Status")
  1412  	proto.RegisterType((*GoAwayNotice)(nil), "types.GoAwayNotice")
  1413  	proto.RegisterType((*AddressesRequest)(nil), "types.AddressesRequest")
  1414  	proto.RegisterType((*AddressesResponse)(nil), "types.AddressesResponse")
  1415  	proto.RegisterType((*NewBlockNotice)(nil), "types.NewBlockNotice")
  1416  	proto.RegisterType((*BlockProducedNotice)(nil), "types.BlockProducedNotice")
  1417  	proto.RegisterType((*GetBlockHeadersRequest)(nil), "types.GetBlockHeadersRequest")
  1418  	proto.RegisterType((*GetBlockHeadersResponse)(nil), "types.GetBlockHeadersResponse")
  1419  	proto.RegisterType((*GetBlockRequest)(nil), "types.GetBlockRequest")
  1420  	proto.RegisterType((*GetBlockResponse)(nil), "types.GetBlockResponse")
  1421  	proto.RegisterType((*NewTransactionsNotice)(nil), "types.NewTransactionsNotice")
  1422  	proto.RegisterType((*GetTransactionsRequest)(nil), "types.GetTransactionsRequest")
  1423  	proto.RegisterType((*GetTransactionsResponse)(nil), "types.GetTransactionsResponse")
  1424  	proto.RegisterType((*GetMissingRequest)(nil), "types.GetMissingRequest")
  1425  	proto.RegisterType((*GetAncestorRequest)(nil), "types.GetAncestorRequest")
  1426  	proto.RegisterType((*GetAncestorResponse)(nil), "types.GetAncestorResponse")
  1427  	proto.RegisterType((*GetHashByNo)(nil), "types.GetHashByNo")
  1428  	proto.RegisterType((*GetHashByNoResponse)(nil), "types.GetHashByNoResponse")
  1429  	proto.RegisterType((*GetHashesRequest)(nil), "types.GetHashesRequest")
  1430  	proto.RegisterType((*GetHashesResponse)(nil), "types.GetHashesResponse")
  1431  	proto.RegisterEnum("types.ResultStatus", ResultStatus_name, ResultStatus_value)
  1432  }
  1433  
  1434  func init() { proto.RegisterFile("p2p.proto", fileDescriptor_e7fdddb109e6467a) }
  1435  
  1436  var fileDescriptor_e7fdddb109e6467a = []byte{
  1437  	// 1189 bytes of a gzipped FileDescriptorProto
  1438  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xdf, 0x72, 0xda, 0xc6,
  1439  	0x17, 0xfe, 0x09, 0x30, 0x86, 0x83, 0xb0, 0xe5, 0xf5, 0x2f, 0x89, 0xc6, 0xcd, 0xa4, 0x8c, 0x26,
  1440  	0xd3, 0xd2, 0x34, 0x93, 0xe9, 0x38, 0x4f, 0x20, 0x5b, 0x1b, 0x50, 0x83, 0x57, 0xcc, 0x22, 0xd2,
  1441  	0xf4, 0x8a, 0x0a, 0xd8, 0x80, 0x5a, 0x5b, 0x52, 0xb5, 0x22, 0xc1, 0xb9, 0xe9, 0x4c, 0x2f, 0xfa,
  1442  	0x06, 0x7d, 0x85, 0x3e, 0x46, 0x9f, 0xa6, 0xaf, 0xd1, 0x99, 0xce, 0xae, 0x56, 0x20, 0xf2, 0xa7,
  1443  	0x9e, 0x7a, 0x72, 0xb7, 0xdf, 0xd9, 0xa3, 0xef, 0xfc, 0xfb, 0xf6, 0x00, 0x34, 0x93, 0xd3, 0xe4,
  1444  	0x49, 0x92, 0xc6, 0x59, 0x8c, 0xf6, 0xb2, 0xeb, 0x84, 0xf1, 0x13, 0x63, 0x7a, 0x19, 0xcf, 0x7e,
  1445  	0x9a, 0x2d, 0x83, 0x30, 0xca, 0x2f, 0x4e, 0x20, 0x8a, 0xe7, 0x2c, 0x3f, 0x5b, 0x7f, 0x6b, 0xd0,
  1446  	0xbc, 0xe0, 0x8b, 0x3e, 0x0b, 0xe6, 0x2c, 0x45, 0x0f, 0xa1, 0x3d, 0xbb, 0x0c, 0x59, 0x94, 0xbd,
  1447  	0x60, 0x29, 0x0f, 0xe3, 0xc8, 0xd4, 0x3a, 0x5a, 0xb7, 0x49, 0x77, 0x8d, 0xe8, 0x3e, 0x34, 0xb3,
  1448  	0xf0, 0x8a, 0xf1, 0x2c, 0xb8, 0x4a, 0xcc, 0x4a, 0x47, 0xeb, 0x56, 0xe9, 0xd6, 0x80, 0x0e, 0xa0,
  1449  	0x12, 0xce, 0xcd, 0xaa, 0xfc, 0xb0, 0x12, 0xce, 0xd1, 0x5d, 0xa8, 0x2f, 0x62, 0xce, 0xc3, 0xc4,
  1450  	0xac, 0x75, 0xb4, 0x6e, 0x83, 0x2a, 0x24, 0xec, 0x09, 0x63, 0xa9, 0xeb, 0x98, 0x7b, 0x1d, 0xad,
  1451  	0xab, 0x53, 0x85, 0xd0, 0x03, 0x90, 0xf9, 0x0d, 0x57, 0xd3, 0xe7, 0xec, 0xda, 0xac, 0xcb, 0xbb,
  1452  	0x92, 0x05, 0x21, 0xa8, 0xf1, 0x70, 0x11, 0x99, 0xfb, 0xf2, 0x46, 0x9e, 0x51, 0x07, 0x5a, 0x7c,
  1453  	0x35, 0x95, 0x15, 0xcd, 0xe2, 0x4b, 0xb3, 0xd1, 0xd1, 0xba, 0x6d, 0x5a, 0x36, 0x89, 0x68, 0x97,
  1454  	0x2c, 0x5a, 0x64, 0x4b, 0xb3, 0x29, 0x2f, 0x15, 0xb2, 0xbe, 0x05, 0x18, 0x9e, 0x0e, 0x2f, 0x18,
  1455  	0xe7, 0xc1, 0x82, 0xa1, 0x2e, 0xd4, 0x97, 0xb2, 0x13, 0xb2, 0xf0, 0xd6, 0xa9, 0xf1, 0x44, 0xf6,
  1456  	0xf0, 0xc9, 0xa6, 0x43, 0x54, 0xdd, 0x8b, 0x2c, 0xe6, 0x41, 0x16, 0xc8, 0xf2, 0x75, 0x2a, 0xcf,
  1457  	0x96, 0x07, 0xb5, 0x61, 0x18, 0x2d, 0xd0, 0x17, 0x70, 0x38, 0x65, 0x3c, 0x9b, 0xc8, 0xc6, 0x4f,
  1458  	0x96, 0x01, 0x5f, 0x4a, 0x3a, 0x9d, 0xb6, 0x85, 0xf9, 0x4c, 0x58, 0xfb, 0x01, 0x5f, 0xa2, 0xcf,
  1459  	0xa1, 0x25, 0xfd, 0x96, 0x2c, 0x5c, 0x2c, 0x33, 0x49, 0x55, 0xa3, 0x20, 0x4c, 0x7d, 0x69, 0xb1,
  1460  	0x06, 0x50, 0x1b, 0xc6, 0xd1, 0x42, 0x8c, 0x65, 0xe7, 0xcb, 0x0f, 0xd3, 0x3d, 0x80, 0xd2, 0xb7,
  1461  	0x1f, 0x60, 0xfb, 0x4b, 0x83, 0xfa, 0x28, 0x0b, 0xb2, 0x15, 0x47, 0x8f, 0xa0, 0xce, 0x59, 0xb4,
  1462  	0xad, 0x13, 0xa9, 0x3a, 0x87, 0x8c, 0xa5, 0xf6, 0x7c, 0x9e, 0x32, 0xce, 0xa9, 0xf2, 0x78, 0x3f,
  1463  	0x78, 0xe5, 0xe6, 0xe0, 0xd5, 0x77, 0x83, 0x23, 0x13, 0xf6, 0xa5, 0x04, 0x5d, 0x47, 0xca, 0x40,
  1464  	0xa7, 0x05, 0x44, 0x27, 0xd0, 0x88, 0x62, 0xbc, 0x4e, 0x62, 0xce, 0xa4, 0x12, 0x1a, 0x74, 0x83,
  1465  	0xc5, 0x57, 0xaf, 0x95, 0x12, 0xeb, 0x52, 0x50, 0x05, 0x14, 0x37, 0x0b, 0x16, 0x31, 0x1e, 0x72,
  1466  	0x25, 0x84, 0x02, 0x5a, 0x5d, 0xd0, 0x7b, 0xb1, 0xfd, 0x26, 0xb8, 0x26, 0x71, 0x16, 0xce, 0x24,
  1467  	0xc7, 0x55, 0x3e, 0x5e, 0xa5, 0xe6, 0x02, 0x5a, 0x2f, 0xc1, 0x50, 0xc5, 0x32, 0x4e, 0xd9, 0xcf,
  1468  	0x2b, 0xc6, 0xb3, 0xff, 0xd4, 0x19, 0xc1, 0x1c, 0xac, 0x47, 0xe1, 0x5b, 0x26, 0x7b, 0xd2, 0xa6,
  1469  	0x05, 0xb4, 0x7e, 0x84, 0xa3, 0x12, 0x33, 0x4f, 0xe2, 0x88, 0x33, 0xf4, 0x35, 0xd4, 0xb9, 0x6c,
  1470  	0xbf, 0xa4, 0x3e, 0x38, 0x3d, 0x56, 0xd4, 0x94, 0xf1, 0xd5, 0x65, 0x96, 0x4f, 0x86, 0x2a, 0x17,
  1471  	0xd4, 0x85, 0x3d, 0xf1, 0x1e, 0xb8, 0x59, 0xe9, 0x54, 0x3f, 0x92, 0x46, 0xee, 0x60, 0xf5, 0xe1,
  1472  	0x80, 0xb0, 0x37, 0x72, 0x12, 0xaa, 0xe2, 0xfb, 0xd0, 0x9c, 0xbe, 0x23, 0x95, 0xad, 0x41, 0x64,
  1473  	0x3d, 0xcd, 0x9d, 0x95, 0x46, 0x0a, 0x68, 0x71, 0x38, 0x96, 0x34, 0xc3, 0x34, 0x9e, 0xaf, 0x66,
  1474  	0x6c, 0xae, 0xe8, 0x1e, 0x00, 0x24, 0xb9, 0x45, 0x3c, 0xd6, 0x9c, 0xaf, 0x64, 0xf9, 0x38, 0x21,
  1475  	0xb2, 0x60, 0x4f, 0x1e, 0xa5, 0x1e, 0x5a, 0xa7, 0xba, 0x2a, 0x42, 0x06, 0xa1, 0xf9, 0x95, 0xf5,
  1476  	0xab, 0x06, 0x77, 0x7b, 0x4c, 0x29, 0x49, 0xbe, 0xad, 0xcd, 0x2c, 0x10, 0xd4, 0x4a, 0x8f, 0x47,
  1477  	0x9e, 0xc5, 0x3b, 0xde, 0x79, 0x2e, 0x0a, 0x09, 0x7b, 0xfc, 0xea, 0x15, 0x67, 0x85, 0xf6, 0x14,
  1478  	0xca, 0xb7, 0xc5, 0x5b, 0x26, 0x45, 0xd7, 0xa6, 0xf2, 0x8c, 0x0c, 0xa8, 0x06, 0x7c, 0xa6, 0xc4,
  1479  	0x26, 0x8e, 0xd6, 0x1f, 0x1a, 0xdc, 0x7b, 0x2f, 0x89, 0xdb, 0x8c, 0x4d, 0xa4, 0x17, 0xf0, 0x25,
  1480  	0xcb, 0xe7, 0xa6, 0x53, 0x85, 0xd0, 0x63, 0xd8, 0xcf, 0x17, 0x07, 0x37, 0xab, 0x3b, 0x03, 0x2d,
  1481  	0x85, 0xa4, 0x85, 0x8b, 0xe8, 0xe8, 0x32, 0xe0, 0x84, 0xad, 0x33, 0xb5, 0x33, 0x0b, 0x68, 0x7d,
  1482  	0x05, 0x87, 0x45, 0x9e, 0x45, 0x97, 0xb6, 0x21, 0xb5, 0x72, 0x48, 0xeb, 0x17, 0x30, 0xb6, 0xae,
  1483  	0xb7, 0xa9, 0xe5, 0x21, 0xd4, 0xe5, 0x88, 0x0a, 0x0d, 0xee, 0x8e, 0x4f, 0xdd, 0x95, 0x73, 0xad,
  1484  	0xee, 0xe6, 0xfa, 0x14, 0xee, 0x10, 0xf6, 0xc6, 0x4f, 0x83, 0x88, 0x07, 0xb3, 0x2c, 0x8c, 0x23,
  1485  	0xae, 0x04, 0x75, 0x02, 0x8d, 0x6c, 0xdd, 0x2f, 0xe7, 0xbc, 0xc1, 0xd6, 0x37, 0x52, 0x0d, 0xe5,
  1486  	0x8f, 0x6e, 0xaa, 0xf3, 0xf7, 0x7c, 0x76, 0xbb, 0x9f, 0x7c, 0xca, 0xd9, 0x7d, 0x06, 0xd5, 0x6c,
  1487  	0x5d, 0xcc, 0xad, 0xa9, 0x18, 0xfc, 0x35, 0x15, 0xd6, 0x7f, 0x19, 0x55, 0x0f, 0x8e, 0x7a, 0x2c,
  1488  	0xbb, 0x08, 0x39, 0x0f, 0xa3, 0xc5, 0x0d, 0x45, 0x88, 0x96, 0xf0, 0x2c, 0x4e, 0x96, 0xdb, 0xfd,
  1489  	0xba, 0xc1, 0xd6, 0x63, 0x40, 0x3d, 0x96, 0xd9, 0xd1, 0x8c, 0xf1, 0x2c, 0x4e, 0x6f, 0x6a, 0xc7,
  1490  	0x6f, 0x1a, 0x1c, 0xef, 0xb8, 0xdf, 0xa6, 0x15, 0x16, 0xe8, 0x81, 0x22, 0x28, 0xad, 0xfc, 0x1d,
  1491  	0x9b, 0x58, 0x0b, 0x05, 0x26, 0x71, 0xb1, 0xf1, 0xb7, 0x16, 0xeb, 0x4b, 0x68, 0xf5, 0x58, 0x26,
  1492  	0x5c, 0xcf, 0xae, 0x49, 0x5c, 0xde, 0x12, 0xda, 0xee, 0xda, 0xf9, 0x41, 0x26, 0x5c, 0x38, 0xde,
  1493  	0x2e, 0xe1, 0x9d, 0x95, 0x57, 0x79, 0x67, 0xe5, 0x59, 0x53, 0xf9, 0x14, 0x72, 0x85, 0x15, 0xfd,
  1494  	0x3b, 0x81, 0x46, 0x92, 0xb2, 0xd7, 0xa5, 0x1d, 0xb9, 0xc1, 0xf9, 0xc6, 0x63, 0xaf, 0xc9, 0xea,
  1495  	0x6a, 0xca, 0xd2, 0xe2, 0x97, 0x74, 0x6b, 0xd9, 0x2c, 0x95, 0xbc, 0x68, 0x79, 0xb6, 0x52, 0x39,
  1496  	0xee, 0x22, 0xc6, 0xa7, 0xd4, 0xdf, 0x47, 0x5f, 0xd8, 0xa3, 0x3f, 0x2b, 0xa0, 0x97, 0xa9, 0x50,
  1497  	0x1d, 0x2a, 0xde, 0x73, 0xe3, 0x7f, 0x48, 0x87, 0xc6, 0xb9, 0x4d, 0xce, 0xf1, 0x00, 0x3b, 0x86,
  1498  	0x86, 0x5a, 0xb0, 0x3f, 0x26, 0xcf, 0x89, 0xf7, 0x1d, 0x31, 0x2a, 0xe8, 0xff, 0x60, 0xb8, 0xe4,
  1499  	0x85, 0x3d, 0x70, 0x9d, 0x89, 0x4d, 0x7b, 0xe3, 0x0b, 0x4c, 0x7c, 0xa3, 0x8a, 0xee, 0xc0, 0x91,
  1500  	0x83, 0x6d, 0x67, 0xe0, 0x12, 0x3c, 0xc1, 0x2f, 0xcf, 0x31, 0x76, 0xb0, 0x63, 0xd4, 0x50, 0x1b,
  1501  	0x9a, 0xc4, 0xf3, 0x27, 0xcf, 0xbc, 0x31, 0x71, 0x8c, 0x3d, 0x84, 0xe0, 0xc0, 0x1e, 0x50, 0x6c,
  1502  	0x3b, 0xdf, 0x4f, 0xf0, 0x4b, 0x77, 0xe4, 0x8f, 0x8c, 0xba, 0xf8, 0x72, 0x88, 0xe9, 0x85, 0x3b,
  1503  	0x1a, 0xb9, 0x1e, 0x99, 0x38, 0x98, 0xb8, 0xd8, 0x31, 0xf6, 0xd1, 0x5d, 0x40, 0x14, 0x8f, 0xbc,
  1504  	0x31, 0x3d, 0x17, 0x84, 0x7d, 0x7b, 0x3c, 0xf2, 0xb1, 0x63, 0x34, 0xd0, 0x3d, 0x38, 0x7e, 0x66,
  1505  	0xbb, 0x03, 0xec, 0x4c, 0x86, 0x14, 0x9f, 0x7b, 0xc4, 0x71, 0x7d, 0xd7, 0x23, 0x46, 0x53, 0x24,
  1506  	0x69, 0x9f, 0x79, 0x54, 0x78, 0x01, 0x32, 0x40, 0xf7, 0xc6, 0xfe, 0xc4, 0x7b, 0x36, 0xa1, 0x36,
  1507  	0xe9, 0x61, 0xa3, 0x85, 0x8e, 0xa0, 0x3d, 0x26, 0xee, 0xc5, 0x70, 0x80, 0x45, 0xc6, 0xd8, 0x31,
  1508  	0x74, 0x51, 0xa4, 0x4b, 0x7c, 0x4c, 0x89, 0x3d, 0x30, 0xda, 0xe8, 0x10, 0x5a, 0x63, 0x62, 0xbf,
  1509  	0xb0, 0xdd, 0x81, 0x7d, 0x36, 0xc0, 0xc6, 0x81, 0xc8, 0xdd, 0xb1, 0x7d, 0x7b, 0x32, 0xf0, 0x46,
  1510  	0x23, 0xe3, 0x10, 0x1d, 0xc3, 0xe1, 0x98, 0xd8, 0x63, 0xbf, 0x8f, 0x89, 0xef, 0x9e, 0xdb, 0x82,
  1511  	0xc2, 0x98, 0xd6, 0xe5, 0xff, 0xc3, 0xa7, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0xb0, 0x9d, 0x20,
  1512  	0xb5, 0x36, 0x0b, 0x00, 0x00,
  1513  }