// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.1
// 	protoc        (unknown)
// source: cln/node.proto

package cln

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// Getinfo.address[].type
type GetinfoAddress_GetinfoAddressType int32

const (
	GetinfoAddress_DNS   GetinfoAddress_GetinfoAddressType = 0
	GetinfoAddress_IPV4  GetinfoAddress_GetinfoAddressType = 1
	GetinfoAddress_IPV6  GetinfoAddress_GetinfoAddressType = 2
	GetinfoAddress_TORV2 GetinfoAddress_GetinfoAddressType = 3
	GetinfoAddress_TORV3 GetinfoAddress_GetinfoAddressType = 4
)

// Enum value maps for GetinfoAddress_GetinfoAddressType.
var (
	GetinfoAddress_GetinfoAddressType_name = map[int32]string{
		0: "DNS",
		1: "IPV4",
		2: "IPV6",
		3: "TORV2",
		4: "TORV3",
	}
	GetinfoAddress_GetinfoAddressType_value = map[string]int32{
		"DNS":   0,
		"IPV4":  1,
		"IPV6":  2,
		"TORV2": 3,
		"TORV3": 4,
	}
)

func (x GetinfoAddress_GetinfoAddressType) Enum() *GetinfoAddress_GetinfoAddressType {
	p := new(GetinfoAddress_GetinfoAddressType)
	*p = x
	return p
}

func (x GetinfoAddress_GetinfoAddressType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (GetinfoAddress_GetinfoAddressType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[0].Descriptor()
}

func (GetinfoAddress_GetinfoAddressType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[0]
}

func (x GetinfoAddress_GetinfoAddressType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use GetinfoAddress_GetinfoAddressType.Descriptor instead.
func (GetinfoAddress_GetinfoAddressType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{3, 0}
}

// Getinfo.binding[].type
type GetinfoBinding_GetinfoBindingType int32

const (
	GetinfoBinding_LOCAL_SOCKET GetinfoBinding_GetinfoBindingType = 0
	GetinfoBinding_IPV4         GetinfoBinding_GetinfoBindingType = 1
	GetinfoBinding_IPV6         GetinfoBinding_GetinfoBindingType = 2
	GetinfoBinding_TORV2        GetinfoBinding_GetinfoBindingType = 3
	GetinfoBinding_TORV3        GetinfoBinding_GetinfoBindingType = 4
	GetinfoBinding_WEBSOCKET    GetinfoBinding_GetinfoBindingType = 5
)

// Enum value maps for GetinfoBinding_GetinfoBindingType.
var (
	GetinfoBinding_GetinfoBindingType_name = map[int32]string{
		0: "LOCAL_SOCKET",
		1: "IPV4",
		2: "IPV6",
		3: "TORV2",
		4: "TORV3",
		5: "WEBSOCKET",
	}
	GetinfoBinding_GetinfoBindingType_value = map[string]int32{
		"LOCAL_SOCKET": 0,
		"IPV4":         1,
		"IPV6":         2,
		"TORV2":        3,
		"TORV3":        4,
		"WEBSOCKET":    5,
	}
)

func (x GetinfoBinding_GetinfoBindingType) Enum() *GetinfoBinding_GetinfoBindingType {
	p := new(GetinfoBinding_GetinfoBindingType)
	*p = x
	return p
}

func (x GetinfoBinding_GetinfoBindingType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (GetinfoBinding_GetinfoBindingType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[1].Descriptor()
}

func (GetinfoBinding_GetinfoBindingType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[1]
}

func (x GetinfoBinding_GetinfoBindingType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use GetinfoBinding_GetinfoBindingType.Descriptor instead.
func (GetinfoBinding_GetinfoBindingType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{4, 0}
}

// ListPeers.level
type ListpeersRequest_ListpeersLevel int32

const (
	ListpeersRequest_IO      ListpeersRequest_ListpeersLevel = 0
	ListpeersRequest_DEBUG   ListpeersRequest_ListpeersLevel = 1
	ListpeersRequest_INFO    ListpeersRequest_ListpeersLevel = 2
	ListpeersRequest_UNUSUAL ListpeersRequest_ListpeersLevel = 3
	ListpeersRequest_TRACE   ListpeersRequest_ListpeersLevel = 4
)

// Enum value maps for ListpeersRequest_ListpeersLevel.
var (
	ListpeersRequest_ListpeersLevel_name = map[int32]string{
		0: "IO",
		1: "DEBUG",
		2: "INFO",
		3: "UNUSUAL",
		4: "TRACE",
	}
	ListpeersRequest_ListpeersLevel_value = map[string]int32{
		"IO":      0,
		"DEBUG":   1,
		"INFO":    2,
		"UNUSUAL": 3,
		"TRACE":   4,
	}
)

func (x ListpeersRequest_ListpeersLevel) Enum() *ListpeersRequest_ListpeersLevel {
	p := new(ListpeersRequest_ListpeersLevel)
	*p = x
	return p
}

func (x ListpeersRequest_ListpeersLevel) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListpeersRequest_ListpeersLevel) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[2].Descriptor()
}

func (ListpeersRequest_ListpeersLevel) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[2]
}

func (x ListpeersRequest_ListpeersLevel) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListpeersRequest_ListpeersLevel.Descriptor instead.
func (ListpeersRequest_ListpeersLevel) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{5, 0}
}

// ListPeers.peers[].log[].type
type ListpeersPeersLog_ListpeersPeersLogType int32

const (
	ListpeersPeersLog_SKIPPED ListpeersPeersLog_ListpeersPeersLogType = 0
	ListpeersPeersLog_BROKEN  ListpeersPeersLog_ListpeersPeersLogType = 1
	ListpeersPeersLog_UNUSUAL ListpeersPeersLog_ListpeersPeersLogType = 2
	ListpeersPeersLog_INFO    ListpeersPeersLog_ListpeersPeersLogType = 3
	ListpeersPeersLog_DEBUG   ListpeersPeersLog_ListpeersPeersLogType = 4
	ListpeersPeersLog_IO_IN   ListpeersPeersLog_ListpeersPeersLogType = 5
	ListpeersPeersLog_IO_OUT  ListpeersPeersLog_ListpeersPeersLogType = 6
	ListpeersPeersLog_TRACE   ListpeersPeersLog_ListpeersPeersLogType = 7
)

// Enum value maps for ListpeersPeersLog_ListpeersPeersLogType.
var (
	ListpeersPeersLog_ListpeersPeersLogType_name = map[int32]string{
		0: "SKIPPED",
		1: "BROKEN",
		2: "UNUSUAL",
		3: "INFO",
		4: "DEBUG",
		5: "IO_IN",
		6: "IO_OUT",
		7: "TRACE",
	}
	ListpeersPeersLog_ListpeersPeersLogType_value = map[string]int32{
		"SKIPPED": 0,
		"BROKEN":  1,
		"UNUSUAL": 2,
		"INFO":    3,
		"DEBUG":   4,
		"IO_IN":   5,
		"IO_OUT":  6,
		"TRACE":   7,
	}
)

func (x ListpeersPeersLog_ListpeersPeersLogType) Enum() *ListpeersPeersLog_ListpeersPeersLogType {
	p := new(ListpeersPeersLog_ListpeersPeersLogType)
	*p = x
	return p
}

func (x ListpeersPeersLog_ListpeersPeersLogType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListpeersPeersLog_ListpeersPeersLogType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[3].Descriptor()
}

func (ListpeersPeersLog_ListpeersPeersLogType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[3]
}

func (x ListpeersPeersLog_ListpeersPeersLogType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListpeersPeersLog_ListpeersPeersLogType.Descriptor instead.
func (ListpeersPeersLog_ListpeersPeersLogType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{8, 0}
}

// ListFunds.outputs[].status
type ListfundsOutputs_ListfundsOutputsStatus int32

const (
	ListfundsOutputs_UNCONFIRMED ListfundsOutputs_ListfundsOutputsStatus = 0
	ListfundsOutputs_CONFIRMED   ListfundsOutputs_ListfundsOutputsStatus = 1
	ListfundsOutputs_SPENT       ListfundsOutputs_ListfundsOutputsStatus = 2
	ListfundsOutputs_IMMATURE    ListfundsOutputs_ListfundsOutputsStatus = 3
)

// Enum value maps for ListfundsOutputs_ListfundsOutputsStatus.
var (
	ListfundsOutputs_ListfundsOutputsStatus_name = map[int32]string{
		0: "UNCONFIRMED",
		1: "CONFIRMED",
		2: "SPENT",
		3: "IMMATURE",
	}
	ListfundsOutputs_ListfundsOutputsStatus_value = map[string]int32{
		"UNCONFIRMED": 0,
		"CONFIRMED":   1,
		"SPENT":       2,
		"IMMATURE":    3,
	}
)

func (x ListfundsOutputs_ListfundsOutputsStatus) Enum() *ListfundsOutputs_ListfundsOutputsStatus {
	p := new(ListfundsOutputs_ListfundsOutputsStatus)
	*p = x
	return p
}

func (x ListfundsOutputs_ListfundsOutputsStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListfundsOutputs_ListfundsOutputsStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[4].Descriptor()
}

func (ListfundsOutputs_ListfundsOutputsStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[4]
}

func (x ListfundsOutputs_ListfundsOutputsStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListfundsOutputs_ListfundsOutputsStatus.Descriptor instead.
func (ListfundsOutputs_ListfundsOutputsStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{11, 0}
}

// SendPay.status
type SendpayResponse_SendpayStatus int32

const (
	SendpayResponse_PENDING  SendpayResponse_SendpayStatus = 0
	SendpayResponse_COMPLETE SendpayResponse_SendpayStatus = 1
)

// Enum value maps for SendpayResponse_SendpayStatus.
var (
	SendpayResponse_SendpayStatus_name = map[int32]string{
		0: "PENDING",
		1: "COMPLETE",
	}
	SendpayResponse_SendpayStatus_value = map[string]int32{
		"PENDING":  0,
		"COMPLETE": 1,
	}
)

func (x SendpayResponse_SendpayStatus) Enum() *SendpayResponse_SendpayStatus {
	p := new(SendpayResponse_SendpayStatus)
	*p = x
	return p
}

func (x SendpayResponse_SendpayStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (SendpayResponse_SendpayStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[5].Descriptor()
}

func (SendpayResponse_SendpayStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[5]
}

func (x SendpayResponse_SendpayStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use SendpayResponse_SendpayStatus.Descriptor instead.
func (SendpayResponse_SendpayStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{14, 0}
}

// Close.type
type CloseResponse_CloseType int32

const (
	CloseResponse_MUTUAL     CloseResponse_CloseType = 0
	CloseResponse_UNILATERAL CloseResponse_CloseType = 1
	CloseResponse_UNOPENED   CloseResponse_CloseType = 2
)

// Enum value maps for CloseResponse_CloseType.
var (
	CloseResponse_CloseType_name = map[int32]string{
		0: "MUTUAL",
		1: "UNILATERAL",
		2: "UNOPENED",
	}
	CloseResponse_CloseType_value = map[string]int32{
		"MUTUAL":     0,
		"UNILATERAL": 1,
		"UNOPENED":   2,
	}
)

func (x CloseResponse_CloseType) Enum() *CloseResponse_CloseType {
	p := new(CloseResponse_CloseType)
	*p = x
	return p
}

func (x CloseResponse_CloseType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (CloseResponse_CloseType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[6].Descriptor()
}

func (CloseResponse_CloseType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[6]
}

func (x CloseResponse_CloseType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use CloseResponse_CloseType.Descriptor instead.
func (CloseResponse_CloseType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{44, 0}
}

// Connect.direction
type ConnectResponse_ConnectDirection int32

const (
	ConnectResponse_IN  ConnectResponse_ConnectDirection = 0
	ConnectResponse_OUT ConnectResponse_ConnectDirection = 1
)

// Enum value maps for ConnectResponse_ConnectDirection.
var (
	ConnectResponse_ConnectDirection_name = map[int32]string{
		0: "IN",
		1: "OUT",
	}
	ConnectResponse_ConnectDirection_value = map[string]int32{
		"IN":  0,
		"OUT": 1,
	}
)

func (x ConnectResponse_ConnectDirection) Enum() *ConnectResponse_ConnectDirection {
	p := new(ConnectResponse_ConnectDirection)
	*p = x
	return p
}

func (x ConnectResponse_ConnectDirection) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ConnectResponse_ConnectDirection) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[7].Descriptor()
}

func (ConnectResponse_ConnectDirection) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[7]
}

func (x ConnectResponse_ConnectDirection) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ConnectResponse_ConnectDirection.Descriptor instead.
func (ConnectResponse_ConnectDirection) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{46, 0}
}

// Connect.address.type
type ConnectAddress_ConnectAddressType int32

const (
	ConnectAddress_LOCAL_SOCKET ConnectAddress_ConnectAddressType = 0
	ConnectAddress_IPV4         ConnectAddress_ConnectAddressType = 1
	ConnectAddress_IPV6         ConnectAddress_ConnectAddressType = 2
	ConnectAddress_TORV2        ConnectAddress_ConnectAddressType = 3
	ConnectAddress_TORV3        ConnectAddress_ConnectAddressType = 4
)

// Enum value maps for ConnectAddress_ConnectAddressType.
var (
	ConnectAddress_ConnectAddressType_name = map[int32]string{
		0: "LOCAL_SOCKET",
		1: "IPV4",
		2: "IPV6",
		3: "TORV2",
		4: "TORV3",
	}
	ConnectAddress_ConnectAddressType_value = map[string]int32{
		"LOCAL_SOCKET": 0,
		"IPV4":         1,
		"IPV6":         2,
		"TORV2":        3,
		"TORV3":        4,
	}
)

func (x ConnectAddress_ConnectAddressType) Enum() *ConnectAddress_ConnectAddressType {
	p := new(ConnectAddress_ConnectAddressType)
	*p = x
	return p
}

func (x ConnectAddress_ConnectAddressType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ConnectAddress_ConnectAddressType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[8].Descriptor()
}

func (ConnectAddress_ConnectAddressType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[8]
}

func (x ConnectAddress_ConnectAddressType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ConnectAddress_ConnectAddressType.Descriptor instead.
func (ConnectAddress_ConnectAddressType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{47, 0}
}

// CreateInvoice.status
type CreateinvoiceResponse_CreateinvoiceStatus int32

const (
	CreateinvoiceResponse_PAID    CreateinvoiceResponse_CreateinvoiceStatus = 0
	CreateinvoiceResponse_EXPIRED CreateinvoiceResponse_CreateinvoiceStatus = 1
	CreateinvoiceResponse_UNPAID  CreateinvoiceResponse_CreateinvoiceStatus = 2
)

// Enum value maps for CreateinvoiceResponse_CreateinvoiceStatus.
var (
	CreateinvoiceResponse_CreateinvoiceStatus_name = map[int32]string{
		0: "PAID",
		1: "EXPIRED",
		2: "UNPAID",
	}
	CreateinvoiceResponse_CreateinvoiceStatus_value = map[string]int32{
		"PAID":    0,
		"EXPIRED": 1,
		"UNPAID":  2,
	}
)

func (x CreateinvoiceResponse_CreateinvoiceStatus) Enum() *CreateinvoiceResponse_CreateinvoiceStatus {
	p := new(CreateinvoiceResponse_CreateinvoiceStatus)
	*p = x
	return p
}

func (x CreateinvoiceResponse_CreateinvoiceStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (CreateinvoiceResponse_CreateinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[9].Descriptor()
}

func (CreateinvoiceResponse_CreateinvoiceStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[9]
}

func (x CreateinvoiceResponse_CreateinvoiceStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use CreateinvoiceResponse_CreateinvoiceStatus.Descriptor instead.
func (CreateinvoiceResponse_CreateinvoiceStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{49, 0}
}

// Datastore.mode
type DatastoreRequest_DatastoreMode int32

const (
	DatastoreRequest_MUST_CREATE       DatastoreRequest_DatastoreMode = 0
	DatastoreRequest_MUST_REPLACE      DatastoreRequest_DatastoreMode = 1
	DatastoreRequest_CREATE_OR_REPLACE DatastoreRequest_DatastoreMode = 2
	DatastoreRequest_MUST_APPEND       DatastoreRequest_DatastoreMode = 3
	DatastoreRequest_CREATE_OR_APPEND  DatastoreRequest_DatastoreMode = 4
)

// Enum value maps for DatastoreRequest_DatastoreMode.
var (
	DatastoreRequest_DatastoreMode_name = map[int32]string{
		0: "MUST_CREATE",
		1: "MUST_REPLACE",
		2: "CREATE_OR_REPLACE",
		3: "MUST_APPEND",
		4: "CREATE_OR_APPEND",
	}
	DatastoreRequest_DatastoreMode_value = map[string]int32{
		"MUST_CREATE":       0,
		"MUST_REPLACE":      1,
		"CREATE_OR_REPLACE": 2,
		"MUST_APPEND":       3,
		"CREATE_OR_APPEND":  4,
	}
)

func (x DatastoreRequest_DatastoreMode) Enum() *DatastoreRequest_DatastoreMode {
	p := new(DatastoreRequest_DatastoreMode)
	*p = x
	return p
}

func (x DatastoreRequest_DatastoreMode) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DatastoreRequest_DatastoreMode) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[10].Descriptor()
}

func (DatastoreRequest_DatastoreMode) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[10]
}

func (x DatastoreRequest_DatastoreMode) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DatastoreRequest_DatastoreMode.Descriptor instead.
func (DatastoreRequest_DatastoreMode) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{51, 0}
}

// DelInvoice.status
type DelinvoiceRequest_DelinvoiceStatus int32

const (
	DelinvoiceRequest_PAID    DelinvoiceRequest_DelinvoiceStatus = 0
	DelinvoiceRequest_EXPIRED DelinvoiceRequest_DelinvoiceStatus = 1
	DelinvoiceRequest_UNPAID  DelinvoiceRequest_DelinvoiceStatus = 2
)

// Enum value maps for DelinvoiceRequest_DelinvoiceStatus.
var (
	DelinvoiceRequest_DelinvoiceStatus_name = map[int32]string{
		0: "PAID",
		1: "EXPIRED",
		2: "UNPAID",
	}
	DelinvoiceRequest_DelinvoiceStatus_value = map[string]int32{
		"PAID":    0,
		"EXPIRED": 1,
		"UNPAID":  2,
	}
)

func (x DelinvoiceRequest_DelinvoiceStatus) Enum() *DelinvoiceRequest_DelinvoiceStatus {
	p := new(DelinvoiceRequest_DelinvoiceStatus)
	*p = x
	return p
}

func (x DelinvoiceRequest_DelinvoiceStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DelinvoiceRequest_DelinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[11].Descriptor()
}

func (DelinvoiceRequest_DelinvoiceStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[11]
}

func (x DelinvoiceRequest_DelinvoiceStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DelinvoiceRequest_DelinvoiceStatus.Descriptor instead.
func (DelinvoiceRequest_DelinvoiceStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{61, 0}
}

// DelInvoice.status
type DelinvoiceResponse_DelinvoiceStatus int32

const (
	DelinvoiceResponse_PAID    DelinvoiceResponse_DelinvoiceStatus = 0
	DelinvoiceResponse_EXPIRED DelinvoiceResponse_DelinvoiceStatus = 1
	DelinvoiceResponse_UNPAID  DelinvoiceResponse_DelinvoiceStatus = 2
)

// Enum value maps for DelinvoiceResponse_DelinvoiceStatus.
var (
	DelinvoiceResponse_DelinvoiceStatus_name = map[int32]string{
		0: "PAID",
		1: "EXPIRED",
		2: "UNPAID",
	}
	DelinvoiceResponse_DelinvoiceStatus_value = map[string]int32{
		"PAID":    0,
		"EXPIRED": 1,
		"UNPAID":  2,
	}
)

func (x DelinvoiceResponse_DelinvoiceStatus) Enum() *DelinvoiceResponse_DelinvoiceStatus {
	p := new(DelinvoiceResponse_DelinvoiceStatus)
	*p = x
	return p
}

func (x DelinvoiceResponse_DelinvoiceStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DelinvoiceResponse_DelinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[12].Descriptor()
}

func (DelinvoiceResponse_DelinvoiceStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[12]
}

func (x DelinvoiceResponse_DelinvoiceStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DelinvoiceResponse_DelinvoiceStatus.Descriptor instead.
func (DelinvoiceResponse_DelinvoiceStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{62, 0}
}

// Recover.result
type RecoverResponse_RecoverResult int32

const (
	RecoverResponse_RECOVERY_RESTART_IN_PROGRESS RecoverResponse_RecoverResult = 0
)

// Enum value maps for RecoverResponse_RecoverResult.
var (
	RecoverResponse_RecoverResult_name = map[int32]string{
		0: "RECOVERY_RESTART_IN_PROGRESS",
	}
	RecoverResponse_RecoverResult_value = map[string]int32{
		"RECOVERY_RESTART_IN_PROGRESS": 0,
	}
)

func (x RecoverResponse_RecoverResult) Enum() *RecoverResponse_RecoverResult {
	p := new(RecoverResponse_RecoverResult)
	*p = x
	return p
}

func (x RecoverResponse_RecoverResult) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RecoverResponse_RecoverResult) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[13].Descriptor()
}

func (RecoverResponse_RecoverResult) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[13]
}

func (x RecoverResponse_RecoverResult) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RecoverResponse_RecoverResult.Descriptor instead.
func (RecoverResponse_RecoverResult) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{72, 0}
}

// ListInvoices.index
type ListinvoicesRequest_ListinvoicesIndex int32

const (
	ListinvoicesRequest_CREATED ListinvoicesRequest_ListinvoicesIndex = 0
	ListinvoicesRequest_UPDATED ListinvoicesRequest_ListinvoicesIndex = 1
)

// Enum value maps for ListinvoicesRequest_ListinvoicesIndex.
var (
	ListinvoicesRequest_ListinvoicesIndex_name = map[int32]string{
		0: "CREATED",
		1: "UPDATED",
	}
	ListinvoicesRequest_ListinvoicesIndex_value = map[string]int32{
		"CREATED": 0,
		"UPDATED": 1,
	}
)

func (x ListinvoicesRequest_ListinvoicesIndex) Enum() *ListinvoicesRequest_ListinvoicesIndex {
	p := new(ListinvoicesRequest_ListinvoicesIndex)
	*p = x
	return p
}

func (x ListinvoicesRequest_ListinvoicesIndex) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListinvoicesRequest_ListinvoicesIndex) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[14].Descriptor()
}

func (ListinvoicesRequest_ListinvoicesIndex) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[14]
}

func (x ListinvoicesRequest_ListinvoicesIndex) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListinvoicesRequest_ListinvoicesIndex.Descriptor instead.
func (ListinvoicesRequest_ListinvoicesIndex) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{87, 0}
}

// ListInvoices.invoices[].status
type ListinvoicesInvoices_ListinvoicesInvoicesStatus int32

const (
	ListinvoicesInvoices_UNPAID  ListinvoicesInvoices_ListinvoicesInvoicesStatus = 0
	ListinvoicesInvoices_PAID    ListinvoicesInvoices_ListinvoicesInvoicesStatus = 1
	ListinvoicesInvoices_EXPIRED ListinvoicesInvoices_ListinvoicesInvoicesStatus = 2
)

// Enum value maps for ListinvoicesInvoices_ListinvoicesInvoicesStatus.
var (
	ListinvoicesInvoices_ListinvoicesInvoicesStatus_name = map[int32]string{
		0: "UNPAID",
		1: "PAID",
		2: "EXPIRED",
	}
	ListinvoicesInvoices_ListinvoicesInvoicesStatus_value = map[string]int32{
		"UNPAID":  0,
		"PAID":    1,
		"EXPIRED": 2,
	}
)

func (x ListinvoicesInvoices_ListinvoicesInvoicesStatus) Enum() *ListinvoicesInvoices_ListinvoicesInvoicesStatus {
	p := new(ListinvoicesInvoices_ListinvoicesInvoicesStatus)
	*p = x
	return p
}

func (x ListinvoicesInvoices_ListinvoicesInvoicesStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListinvoicesInvoices_ListinvoicesInvoicesStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[15].Descriptor()
}

func (ListinvoicesInvoices_ListinvoicesInvoicesStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[15]
}

func (x ListinvoicesInvoices_ListinvoicesInvoicesStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListinvoicesInvoices_ListinvoicesInvoicesStatus.Descriptor instead.
func (ListinvoicesInvoices_ListinvoicesInvoicesStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{89, 0}
}

// SendOnion.status
type SendonionResponse_SendonionStatus int32

const (
	SendonionResponse_PENDING  SendonionResponse_SendonionStatus = 0
	SendonionResponse_COMPLETE SendonionResponse_SendonionStatus = 1
)

// Enum value maps for SendonionResponse_SendonionStatus.
var (
	SendonionResponse_SendonionStatus_name = map[int32]string{
		0: "PENDING",
		1: "COMPLETE",
	}
	SendonionResponse_SendonionStatus_value = map[string]int32{
		"PENDING":  0,
		"COMPLETE": 1,
	}
)

func (x SendonionResponse_SendonionStatus) Enum() *SendonionResponse_SendonionStatus {
	p := new(SendonionResponse_SendonionStatus)
	*p = x
	return p
}

func (x SendonionResponse_SendonionStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (SendonionResponse_SendonionStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[16].Descriptor()
}

func (SendonionResponse_SendonionStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[16]
}

func (x SendonionResponse_SendonionStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use SendonionResponse_SendonionStatus.Descriptor instead.
func (SendonionResponse_SendonionStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{92, 0}
}

// ListSendPays.status
type ListsendpaysRequest_ListsendpaysStatus int32

const (
	ListsendpaysRequest_PENDING  ListsendpaysRequest_ListsendpaysStatus = 0
	ListsendpaysRequest_COMPLETE ListsendpaysRequest_ListsendpaysStatus = 1
	ListsendpaysRequest_FAILED   ListsendpaysRequest_ListsendpaysStatus = 2
)

// Enum value maps for ListsendpaysRequest_ListsendpaysStatus.
var (
	ListsendpaysRequest_ListsendpaysStatus_name = map[int32]string{
		0: "PENDING",
		1: "COMPLETE",
		2: "FAILED",
	}
	ListsendpaysRequest_ListsendpaysStatus_value = map[string]int32{
		"PENDING":  0,
		"COMPLETE": 1,
		"FAILED":   2,
	}
)

func (x ListsendpaysRequest_ListsendpaysStatus) Enum() *ListsendpaysRequest_ListsendpaysStatus {
	p := new(ListsendpaysRequest_ListsendpaysStatus)
	*p = x
	return p
}

func (x ListsendpaysRequest_ListsendpaysStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListsendpaysRequest_ListsendpaysStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[17].Descriptor()
}

func (ListsendpaysRequest_ListsendpaysStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[17]
}

func (x ListsendpaysRequest_ListsendpaysStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListsendpaysRequest_ListsendpaysStatus.Descriptor instead.
func (ListsendpaysRequest_ListsendpaysStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{94, 0}
}

// ListSendPays.index
type ListsendpaysRequest_ListsendpaysIndex int32

const (
	ListsendpaysRequest_CREATED ListsendpaysRequest_ListsendpaysIndex = 0
	ListsendpaysRequest_UPDATED ListsendpaysRequest_ListsendpaysIndex = 1
)

// Enum value maps for ListsendpaysRequest_ListsendpaysIndex.
var (
	ListsendpaysRequest_ListsendpaysIndex_name = map[int32]string{
		0: "CREATED",
		1: "UPDATED",
	}
	ListsendpaysRequest_ListsendpaysIndex_value = map[string]int32{
		"CREATED": 0,
		"UPDATED": 1,
	}
)

func (x ListsendpaysRequest_ListsendpaysIndex) Enum() *ListsendpaysRequest_ListsendpaysIndex {
	p := new(ListsendpaysRequest_ListsendpaysIndex)
	*p = x
	return p
}

func (x ListsendpaysRequest_ListsendpaysIndex) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListsendpaysRequest_ListsendpaysIndex) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[18].Descriptor()
}

func (ListsendpaysRequest_ListsendpaysIndex) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[18]
}

func (x ListsendpaysRequest_ListsendpaysIndex) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListsendpaysRequest_ListsendpaysIndex.Descriptor instead.
func (ListsendpaysRequest_ListsendpaysIndex) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{94, 1}
}

// ListSendPays.payments[].status
type ListsendpaysPayments_ListsendpaysPaymentsStatus int32

const (
	ListsendpaysPayments_PENDING  ListsendpaysPayments_ListsendpaysPaymentsStatus = 0
	ListsendpaysPayments_FAILED   ListsendpaysPayments_ListsendpaysPaymentsStatus = 1
	ListsendpaysPayments_COMPLETE ListsendpaysPayments_ListsendpaysPaymentsStatus = 2
)

// Enum value maps for ListsendpaysPayments_ListsendpaysPaymentsStatus.
var (
	ListsendpaysPayments_ListsendpaysPaymentsStatus_name = map[int32]string{
		0: "PENDING",
		1: "FAILED",
		2: "COMPLETE",
	}
	ListsendpaysPayments_ListsendpaysPaymentsStatus_value = map[string]int32{
		"PENDING":  0,
		"FAILED":   1,
		"COMPLETE": 2,
	}
)

func (x ListsendpaysPayments_ListsendpaysPaymentsStatus) Enum() *ListsendpaysPayments_ListsendpaysPaymentsStatus {
	p := new(ListsendpaysPayments_ListsendpaysPaymentsStatus)
	*p = x
	return p
}

func (x ListsendpaysPayments_ListsendpaysPaymentsStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListsendpaysPayments_ListsendpaysPaymentsStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[19].Descriptor()
}

func (ListsendpaysPayments_ListsendpaysPaymentsStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[19]
}

func (x ListsendpaysPayments_ListsendpaysPaymentsStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListsendpaysPayments_ListsendpaysPaymentsStatus.Descriptor instead.
func (ListsendpaysPayments_ListsendpaysPaymentsStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{96, 0}
}

// Pay.status
type PayResponse_PayStatus int32

const (
	PayResponse_COMPLETE PayResponse_PayStatus = 0
	PayResponse_PENDING  PayResponse_PayStatus = 1
	PayResponse_FAILED   PayResponse_PayStatus = 2
)

// Enum value maps for PayResponse_PayStatus.
var (
	PayResponse_PayStatus_name = map[int32]string{
		0: "COMPLETE",
		1: "PENDING",
		2: "FAILED",
	}
	PayResponse_PayStatus_value = map[string]int32{
		"COMPLETE": 0,
		"PENDING":  1,
		"FAILED":   2,
	}
)

func (x PayResponse_PayStatus) Enum() *PayResponse_PayStatus {
	p := new(PayResponse_PayStatus)
	*p = x
	return p
}

func (x PayResponse_PayStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (PayResponse_PayStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[20].Descriptor()
}

func (PayResponse_PayStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[20]
}

func (x PayResponse_PayStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use PayResponse_PayStatus.Descriptor instead.
func (PayResponse_PayStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{105, 0}
}

// ListNodes.nodes[].addresses[].type
type ListnodesNodesAddresses_ListnodesNodesAddressesType int32

const (
	ListnodesNodesAddresses_DNS   ListnodesNodesAddresses_ListnodesNodesAddressesType = 0
	ListnodesNodesAddresses_IPV4  ListnodesNodesAddresses_ListnodesNodesAddressesType = 1
	ListnodesNodesAddresses_IPV6  ListnodesNodesAddresses_ListnodesNodesAddressesType = 2
	ListnodesNodesAddresses_TORV2 ListnodesNodesAddresses_ListnodesNodesAddressesType = 3
	ListnodesNodesAddresses_TORV3 ListnodesNodesAddresses_ListnodesNodesAddressesType = 4
)

// Enum value maps for ListnodesNodesAddresses_ListnodesNodesAddressesType.
var (
	ListnodesNodesAddresses_ListnodesNodesAddressesType_name = map[int32]string{
		0: "DNS",
		1: "IPV4",
		2: "IPV6",
		3: "TORV2",
		4: "TORV3",
	}
	ListnodesNodesAddresses_ListnodesNodesAddressesType_value = map[string]int32{
		"DNS":   0,
		"IPV4":  1,
		"IPV6":  2,
		"TORV2": 3,
		"TORV3": 4,
	}
)

func (x ListnodesNodesAddresses_ListnodesNodesAddressesType) Enum() *ListnodesNodesAddresses_ListnodesNodesAddressesType {
	p := new(ListnodesNodesAddresses_ListnodesNodesAddressesType)
	*p = x
	return p
}

func (x ListnodesNodesAddresses_ListnodesNodesAddressesType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListnodesNodesAddresses_ListnodesNodesAddressesType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[21].Descriptor()
}

func (ListnodesNodesAddresses_ListnodesNodesAddressesType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[21]
}

func (x ListnodesNodesAddresses_ListnodesNodesAddressesType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListnodesNodesAddresses_ListnodesNodesAddressesType.Descriptor instead.
func (ListnodesNodesAddresses_ListnodesNodesAddressesType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{110, 0}
}

// WaitAnyInvoice.status
type WaitanyinvoiceResponse_WaitanyinvoiceStatus int32

const (
	WaitanyinvoiceResponse_PAID    WaitanyinvoiceResponse_WaitanyinvoiceStatus = 0
	WaitanyinvoiceResponse_EXPIRED WaitanyinvoiceResponse_WaitanyinvoiceStatus = 1
)

// Enum value maps for WaitanyinvoiceResponse_WaitanyinvoiceStatus.
var (
	WaitanyinvoiceResponse_WaitanyinvoiceStatus_name = map[int32]string{
		0: "PAID",
		1: "EXPIRED",
	}
	WaitanyinvoiceResponse_WaitanyinvoiceStatus_value = map[string]int32{
		"PAID":    0,
		"EXPIRED": 1,
	}
)

func (x WaitanyinvoiceResponse_WaitanyinvoiceStatus) Enum() *WaitanyinvoiceResponse_WaitanyinvoiceStatus {
	p := new(WaitanyinvoiceResponse_WaitanyinvoiceStatus)
	*p = x
	return p
}

func (x WaitanyinvoiceResponse_WaitanyinvoiceStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (WaitanyinvoiceResponse_WaitanyinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[22].Descriptor()
}

func (WaitanyinvoiceResponse_WaitanyinvoiceStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[22]
}

func (x WaitanyinvoiceResponse_WaitanyinvoiceStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use WaitanyinvoiceResponse_WaitanyinvoiceStatus.Descriptor instead.
func (WaitanyinvoiceResponse_WaitanyinvoiceStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{112, 0}
}

// WaitInvoice.status
type WaitinvoiceResponse_WaitinvoiceStatus int32

const (
	WaitinvoiceResponse_PAID    WaitinvoiceResponse_WaitinvoiceStatus = 0
	WaitinvoiceResponse_EXPIRED WaitinvoiceResponse_WaitinvoiceStatus = 1
)

// Enum value maps for WaitinvoiceResponse_WaitinvoiceStatus.
var (
	WaitinvoiceResponse_WaitinvoiceStatus_name = map[int32]string{
		0: "PAID",
		1: "EXPIRED",
	}
	WaitinvoiceResponse_WaitinvoiceStatus_value = map[string]int32{
		"PAID":    0,
		"EXPIRED": 1,
	}
)

func (x WaitinvoiceResponse_WaitinvoiceStatus) Enum() *WaitinvoiceResponse_WaitinvoiceStatus {
	p := new(WaitinvoiceResponse_WaitinvoiceStatus)
	*p = x
	return p
}

func (x WaitinvoiceResponse_WaitinvoiceStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (WaitinvoiceResponse_WaitinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[23].Descriptor()
}

func (WaitinvoiceResponse_WaitinvoiceStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[23]
}

func (x WaitinvoiceResponse_WaitinvoiceStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use WaitinvoiceResponse_WaitinvoiceStatus.Descriptor instead.
func (WaitinvoiceResponse_WaitinvoiceStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{115, 0}
}

// WaitSendPay.status
type WaitsendpayResponse_WaitsendpayStatus int32

const (
	WaitsendpayResponse_COMPLETE WaitsendpayResponse_WaitsendpayStatus = 0
)

// Enum value maps for WaitsendpayResponse_WaitsendpayStatus.
var (
	WaitsendpayResponse_WaitsendpayStatus_name = map[int32]string{
		0: "COMPLETE",
	}
	WaitsendpayResponse_WaitsendpayStatus_value = map[string]int32{
		"COMPLETE": 0,
	}
)

func (x WaitsendpayResponse_WaitsendpayStatus) Enum() *WaitsendpayResponse_WaitsendpayStatus {
	p := new(WaitsendpayResponse_WaitsendpayStatus)
	*p = x
	return p
}

func (x WaitsendpayResponse_WaitsendpayStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (WaitsendpayResponse_WaitsendpayStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[24].Descriptor()
}

func (WaitsendpayResponse_WaitsendpayStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[24]
}

func (x WaitsendpayResponse_WaitsendpayStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use WaitsendpayResponse_WaitsendpayStatus.Descriptor instead.
func (WaitsendpayResponse_WaitsendpayStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{118, 0}
}

// NewAddr.addresstype
type NewaddrRequest_NewaddrAddresstype int32

const (
	NewaddrRequest_BECH32 NewaddrRequest_NewaddrAddresstype = 0
	NewaddrRequest_ALL    NewaddrRequest_NewaddrAddresstype = 2
	NewaddrRequest_P2TR   NewaddrRequest_NewaddrAddresstype = 3
)

// Enum value maps for NewaddrRequest_NewaddrAddresstype.
var (
	NewaddrRequest_NewaddrAddresstype_name = map[int32]string{
		0: "BECH32",
		2: "ALL",
		3: "P2TR",
	}
	NewaddrRequest_NewaddrAddresstype_value = map[string]int32{
		"BECH32": 0,
		"ALL":    2,
		"P2TR":   3,
	}
)

func (x NewaddrRequest_NewaddrAddresstype) Enum() *NewaddrRequest_NewaddrAddresstype {
	p := new(NewaddrRequest_NewaddrAddresstype)
	*p = x
	return p
}

func (x NewaddrRequest_NewaddrAddresstype) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (NewaddrRequest_NewaddrAddresstype) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[25].Descriptor()
}

func (NewaddrRequest_NewaddrAddresstype) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[25]
}

func (x NewaddrRequest_NewaddrAddresstype) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use NewaddrRequest_NewaddrAddresstype.Descriptor instead.
func (NewaddrRequest_NewaddrAddresstype) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{119, 0}
}

// KeySend.status
type KeysendResponse_KeysendStatus int32

const (
	KeysendResponse_COMPLETE KeysendResponse_KeysendStatus = 0
)

// Enum value maps for KeysendResponse_KeysendStatus.
var (
	KeysendResponse_KeysendStatus_name = map[int32]string{
		0: "COMPLETE",
	}
	KeysendResponse_KeysendStatus_value = map[string]int32{
		"COMPLETE": 0,
	}
)

func (x KeysendResponse_KeysendStatus) Enum() *KeysendResponse_KeysendStatus {
	p := new(KeysendResponse_KeysendStatus)
	*p = x
	return p
}

func (x KeysendResponse_KeysendStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (KeysendResponse_KeysendStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[26].Descriptor()
}

func (KeysendResponse_KeysendStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[26]
}

func (x KeysendResponse_KeysendStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use KeysendResponse_KeysendStatus.Descriptor instead.
func (KeysendResponse_KeysendStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{124, 0}
}

// ListPeerChannels.channels[].state
type ListpeerchannelsChannels_ListpeerchannelsChannelsState int32

const (
	ListpeerchannelsChannels_OPENINGD                    ListpeerchannelsChannels_ListpeerchannelsChannelsState = 0
	ListpeerchannelsChannels_CHANNELD_AWAITING_LOCKIN    ListpeerchannelsChannels_ListpeerchannelsChannelsState = 1
	ListpeerchannelsChannels_CHANNELD_NORMAL             ListpeerchannelsChannels_ListpeerchannelsChannelsState = 2
	ListpeerchannelsChannels_CHANNELD_SHUTTING_DOWN      ListpeerchannelsChannels_ListpeerchannelsChannelsState = 3
	ListpeerchannelsChannels_CLOSINGD_SIGEXCHANGE        ListpeerchannelsChannels_ListpeerchannelsChannelsState = 4
	ListpeerchannelsChannels_CLOSINGD_COMPLETE           ListpeerchannelsChannels_ListpeerchannelsChannelsState = 5
	ListpeerchannelsChannels_AWAITING_UNILATERAL         ListpeerchannelsChannels_ListpeerchannelsChannelsState = 6
	ListpeerchannelsChannels_FUNDING_SPEND_SEEN          ListpeerchannelsChannels_ListpeerchannelsChannelsState = 7
	ListpeerchannelsChannels_ONCHAIN                     ListpeerchannelsChannels_ListpeerchannelsChannelsState = 8
	ListpeerchannelsChannels_DUALOPEND_OPEN_INIT         ListpeerchannelsChannels_ListpeerchannelsChannelsState = 9
	ListpeerchannelsChannels_DUALOPEND_AWAITING_LOCKIN   ListpeerchannelsChannels_ListpeerchannelsChannelsState = 10
	ListpeerchannelsChannels_CHANNELD_AWAITING_SPLICE    ListpeerchannelsChannels_ListpeerchannelsChannelsState = 11
	ListpeerchannelsChannels_DUALOPEND_OPEN_COMMITTED    ListpeerchannelsChannels_ListpeerchannelsChannelsState = 12
	ListpeerchannelsChannels_DUALOPEND_OPEN_COMMIT_READY ListpeerchannelsChannels_ListpeerchannelsChannelsState = 13
)

// Enum value maps for ListpeerchannelsChannels_ListpeerchannelsChannelsState.
var (
	ListpeerchannelsChannels_ListpeerchannelsChannelsState_name = map[int32]string{
		0:  "OPENINGD",
		1:  "CHANNELD_AWAITING_LOCKIN",
		2:  "CHANNELD_NORMAL",
		3:  "CHANNELD_SHUTTING_DOWN",
		4:  "CLOSINGD_SIGEXCHANGE",
		5:  "CLOSINGD_COMPLETE",
		6:  "AWAITING_UNILATERAL",
		7:  "FUNDING_SPEND_SEEN",
		8:  "ONCHAIN",
		9:  "DUALOPEND_OPEN_INIT",
		10: "DUALOPEND_AWAITING_LOCKIN",
		11: "CHANNELD_AWAITING_SPLICE",
		12: "DUALOPEND_OPEN_COMMITTED",
		13: "DUALOPEND_OPEN_COMMIT_READY",
	}
	ListpeerchannelsChannels_ListpeerchannelsChannelsState_value = map[string]int32{
		"OPENINGD":                    0,
		"CHANNELD_AWAITING_LOCKIN":    1,
		"CHANNELD_NORMAL":             2,
		"CHANNELD_SHUTTING_DOWN":      3,
		"CLOSINGD_SIGEXCHANGE":        4,
		"CLOSINGD_COMPLETE":           5,
		"AWAITING_UNILATERAL":         6,
		"FUNDING_SPEND_SEEN":          7,
		"ONCHAIN":                     8,
		"DUALOPEND_OPEN_INIT":         9,
		"DUALOPEND_AWAITING_LOCKIN":   10,
		"CHANNELD_AWAITING_SPLICE":    11,
		"DUALOPEND_OPEN_COMMITTED":    12,
		"DUALOPEND_OPEN_COMMIT_READY": 13,
	}
)

func (x ListpeerchannelsChannels_ListpeerchannelsChannelsState) Enum() *ListpeerchannelsChannels_ListpeerchannelsChannelsState {
	p := new(ListpeerchannelsChannels_ListpeerchannelsChannelsState)
	*p = x
	return p
}

func (x ListpeerchannelsChannels_ListpeerchannelsChannelsState) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListpeerchannelsChannels_ListpeerchannelsChannelsState) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[27].Descriptor()
}

func (ListpeerchannelsChannels_ListpeerchannelsChannelsState) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[27]
}

func (x ListpeerchannelsChannels_ListpeerchannelsChannelsState) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListpeerchannelsChannels_ListpeerchannelsChannelsState.Descriptor instead.
func (ListpeerchannelsChannels_ListpeerchannelsChannelsState) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{143, 0}
}

// ListPeerChannels.channels[].htlcs[].direction
type ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection int32

const (
	ListpeerchannelsChannelsHtlcs_IN  ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection = 0
	ListpeerchannelsChannelsHtlcs_OUT ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection = 1
)

// Enum value maps for ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection.
var (
	ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection_name = map[int32]string{
		0: "IN",
		1: "OUT",
	}
	ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection_value = map[string]int32{
		"IN":  0,
		"OUT": 1,
	}
)

func (x ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection) Enum() *ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection {
	p := new(ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection)
	*p = x
	return p
}

func (x ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[28].Descriptor()
}

func (ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[28]
}

func (x ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection.Descriptor instead.
func (ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{151, 0}
}

// ListClosedChannels.closedchannels[].close_cause
type ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause int32

const (
	ListclosedchannelsClosedchannels_UNKNOWN  ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause = 0
	ListclosedchannelsClosedchannels_LOCAL    ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause = 1
	ListclosedchannelsClosedchannels_USER     ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause = 2
	ListclosedchannelsClosedchannels_REMOTE   ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause = 3
	ListclosedchannelsClosedchannels_PROTOCOL ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause = 4
	ListclosedchannelsClosedchannels_ONCHAIN  ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause = 5
)

// Enum value maps for ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause.
var (
	ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause_name = map[int32]string{
		0: "UNKNOWN",
		1: "LOCAL",
		2: "USER",
		3: "REMOTE",
		4: "PROTOCOL",
		5: "ONCHAIN",
	}
	ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause_value = map[string]int32{
		"UNKNOWN":  0,
		"LOCAL":    1,
		"USER":     2,
		"REMOTE":   3,
		"PROTOCOL": 4,
		"ONCHAIN":  5,
	}
)

func (x ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause) Enum() *ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause {
	p := new(ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause)
	*p = x
	return p
}

func (x ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[29].Descriptor()
}

func (ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[29]
}

func (x ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause.Descriptor instead.
func (ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{154, 0}
}

// DecodePay.fallbacks[].type
type DecodepayFallbacks_DecodepayFallbacksType int32

const (
	DecodepayFallbacks_P2PKH  DecodepayFallbacks_DecodepayFallbacksType = 0
	DecodepayFallbacks_P2SH   DecodepayFallbacks_DecodepayFallbacksType = 1
	DecodepayFallbacks_P2WPKH DecodepayFallbacks_DecodepayFallbacksType = 2
	DecodepayFallbacks_P2WSH  DecodepayFallbacks_DecodepayFallbacksType = 3
	DecodepayFallbacks_P2TR   DecodepayFallbacks_DecodepayFallbacksType = 4
)

// Enum value maps for DecodepayFallbacks_DecodepayFallbacksType.
var (
	DecodepayFallbacks_DecodepayFallbacksType_name = map[int32]string{
		0: "P2PKH",
		1: "P2SH",
		2: "P2WPKH",
		3: "P2WSH",
		4: "P2TR",
	}
	DecodepayFallbacks_DecodepayFallbacksType_value = map[string]int32{
		"P2PKH":  0,
		"P2SH":   1,
		"P2WPKH": 2,
		"P2WSH":  3,
		"P2TR":   4,
	}
)

func (x DecodepayFallbacks_DecodepayFallbacksType) Enum() *DecodepayFallbacks_DecodepayFallbacksType {
	p := new(DecodepayFallbacks_DecodepayFallbacksType)
	*p = x
	return p
}

func (x DecodepayFallbacks_DecodepayFallbacksType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DecodepayFallbacks_DecodepayFallbacksType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[30].Descriptor()
}

func (DecodepayFallbacks_DecodepayFallbacksType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[30]
}

func (x DecodepayFallbacks_DecodepayFallbacksType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DecodepayFallbacks_DecodepayFallbacksType.Descriptor instead.
func (DecodepayFallbacks_DecodepayFallbacksType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{158, 0}
}

// Decode.type
type DecodeResponse_DecodeType int32

const (
	DecodeResponse_BOLT12_OFFER           DecodeResponse_DecodeType = 0
	DecodeResponse_BOLT12_INVOICE         DecodeResponse_DecodeType = 1
	DecodeResponse_BOLT12_INVOICE_REQUEST DecodeResponse_DecodeType = 2
	DecodeResponse_BOLT11_INVOICE         DecodeResponse_DecodeType = 3
	DecodeResponse_RUNE                   DecodeResponse_DecodeType = 4
	DecodeResponse_EMERGENCY_RECOVER      DecodeResponse_DecodeType = 5
)

// Enum value maps for DecodeResponse_DecodeType.
var (
	DecodeResponse_DecodeType_name = map[int32]string{
		0: "BOLT12_OFFER",
		1: "BOLT12_INVOICE",
		2: "BOLT12_INVOICE_REQUEST",
		3: "BOLT11_INVOICE",
		4: "RUNE",
		5: "EMERGENCY_RECOVER",
	}
	DecodeResponse_DecodeType_value = map[string]int32{
		"BOLT12_OFFER":           0,
		"BOLT12_INVOICE":         1,
		"BOLT12_INVOICE_REQUEST": 2,
		"BOLT11_INVOICE":         3,
		"RUNE":                   4,
		"EMERGENCY_RECOVER":      5,
	}
)

func (x DecodeResponse_DecodeType) Enum() *DecodeResponse_DecodeType {
	p := new(DecodeResponse_DecodeType)
	*p = x
	return p
}

func (x DecodeResponse_DecodeType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DecodeResponse_DecodeType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[31].Descriptor()
}

func (DecodeResponse_DecodeType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[31]
}

func (x DecodeResponse_DecodeType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DecodeResponse_DecodeType.Descriptor instead.
func (DecodeResponse_DecodeType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{161, 0}
}

// Decode.fallbacks[].type
type DecodeFallbacks_DecodeFallbacksType int32

const (
	DecodeFallbacks_P2PKH  DecodeFallbacks_DecodeFallbacksType = 0
	DecodeFallbacks_P2SH   DecodeFallbacks_DecodeFallbacksType = 1
	DecodeFallbacks_P2WPKH DecodeFallbacks_DecodeFallbacksType = 2
	DecodeFallbacks_P2WSH  DecodeFallbacks_DecodeFallbacksType = 3
	DecodeFallbacks_P2TR   DecodeFallbacks_DecodeFallbacksType = 4
)

// Enum value maps for DecodeFallbacks_DecodeFallbacksType.
var (
	DecodeFallbacks_DecodeFallbacksType_name = map[int32]string{
		0: "P2PKH",
		1: "P2SH",
		2: "P2WPKH",
		3: "P2WSH",
		4: "P2TR",
	}
	DecodeFallbacks_DecodeFallbacksType_value = map[string]int32{
		"P2PKH":  0,
		"P2SH":   1,
		"P2WPKH": 2,
		"P2WSH":  3,
		"P2TR":   4,
	}
)

func (x DecodeFallbacks_DecodeFallbacksType) Enum() *DecodeFallbacks_DecodeFallbacksType {
	p := new(DecodeFallbacks_DecodeFallbacksType)
	*p = x
	return p
}

func (x DecodeFallbacks_DecodeFallbacksType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DecodeFallbacks_DecodeFallbacksType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[32].Descriptor()
}

func (DecodeFallbacks_DecodeFallbacksType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[32]
}

func (x DecodeFallbacks_DecodeFallbacksType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DecodeFallbacks_DecodeFallbacksType.Descriptor instead.
func (DecodeFallbacks_DecodeFallbacksType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{168, 0}
}

// DelPay.status
type DelpayRequest_DelpayStatus int32

const (
	DelpayRequest_COMPLETE DelpayRequest_DelpayStatus = 0
	DelpayRequest_FAILED   DelpayRequest_DelpayStatus = 1
)

// Enum value maps for DelpayRequest_DelpayStatus.
var (
	DelpayRequest_DelpayStatus_name = map[int32]string{
		0: "COMPLETE",
		1: "FAILED",
	}
	DelpayRequest_DelpayStatus_value = map[string]int32{
		"COMPLETE": 0,
		"FAILED":   1,
	}
)

func (x DelpayRequest_DelpayStatus) Enum() *DelpayRequest_DelpayStatus {
	p := new(DelpayRequest_DelpayStatus)
	*p = x
	return p
}

func (x DelpayRequest_DelpayStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DelpayRequest_DelpayStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[33].Descriptor()
}

func (DelpayRequest_DelpayStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[33]
}

func (x DelpayRequest_DelpayStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DelpayRequest_DelpayStatus.Descriptor instead.
func (DelpayRequest_DelpayStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{171, 0}
}

// DelPay.payments[].status
type DelpayPayments_DelpayPaymentsStatus int32

const (
	DelpayPayments_PENDING  DelpayPayments_DelpayPaymentsStatus = 0
	DelpayPayments_FAILED   DelpayPayments_DelpayPaymentsStatus = 1
	DelpayPayments_COMPLETE DelpayPayments_DelpayPaymentsStatus = 2
)

// Enum value maps for DelpayPayments_DelpayPaymentsStatus.
var (
	DelpayPayments_DelpayPaymentsStatus_name = map[int32]string{
		0: "PENDING",
		1: "FAILED",
		2: "COMPLETE",
	}
	DelpayPayments_DelpayPaymentsStatus_value = map[string]int32{
		"PENDING":  0,
		"FAILED":   1,
		"COMPLETE": 2,
	}
)

func (x DelpayPayments_DelpayPaymentsStatus) Enum() *DelpayPayments_DelpayPaymentsStatus {
	p := new(DelpayPayments_DelpayPaymentsStatus)
	*p = x
	return p
}

func (x DelpayPayments_DelpayPaymentsStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DelpayPayments_DelpayPaymentsStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[34].Descriptor()
}

func (DelpayPayments_DelpayPaymentsStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[34]
}

func (x DelpayPayments_DelpayPaymentsStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DelpayPayments_DelpayPaymentsStatus.Descriptor instead.
func (DelpayPayments_DelpayPaymentsStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{173, 0}
}

// DelForward.status
type DelforwardRequest_DelforwardStatus int32

const (
	DelforwardRequest_SETTLED      DelforwardRequest_DelforwardStatus = 0
	DelforwardRequest_LOCAL_FAILED DelforwardRequest_DelforwardStatus = 1
	DelforwardRequest_FAILED       DelforwardRequest_DelforwardStatus = 2
)

// Enum value maps for DelforwardRequest_DelforwardStatus.
var (
	DelforwardRequest_DelforwardStatus_name = map[int32]string{
		0: "SETTLED",
		1: "LOCAL_FAILED",
		2: "FAILED",
	}
	DelforwardRequest_DelforwardStatus_value = map[string]int32{
		"SETTLED":      0,
		"LOCAL_FAILED": 1,
		"FAILED":       2,
	}
)

func (x DelforwardRequest_DelforwardStatus) Enum() *DelforwardRequest_DelforwardStatus {
	p := new(DelforwardRequest_DelforwardStatus)
	*p = x
	return p
}

func (x DelforwardRequest_DelforwardStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DelforwardRequest_DelforwardStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[35].Descriptor()
}

func (DelforwardRequest_DelforwardStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[35]
}

func (x DelforwardRequest_DelforwardStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DelforwardRequest_DelforwardStatus.Descriptor instead.
func (DelforwardRequest_DelforwardStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{174, 0}
}

// Feerates.style
type FeeratesRequest_FeeratesStyle int32

const (
	FeeratesRequest_PERKB FeeratesRequest_FeeratesStyle = 0
	FeeratesRequest_PERKW FeeratesRequest_FeeratesStyle = 1
)

// Enum value maps for FeeratesRequest_FeeratesStyle.
var (
	FeeratesRequest_FeeratesStyle_name = map[int32]string{
		0: "PERKB",
		1: "PERKW",
	}
	FeeratesRequest_FeeratesStyle_value = map[string]int32{
		"PERKB": 0,
		"PERKW": 1,
	}
)

func (x FeeratesRequest_FeeratesStyle) Enum() *FeeratesRequest_FeeratesStyle {
	p := new(FeeratesRequest_FeeratesStyle)
	*p = x
	return p
}

func (x FeeratesRequest_FeeratesStyle) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (FeeratesRequest_FeeratesStyle) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[36].Descriptor()
}

func (FeeratesRequest_FeeratesStyle) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[36]
}

func (x FeeratesRequest_FeeratesStyle) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use FeeratesRequest_FeeratesStyle.Descriptor instead.
func (FeeratesRequest_FeeratesStyle) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{182, 0}
}

// GetLog.level
type GetlogRequest_GetlogLevel int32

const (
	GetlogRequest_BROKEN  GetlogRequest_GetlogLevel = 0
	GetlogRequest_UNUSUAL GetlogRequest_GetlogLevel = 1
	GetlogRequest_INFO    GetlogRequest_GetlogLevel = 2
	GetlogRequest_DEBUG   GetlogRequest_GetlogLevel = 3
	GetlogRequest_IO      GetlogRequest_GetlogLevel = 4
	GetlogRequest_TRACE   GetlogRequest_GetlogLevel = 5
)

// Enum value maps for GetlogRequest_GetlogLevel.
var (
	GetlogRequest_GetlogLevel_name = map[int32]string{
		0: "BROKEN",
		1: "UNUSUAL",
		2: "INFO",
		3: "DEBUG",
		4: "IO",
		5: "TRACE",
	}
	GetlogRequest_GetlogLevel_value = map[string]int32{
		"BROKEN":  0,
		"UNUSUAL": 1,
		"INFO":    2,
		"DEBUG":   3,
		"IO":      4,
		"TRACE":   5,
	}
)

func (x GetlogRequest_GetlogLevel) Enum() *GetlogRequest_GetlogLevel {
	p := new(GetlogRequest_GetlogLevel)
	*p = x
	return p
}

func (x GetlogRequest_GetlogLevel) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (GetlogRequest_GetlogLevel) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[37].Descriptor()
}

func (GetlogRequest_GetlogLevel) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[37]
}

func (x GetlogRequest_GetlogLevel) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use GetlogRequest_GetlogLevel.Descriptor instead.
func (GetlogRequest_GetlogLevel) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{203, 0}
}

// GetLog.log[].type
type GetlogLog_GetlogLogType int32

const (
	GetlogLog_SKIPPED GetlogLog_GetlogLogType = 0
	GetlogLog_BROKEN  GetlogLog_GetlogLogType = 1
	GetlogLog_UNUSUAL GetlogLog_GetlogLogType = 2
	GetlogLog_INFO    GetlogLog_GetlogLogType = 3
	GetlogLog_DEBUG   GetlogLog_GetlogLogType = 4
	GetlogLog_IO_IN   GetlogLog_GetlogLogType = 5
	GetlogLog_IO_OUT  GetlogLog_GetlogLogType = 6
	GetlogLog_TRACE   GetlogLog_GetlogLogType = 7
)

// Enum value maps for GetlogLog_GetlogLogType.
var (
	GetlogLog_GetlogLogType_name = map[int32]string{
		0: "SKIPPED",
		1: "BROKEN",
		2: "UNUSUAL",
		3: "INFO",
		4: "DEBUG",
		5: "IO_IN",
		6: "IO_OUT",
		7: "TRACE",
	}
	GetlogLog_GetlogLogType_value = map[string]int32{
		"SKIPPED": 0,
		"BROKEN":  1,
		"UNUSUAL": 2,
		"INFO":    3,
		"DEBUG":   4,
		"IO_IN":   5,
		"IO_OUT":  6,
		"TRACE":   7,
	}
)

func (x GetlogLog_GetlogLogType) Enum() *GetlogLog_GetlogLogType {
	p := new(GetlogLog_GetlogLogType)
	*p = x
	return p
}

func (x GetlogLog_GetlogLogType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (GetlogLog_GetlogLogType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[38].Descriptor()
}

func (GetlogLog_GetlogLogType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[38]
}

func (x GetlogLog_GetlogLogType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use GetlogLog_GetlogLogType.Descriptor instead.
func (GetlogLog_GetlogLogType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{205, 0}
}

// FunderUpdate.policy
type FunderupdateRequest_FunderupdatePolicy int32

const (
	FunderupdateRequest_MATCH     FunderupdateRequest_FunderupdatePolicy = 0
	FunderupdateRequest_AVAILABLE FunderupdateRequest_FunderupdatePolicy = 1
	FunderupdateRequest_FIXED     FunderupdateRequest_FunderupdatePolicy = 2
)

// Enum value maps for FunderupdateRequest_FunderupdatePolicy.
var (
	FunderupdateRequest_FunderupdatePolicy_name = map[int32]string{
		0: "MATCH",
		1: "AVAILABLE",
		2: "FIXED",
	}
	FunderupdateRequest_FunderupdatePolicy_value = map[string]int32{
		"MATCH":     0,
		"AVAILABLE": 1,
		"FIXED":     2,
	}
)

func (x FunderupdateRequest_FunderupdatePolicy) Enum() *FunderupdateRequest_FunderupdatePolicy {
	p := new(FunderupdateRequest_FunderupdatePolicy)
	*p = x
	return p
}

func (x FunderupdateRequest_FunderupdatePolicy) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (FunderupdateRequest_FunderupdatePolicy) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[39].Descriptor()
}

func (FunderupdateRequest_FunderupdatePolicy) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[39]
}

func (x FunderupdateRequest_FunderupdatePolicy) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use FunderupdateRequest_FunderupdatePolicy.Descriptor instead.
func (FunderupdateRequest_FunderupdatePolicy) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{206, 0}
}

// FunderUpdate.policy
type FunderupdateResponse_FunderupdatePolicy int32

const (
	FunderupdateResponse_MATCH     FunderupdateResponse_FunderupdatePolicy = 0
	FunderupdateResponse_AVAILABLE FunderupdateResponse_FunderupdatePolicy = 1
	FunderupdateResponse_FIXED     FunderupdateResponse_FunderupdatePolicy = 2
)

// Enum value maps for FunderupdateResponse_FunderupdatePolicy.
var (
	FunderupdateResponse_FunderupdatePolicy_name = map[int32]string{
		0: "MATCH",
		1: "AVAILABLE",
		2: "FIXED",
	}
	FunderupdateResponse_FunderupdatePolicy_value = map[string]int32{
		"MATCH":     0,
		"AVAILABLE": 1,
		"FIXED":     2,
	}
)

func (x FunderupdateResponse_FunderupdatePolicy) Enum() *FunderupdateResponse_FunderupdatePolicy {
	p := new(FunderupdateResponse_FunderupdatePolicy)
	*p = x
	return p
}

func (x FunderupdateResponse_FunderupdatePolicy) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (FunderupdateResponse_FunderupdatePolicy) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[40].Descriptor()
}

func (FunderupdateResponse_FunderupdatePolicy) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[40]
}

func (x FunderupdateResponse_FunderupdatePolicy) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use FunderupdateResponse_FunderupdatePolicy.Descriptor instead.
func (FunderupdateResponse_FunderupdatePolicy) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{207, 0}
}

// GetRoute.route[].style
type GetrouteRoute_GetrouteRouteStyle int32

const (
	GetrouteRoute_TLV GetrouteRoute_GetrouteRouteStyle = 0
)

// Enum value maps for GetrouteRoute_GetrouteRouteStyle.
var (
	GetrouteRoute_GetrouteRouteStyle_name = map[int32]string{
		0: "TLV",
	}
	GetrouteRoute_GetrouteRouteStyle_value = map[string]int32{
		"TLV": 0,
	}
)

func (x GetrouteRoute_GetrouteRouteStyle) Enum() *GetrouteRoute_GetrouteRouteStyle {
	p := new(GetrouteRoute_GetrouteRouteStyle)
	*p = x
	return p
}

func (x GetrouteRoute_GetrouteRouteStyle) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (GetrouteRoute_GetrouteRouteStyle) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[41].Descriptor()
}

func (GetrouteRoute_GetrouteRouteStyle) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[41]
}

func (x GetrouteRoute_GetrouteRouteStyle) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use GetrouteRoute_GetrouteRouteStyle.Descriptor instead.
func (GetrouteRoute_GetrouteRouteStyle) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{210, 0}
}

// ListForwards.status
type ListforwardsRequest_ListforwardsStatus int32

const (
	ListforwardsRequest_OFFERED      ListforwardsRequest_ListforwardsStatus = 0
	ListforwardsRequest_SETTLED      ListforwardsRequest_ListforwardsStatus = 1
	ListforwardsRequest_LOCAL_FAILED ListforwardsRequest_ListforwardsStatus = 2
	ListforwardsRequest_FAILED       ListforwardsRequest_ListforwardsStatus = 3
)

// Enum value maps for ListforwardsRequest_ListforwardsStatus.
var (
	ListforwardsRequest_ListforwardsStatus_name = map[int32]string{
		0: "OFFERED",
		1: "SETTLED",
		2: "LOCAL_FAILED",
		3: "FAILED",
	}
	ListforwardsRequest_ListforwardsStatus_value = map[string]int32{
		"OFFERED":      0,
		"SETTLED":      1,
		"LOCAL_FAILED": 2,
		"FAILED":       3,
	}
)

func (x ListforwardsRequest_ListforwardsStatus) Enum() *ListforwardsRequest_ListforwardsStatus {
	p := new(ListforwardsRequest_ListforwardsStatus)
	*p = x
	return p
}

func (x ListforwardsRequest_ListforwardsStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListforwardsRequest_ListforwardsStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[42].Descriptor()
}

func (ListforwardsRequest_ListforwardsStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[42]
}

func (x ListforwardsRequest_ListforwardsStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListforwardsRequest_ListforwardsStatus.Descriptor instead.
func (ListforwardsRequest_ListforwardsStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{214, 0}
}

// ListForwards.index
type ListforwardsRequest_ListforwardsIndex int32

const (
	ListforwardsRequest_CREATED ListforwardsRequest_ListforwardsIndex = 0
	ListforwardsRequest_UPDATED ListforwardsRequest_ListforwardsIndex = 1
)

// Enum value maps for ListforwardsRequest_ListforwardsIndex.
var (
	ListforwardsRequest_ListforwardsIndex_name = map[int32]string{
		0: "CREATED",
		1: "UPDATED",
	}
	ListforwardsRequest_ListforwardsIndex_value = map[string]int32{
		"CREATED": 0,
		"UPDATED": 1,
	}
)

func (x ListforwardsRequest_ListforwardsIndex) Enum() *ListforwardsRequest_ListforwardsIndex {
	p := new(ListforwardsRequest_ListforwardsIndex)
	*p = x
	return p
}

func (x ListforwardsRequest_ListforwardsIndex) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListforwardsRequest_ListforwardsIndex) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[43].Descriptor()
}

func (ListforwardsRequest_ListforwardsIndex) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[43]
}

func (x ListforwardsRequest_ListforwardsIndex) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListforwardsRequest_ListforwardsIndex.Descriptor instead.
func (ListforwardsRequest_ListforwardsIndex) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{214, 1}
}

// ListForwards.forwards[].status
type ListforwardsForwards_ListforwardsForwardsStatus int32

const (
	ListforwardsForwards_OFFERED      ListforwardsForwards_ListforwardsForwardsStatus = 0
	ListforwardsForwards_SETTLED      ListforwardsForwards_ListforwardsForwardsStatus = 1
	ListforwardsForwards_LOCAL_FAILED ListforwardsForwards_ListforwardsForwardsStatus = 2
	ListforwardsForwards_FAILED       ListforwardsForwards_ListforwardsForwardsStatus = 3
)

// Enum value maps for ListforwardsForwards_ListforwardsForwardsStatus.
var (
	ListforwardsForwards_ListforwardsForwardsStatus_name = map[int32]string{
		0: "OFFERED",
		1: "SETTLED",
		2: "LOCAL_FAILED",
		3: "FAILED",
	}
	ListforwardsForwards_ListforwardsForwardsStatus_value = map[string]int32{
		"OFFERED":      0,
		"SETTLED":      1,
		"LOCAL_FAILED": 2,
		"FAILED":       3,
	}
)

func (x ListforwardsForwards_ListforwardsForwardsStatus) Enum() *ListforwardsForwards_ListforwardsForwardsStatus {
	p := new(ListforwardsForwards_ListforwardsForwardsStatus)
	*p = x
	return p
}

func (x ListforwardsForwards_ListforwardsForwardsStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListforwardsForwards_ListforwardsForwardsStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[44].Descriptor()
}

func (ListforwardsForwards_ListforwardsForwardsStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[44]
}

func (x ListforwardsForwards_ListforwardsForwardsStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListforwardsForwards_ListforwardsForwardsStatus.Descriptor instead.
func (ListforwardsForwards_ListforwardsForwardsStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{216, 0}
}

// ListForwards.forwards[].style
type ListforwardsForwards_ListforwardsForwardsStyle int32

const (
	ListforwardsForwards_LEGACY ListforwardsForwards_ListforwardsForwardsStyle = 0
	ListforwardsForwards_TLV    ListforwardsForwards_ListforwardsForwardsStyle = 1
)

// Enum value maps for ListforwardsForwards_ListforwardsForwardsStyle.
var (
	ListforwardsForwards_ListforwardsForwardsStyle_name = map[int32]string{
		0: "LEGACY",
		1: "TLV",
	}
	ListforwardsForwards_ListforwardsForwardsStyle_value = map[string]int32{
		"LEGACY": 0,
		"TLV":    1,
	}
)

func (x ListforwardsForwards_ListforwardsForwardsStyle) Enum() *ListforwardsForwards_ListforwardsForwardsStyle {
	p := new(ListforwardsForwards_ListforwardsForwardsStyle)
	*p = x
	return p
}

func (x ListforwardsForwards_ListforwardsForwardsStyle) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListforwardsForwards_ListforwardsForwardsStyle) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[45].Descriptor()
}

func (ListforwardsForwards_ListforwardsForwardsStyle) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[45]
}

func (x ListforwardsForwards_ListforwardsForwardsStyle) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListforwardsForwards_ListforwardsForwardsStyle.Descriptor instead.
func (ListforwardsForwards_ListforwardsForwardsStyle) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{216, 1}
}

// ListPays.status
type ListpaysRequest_ListpaysStatus int32

const (
	ListpaysRequest_PENDING  ListpaysRequest_ListpaysStatus = 0
	ListpaysRequest_COMPLETE ListpaysRequest_ListpaysStatus = 1
	ListpaysRequest_FAILED   ListpaysRequest_ListpaysStatus = 2
)

// Enum value maps for ListpaysRequest_ListpaysStatus.
var (
	ListpaysRequest_ListpaysStatus_name = map[int32]string{
		0: "PENDING",
		1: "COMPLETE",
		2: "FAILED",
	}
	ListpaysRequest_ListpaysStatus_value = map[string]int32{
		"PENDING":  0,
		"COMPLETE": 1,
		"FAILED":   2,
	}
)

func (x ListpaysRequest_ListpaysStatus) Enum() *ListpaysRequest_ListpaysStatus {
	p := new(ListpaysRequest_ListpaysStatus)
	*p = x
	return p
}

func (x ListpaysRequest_ListpaysStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListpaysRequest_ListpaysStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[46].Descriptor()
}

func (ListpaysRequest_ListpaysStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[46]
}

func (x ListpaysRequest_ListpaysStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListpaysRequest_ListpaysStatus.Descriptor instead.
func (ListpaysRequest_ListpaysStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{220, 0}
}

// ListPays.index
type ListpaysRequest_ListpaysIndex int32

const (
	ListpaysRequest_CREATED ListpaysRequest_ListpaysIndex = 0
	ListpaysRequest_UPDATED ListpaysRequest_ListpaysIndex = 1
)

// Enum value maps for ListpaysRequest_ListpaysIndex.
var (
	ListpaysRequest_ListpaysIndex_name = map[int32]string{
		0: "CREATED",
		1: "UPDATED",
	}
	ListpaysRequest_ListpaysIndex_value = map[string]int32{
		"CREATED": 0,
		"UPDATED": 1,
	}
)

func (x ListpaysRequest_ListpaysIndex) Enum() *ListpaysRequest_ListpaysIndex {
	p := new(ListpaysRequest_ListpaysIndex)
	*p = x
	return p
}

func (x ListpaysRequest_ListpaysIndex) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListpaysRequest_ListpaysIndex) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[47].Descriptor()
}

func (ListpaysRequest_ListpaysIndex) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[47]
}

func (x ListpaysRequest_ListpaysIndex) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListpaysRequest_ListpaysIndex.Descriptor instead.
func (ListpaysRequest_ListpaysIndex) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{220, 1}
}

// ListPays.pays[].status
type ListpaysPays_ListpaysPaysStatus int32

const (
	ListpaysPays_PENDING  ListpaysPays_ListpaysPaysStatus = 0
	ListpaysPays_FAILED   ListpaysPays_ListpaysPaysStatus = 1
	ListpaysPays_COMPLETE ListpaysPays_ListpaysPaysStatus = 2
)

// Enum value maps for ListpaysPays_ListpaysPaysStatus.
var (
	ListpaysPays_ListpaysPaysStatus_name = map[int32]string{
		0: "PENDING",
		1: "FAILED",
		2: "COMPLETE",
	}
	ListpaysPays_ListpaysPaysStatus_value = map[string]int32{
		"PENDING":  0,
		"FAILED":   1,
		"COMPLETE": 2,
	}
)

func (x ListpaysPays_ListpaysPaysStatus) Enum() *ListpaysPays_ListpaysPaysStatus {
	p := new(ListpaysPays_ListpaysPaysStatus)
	*p = x
	return p
}

func (x ListpaysPays_ListpaysPaysStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListpaysPays_ListpaysPaysStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[48].Descriptor()
}

func (ListpaysPays_ListpaysPaysStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[48]
}

func (x ListpaysPays_ListpaysPaysStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListpaysPays_ListpaysPaysStatus.Descriptor instead.
func (ListpaysPays_ListpaysPaysStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{222, 0}
}

// ListHtlcs.htlcs[].direction
type ListhtlcsHtlcs_ListhtlcsHtlcsDirection int32

const (
	ListhtlcsHtlcs_OUT ListhtlcsHtlcs_ListhtlcsHtlcsDirection = 0
	ListhtlcsHtlcs_IN  ListhtlcsHtlcs_ListhtlcsHtlcsDirection = 1
)

// Enum value maps for ListhtlcsHtlcs_ListhtlcsHtlcsDirection.
var (
	ListhtlcsHtlcs_ListhtlcsHtlcsDirection_name = map[int32]string{
		0: "OUT",
		1: "IN",
	}
	ListhtlcsHtlcs_ListhtlcsHtlcsDirection_value = map[string]int32{
		"OUT": 0,
		"IN":  1,
	}
)

func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Enum() *ListhtlcsHtlcs_ListhtlcsHtlcsDirection {
	p := new(ListhtlcsHtlcs_ListhtlcsHtlcsDirection)
	*p = x
	return p
}

func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[49].Descriptor()
}

func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[49]
}

func (x ListhtlcsHtlcs_ListhtlcsHtlcsDirection) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListhtlcsHtlcs_ListhtlcsHtlcsDirection.Descriptor instead.
func (ListhtlcsHtlcs_ListhtlcsHtlcsDirection) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{225, 0}
}

// MultiFundChannel.failed[].method
type MultifundchannelFailed_MultifundchannelFailedMethod int32

const (
	MultifundchannelFailed_CONNECT              MultifundchannelFailed_MultifundchannelFailedMethod = 0
	MultifundchannelFailed_OPENCHANNEL_INIT     MultifundchannelFailed_MultifundchannelFailedMethod = 1
	MultifundchannelFailed_FUNDCHANNEL_START    MultifundchannelFailed_MultifundchannelFailedMethod = 2
	MultifundchannelFailed_FUNDCHANNEL_COMPLETE MultifundchannelFailed_MultifundchannelFailedMethod = 3
)

// Enum value maps for MultifundchannelFailed_MultifundchannelFailedMethod.
var (
	MultifundchannelFailed_MultifundchannelFailedMethod_name = map[int32]string{
		0: "CONNECT",
		1: "OPENCHANNEL_INIT",
		2: "FUNDCHANNEL_START",
		3: "FUNDCHANNEL_COMPLETE",
	}
	MultifundchannelFailed_MultifundchannelFailedMethod_value = map[string]int32{
		"CONNECT":              0,
		"OPENCHANNEL_INIT":     1,
		"FUNDCHANNEL_START":    2,
		"FUNDCHANNEL_COMPLETE": 3,
	}
)

func (x MultifundchannelFailed_MultifundchannelFailedMethod) Enum() *MultifundchannelFailed_MultifundchannelFailedMethod {
	p := new(MultifundchannelFailed_MultifundchannelFailedMethod)
	*p = x
	return p
}

func (x MultifundchannelFailed_MultifundchannelFailedMethod) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (MultifundchannelFailed_MultifundchannelFailedMethod) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[50].Descriptor()
}

func (MultifundchannelFailed_MultifundchannelFailedMethod) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[50]
}

func (x MultifundchannelFailed_MultifundchannelFailedMethod) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use MultifundchannelFailed_MultifundchannelFailedMethod.Descriptor instead.
func (MultifundchannelFailed_MultifundchannelFailedMethod) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{231, 0}
}

// RenePayStatus.paystatus[].status
type RenepaystatusPaystatus_RenepaystatusPaystatusStatus int32

const (
	RenepaystatusPaystatus_COMPLETE RenepaystatusPaystatus_RenepaystatusPaystatusStatus = 0
	RenepaystatusPaystatus_PENDING  RenepaystatusPaystatus_RenepaystatusPaystatusStatus = 1
	RenepaystatusPaystatus_FAILED   RenepaystatusPaystatus_RenepaystatusPaystatusStatus = 2
)

// Enum value maps for RenepaystatusPaystatus_RenepaystatusPaystatusStatus.
var (
	RenepaystatusPaystatus_RenepaystatusPaystatusStatus_name = map[int32]string{
		0: "COMPLETE",
		1: "PENDING",
		2: "FAILED",
	}
	RenepaystatusPaystatus_RenepaystatusPaystatusStatus_value = map[string]int32{
		"COMPLETE": 0,
		"PENDING":  1,
		"FAILED":   2,
	}
)

func (x RenepaystatusPaystatus_RenepaystatusPaystatusStatus) Enum() *RenepaystatusPaystatus_RenepaystatusPaystatusStatus {
	p := new(RenepaystatusPaystatus_RenepaystatusPaystatusStatus)
	*p = x
	return p
}

func (x RenepaystatusPaystatus_RenepaystatusPaystatusStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RenepaystatusPaystatus_RenepaystatusPaystatusStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[51].Descriptor()
}

func (RenepaystatusPaystatus_RenepaystatusPaystatusStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[51]
}

func (x RenepaystatusPaystatus_RenepaystatusPaystatusStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RenepaystatusPaystatus_RenepaystatusPaystatusStatus.Descriptor instead.
func (RenepaystatusPaystatus_RenepaystatusPaystatusStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{257, 0}
}

// RenePay.status
type RenepayResponse_RenepayStatus int32

const (
	RenepayResponse_COMPLETE RenepayResponse_RenepayStatus = 0
	RenepayResponse_PENDING  RenepayResponse_RenepayStatus = 1
	RenepayResponse_FAILED   RenepayResponse_RenepayStatus = 2
)

// Enum value maps for RenepayResponse_RenepayStatus.
var (
	RenepayResponse_RenepayStatus_name = map[int32]string{
		0: "COMPLETE",
		1: "PENDING",
		2: "FAILED",
	}
	RenepayResponse_RenepayStatus_value = map[string]int32{
		"COMPLETE": 0,
		"PENDING":  1,
		"FAILED":   2,
	}
)

func (x RenepayResponse_RenepayStatus) Enum() *RenepayResponse_RenepayStatus {
	p := new(RenepayResponse_RenepayStatus)
	*p = x
	return p
}

func (x RenepayResponse_RenepayStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RenepayResponse_RenepayStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[52].Descriptor()
}

func (RenepayResponse_RenepayStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[52]
}

func (x RenepayResponse_RenepayStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RenepayResponse_RenepayStatus.Descriptor instead.
func (RenepayResponse_RenepayStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{259, 0}
}

// SendInvoice.status
type SendinvoiceResponse_SendinvoiceStatus int32

const (
	SendinvoiceResponse_UNPAID  SendinvoiceResponse_SendinvoiceStatus = 0
	SendinvoiceResponse_PAID    SendinvoiceResponse_SendinvoiceStatus = 1
	SendinvoiceResponse_EXPIRED SendinvoiceResponse_SendinvoiceStatus = 2
)

// Enum value maps for SendinvoiceResponse_SendinvoiceStatus.
var (
	SendinvoiceResponse_SendinvoiceStatus_name = map[int32]string{
		0: "UNPAID",
		1: "PAID",
		2: "EXPIRED",
	}
	SendinvoiceResponse_SendinvoiceStatus_value = map[string]int32{
		"UNPAID":  0,
		"PAID":    1,
		"EXPIRED": 2,
	}
)

func (x SendinvoiceResponse_SendinvoiceStatus) Enum() *SendinvoiceResponse_SendinvoiceStatus {
	p := new(SendinvoiceResponse_SendinvoiceStatus)
	*p = x
	return p
}

func (x SendinvoiceResponse_SendinvoiceStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (SendinvoiceResponse_SendinvoiceStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[53].Descriptor()
}

func (SendinvoiceResponse_SendinvoiceStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[53]
}

func (x SendinvoiceResponse_SendinvoiceStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use SendinvoiceResponse_SendinvoiceStatus.Descriptor instead.
func (SendinvoiceResponse_SendinvoiceStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{266, 0}
}

// Wait.subsystem
type WaitRequest_WaitSubsystem int32

const (
	WaitRequest_INVOICES WaitRequest_WaitSubsystem = 0
	WaitRequest_FORWARDS WaitRequest_WaitSubsystem = 1
	WaitRequest_SENDPAYS WaitRequest_WaitSubsystem = 2
)

// Enum value maps for WaitRequest_WaitSubsystem.
var (
	WaitRequest_WaitSubsystem_name = map[int32]string{
		0: "INVOICES",
		1: "FORWARDS",
		2: "SENDPAYS",
	}
	WaitRequest_WaitSubsystem_value = map[string]int32{
		"INVOICES": 0,
		"FORWARDS": 1,
		"SENDPAYS": 2,
	}
)

func (x WaitRequest_WaitSubsystem) Enum() *WaitRequest_WaitSubsystem {
	p := new(WaitRequest_WaitSubsystem)
	*p = x
	return p
}

func (x WaitRequest_WaitSubsystem) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (WaitRequest_WaitSubsystem) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[54].Descriptor()
}

func (WaitRequest_WaitSubsystem) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[54]
}

func (x WaitRequest_WaitSubsystem) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use WaitRequest_WaitSubsystem.Descriptor instead.
func (WaitRequest_WaitSubsystem) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{294, 0}
}

// Wait.indexname
type WaitRequest_WaitIndexname int32

const (
	WaitRequest_CREATED WaitRequest_WaitIndexname = 0
	WaitRequest_UPDATED WaitRequest_WaitIndexname = 1
	WaitRequest_DELETED WaitRequest_WaitIndexname = 2
)

// Enum value maps for WaitRequest_WaitIndexname.
var (
	WaitRequest_WaitIndexname_name = map[int32]string{
		0: "CREATED",
		1: "UPDATED",
		2: "DELETED",
	}
	WaitRequest_WaitIndexname_value = map[string]int32{
		"CREATED": 0,
		"UPDATED": 1,
		"DELETED": 2,
	}
)

func (x WaitRequest_WaitIndexname) Enum() *WaitRequest_WaitIndexname {
	p := new(WaitRequest_WaitIndexname)
	*p = x
	return p
}

func (x WaitRequest_WaitIndexname) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (WaitRequest_WaitIndexname) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[55].Descriptor()
}

func (WaitRequest_WaitIndexname) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[55]
}

func (x WaitRequest_WaitIndexname) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use WaitRequest_WaitIndexname.Descriptor instead.
func (WaitRequest_WaitIndexname) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{294, 1}
}

// Wait.subsystem
type WaitResponse_WaitSubsystem int32

const (
	WaitResponse_INVOICES WaitResponse_WaitSubsystem = 0
	WaitResponse_FORWARDS WaitResponse_WaitSubsystem = 1
	WaitResponse_SENDPAYS WaitResponse_WaitSubsystem = 2
)

// Enum value maps for WaitResponse_WaitSubsystem.
var (
	WaitResponse_WaitSubsystem_name = map[int32]string{
		0: "INVOICES",
		1: "FORWARDS",
		2: "SENDPAYS",
	}
	WaitResponse_WaitSubsystem_value = map[string]int32{
		"INVOICES": 0,
		"FORWARDS": 1,
		"SENDPAYS": 2,
	}
)

func (x WaitResponse_WaitSubsystem) Enum() *WaitResponse_WaitSubsystem {
	p := new(WaitResponse_WaitSubsystem)
	*p = x
	return p
}

func (x WaitResponse_WaitSubsystem) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (WaitResponse_WaitSubsystem) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[56].Descriptor()
}

func (WaitResponse_WaitSubsystem) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[56]
}

func (x WaitResponse_WaitSubsystem) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use WaitResponse_WaitSubsystem.Descriptor instead.
func (WaitResponse_WaitSubsystem) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{295, 0}
}

// Wait.details.status
type WaitDetails_WaitDetailsStatus int32

const (
	WaitDetails_UNPAID       WaitDetails_WaitDetailsStatus = 0
	WaitDetails_PAID         WaitDetails_WaitDetailsStatus = 1
	WaitDetails_EXPIRED      WaitDetails_WaitDetailsStatus = 2
	WaitDetails_PENDING      WaitDetails_WaitDetailsStatus = 3
	WaitDetails_FAILED       WaitDetails_WaitDetailsStatus = 4
	WaitDetails_COMPLETE     WaitDetails_WaitDetailsStatus = 5
	WaitDetails_OFFERED      WaitDetails_WaitDetailsStatus = 6
	WaitDetails_SETTLED      WaitDetails_WaitDetailsStatus = 7
	WaitDetails_LOCAL_FAILED WaitDetails_WaitDetailsStatus = 8
)

// Enum value maps for WaitDetails_WaitDetailsStatus.
var (
	WaitDetails_WaitDetailsStatus_name = map[int32]string{
		0: "UNPAID",
		1: "PAID",
		2: "EXPIRED",
		3: "PENDING",
		4: "FAILED",
		5: "COMPLETE",
		6: "OFFERED",
		7: "SETTLED",
		8: "LOCAL_FAILED",
	}
	WaitDetails_WaitDetailsStatus_value = map[string]int32{
		"UNPAID":       0,
		"PAID":         1,
		"EXPIRED":      2,
		"PENDING":      3,
		"FAILED":       4,
		"COMPLETE":     5,
		"OFFERED":      6,
		"SETTLED":      7,
		"LOCAL_FAILED": 8,
	}
)

func (x WaitDetails_WaitDetailsStatus) Enum() *WaitDetails_WaitDetailsStatus {
	p := new(WaitDetails_WaitDetailsStatus)
	*p = x
	return p
}

func (x WaitDetails_WaitDetailsStatus) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (WaitDetails_WaitDetailsStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[57].Descriptor()
}

func (WaitDetails_WaitDetailsStatus) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[57]
}

func (x WaitDetails_WaitDetailsStatus) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use WaitDetails_WaitDetailsStatus.Descriptor instead.
func (WaitDetails_WaitDetailsStatus) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{296, 0}
}

// ListConfigs.configs.conf.source
type ListconfigsConfigsConf_ListconfigsConfigsConfSource int32

const (
	ListconfigsConfigsConf_CMDLINE ListconfigsConfigsConf_ListconfigsConfigsConfSource = 0
)

// Enum value maps for ListconfigsConfigsConf_ListconfigsConfigsConfSource.
var (
	ListconfigsConfigsConf_ListconfigsConfigsConfSource_name = map[int32]string{
		0: "CMDLINE",
	}
	ListconfigsConfigsConf_ListconfigsConfigsConfSource_value = map[string]int32{
		"CMDLINE": 0,
	}
)

func (x ListconfigsConfigsConf_ListconfigsConfigsConfSource) Enum() *ListconfigsConfigsConf_ListconfigsConfigsConfSource {
	p := new(ListconfigsConfigsConf_ListconfigsConfigsConfSource)
	*p = x
	return p
}

func (x ListconfigsConfigsConf_ListconfigsConfigsConfSource) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListconfigsConfigsConf_ListconfigsConfigsConfSource) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[58].Descriptor()
}

func (ListconfigsConfigsConf_ListconfigsConfigsConfSource) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[58]
}

func (x ListconfigsConfigsConf_ListconfigsConfigsConfSource) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListconfigsConfigsConf_ListconfigsConfigsConfSource.Descriptor instead.
func (ListconfigsConfigsConf_ListconfigsConfigsConfSource) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{300, 0}
}

// ListConfigs.configs.announce-addr-discovered.value_str
type ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr int32

const (
	ListconfigsConfigsAnnounceaddrdiscovered_TRUE  ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr = 0
	ListconfigsConfigsAnnounceaddrdiscovered_FALSE ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr = 1
	ListconfigsConfigsAnnounceaddrdiscovered_AUTO  ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr = 2
)

// Enum value maps for ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr.
var (
	ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr_name = map[int32]string{
		0: "TRUE",
		1: "FALSE",
		2: "AUTO",
	}
	ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr_value = map[string]int32{
		"TRUE":  0,
		"FALSE": 1,
		"AUTO":  2,
	}
)

func (x ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) Enum() *ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr {
	p := new(ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr)
	*p = x
	return p
}

func (x ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[59].Descriptor()
}

func (ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[59]
}

func (x ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr.Descriptor instead.
func (ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{353, 0}
}

// Stop.result
type StopResponse_StopResult int32

const (
	StopResponse_SHUTDOWN_COMPLETE StopResponse_StopResult = 0
)

// Enum value maps for StopResponse_StopResult.
var (
	StopResponse_StopResult_name = map[int32]string{
		0: "SHUTDOWN_COMPLETE",
	}
	StopResponse_StopResult_value = map[string]int32{
		"SHUTDOWN_COMPLETE": 0,
	}
)

func (x StopResponse_StopResult) Enum() *StopResponse_StopResult {
	p := new(StopResponse_StopResult)
	*p = x
	return p
}

func (x StopResponse_StopResult) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (StopResponse_StopResult) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[60].Descriptor()
}

func (StopResponse_StopResult) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[60]
}

func (x StopResponse_StopResult) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use StopResponse_StopResult.Descriptor instead.
func (StopResponse_StopResult) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{376, 0}
}

// Help.format-hint
type HelpResponse_HelpFormathint int32

const (
	HelpResponse_SIMPLE HelpResponse_HelpFormathint = 0
)

// Enum value maps for HelpResponse_HelpFormathint.
var (
	HelpResponse_HelpFormathint_name = map[int32]string{
		0: "SIMPLE",
	}
	HelpResponse_HelpFormathint_value = map[string]int32{
		"SIMPLE": 0,
	}
)

func (x HelpResponse_HelpFormathint) Enum() *HelpResponse_HelpFormathint {
	p := new(HelpResponse_HelpFormathint)
	*p = x
	return p
}

func (x HelpResponse_HelpFormathint) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (HelpResponse_HelpFormathint) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[61].Descriptor()
}

func (HelpResponse_HelpFormathint) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[61]
}

func (x HelpResponse_HelpFormathint) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use HelpResponse_HelpFormathint.Descriptor instead.
func (HelpResponse_HelpFormathint) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{378, 0}
}

// Bkpr-DumpIncomeCsv.csv_format
type BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat int32

const (
	BkprdumpincomecsvResponse_COINTRACKER BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat = 0
	BkprdumpincomecsvResponse_KOINLY      BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat = 1
	BkprdumpincomecsvResponse_HARMONY     BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat = 2
	BkprdumpincomecsvResponse_QUICKBOOKS  BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat = 3
)

// Enum value maps for BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat.
var (
	BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat_name = map[int32]string{
		0: "COINTRACKER",
		1: "KOINLY",
		2: "HARMONY",
		3: "QUICKBOOKS",
	}
	BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat_value = map[string]int32{
		"COINTRACKER": 0,
		"KOINLY":      1,
		"HARMONY":     2,
		"QUICKBOOKS":  3,
	}
)

func (x BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) Enum() *BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat {
	p := new(BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat)
	*p = x
	return p
}

func (x BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[62].Descriptor()
}

func (BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[62]
}

func (x BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat.Descriptor instead.
func (BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{390, 0}
}

// Bkpr-ListAccountEvents.events[].type
type BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType int32

const (
	BkprlistaccounteventsEvents_ONCHAIN_FEE BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType = 0
	BkprlistaccounteventsEvents_CHAIN       BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType = 1
	BkprlistaccounteventsEvents_CHANNEL     BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType = 2
)

// Enum value maps for BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType.
var (
	BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType_name = map[int32]string{
		0: "ONCHAIN_FEE",
		1: "CHAIN",
		2: "CHANNEL",
	}
	BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType_value = map[string]int32{
		"ONCHAIN_FEE": 0,
		"CHAIN":       1,
		"CHANNEL":     2,
	}
)

func (x BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) Enum() *BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType {
	p := new(BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType)
	*p = x
	return p
}

func (x BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[63].Descriptor()
}

func (BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[63]
}

func (x BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType.Descriptor instead.
func (BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{397, 0}
}

// Bkpr-EditDescriptionByPaymentId.updated[].type
type BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType int32

const (
	BkpreditdescriptionbypaymentidUpdated_CHAIN   BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType = 0
	BkpreditdescriptionbypaymentidUpdated_CHANNEL BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType = 1
)

// Enum value maps for BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType.
var (
	BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType_name = map[int32]string{
		0: "CHAIN",
		1: "CHANNEL",
	}
	BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType_value = map[string]int32{
		"CHAIN":   0,
		"CHANNEL": 1,
	}
)

func (x BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType) Enum() *BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType {
	p := new(BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType)
	*p = x
	return p
}

func (x BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[64].Descriptor()
}

func (BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[64]
}

func (x BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType.Descriptor instead.
func (BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{407, 0}
}

// Bkpr-EditDescriptionByOutpoint.updated[].type
type BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType int32

const (
	BkpreditdescriptionbyoutpointUpdated_CHAIN   BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType = 0
	BkpreditdescriptionbyoutpointUpdated_CHANNEL BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType = 1
)

// Enum value maps for BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType.
var (
	BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType_name = map[int32]string{
		0: "CHAIN",
		1: "CHANNEL",
	}
	BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType_value = map[string]int32{
		"CHAIN":   0,
		"CHANNEL": 1,
	}
)

func (x BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType) Enum() *BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType {
	p := new(BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType)
	*p = x
	return p
}

func (x BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[65].Descriptor()
}

func (BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[65]
}

func (x BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType.Descriptor instead.
func (BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{410, 0}
}

// AskRene-Inform-Channel.inform
type AskreneinformchannelRequest_AskreneinformchannelInform int32

const (
	AskreneinformchannelRequest_CONSTRAINED   AskreneinformchannelRequest_AskreneinformchannelInform = 0
	AskreneinformchannelRequest_UNCONSTRAINED AskreneinformchannelRequest_AskreneinformchannelInform = 1
	AskreneinformchannelRequest_SUCCEEDED     AskreneinformchannelRequest_AskreneinformchannelInform = 2
)

// Enum value maps for AskreneinformchannelRequest_AskreneinformchannelInform.
var (
	AskreneinformchannelRequest_AskreneinformchannelInform_name = map[int32]string{
		0: "CONSTRAINED",
		1: "UNCONSTRAINED",
		2: "SUCCEEDED",
	}
	AskreneinformchannelRequest_AskreneinformchannelInform_value = map[string]int32{
		"CONSTRAINED":   0,
		"UNCONSTRAINED": 1,
		"SUCCEEDED":     2,
	}
)

func (x AskreneinformchannelRequest_AskreneinformchannelInform) Enum() *AskreneinformchannelRequest_AskreneinformchannelInform {
	p := new(AskreneinformchannelRequest_AskreneinformchannelInform)
	*p = x
	return p
}

func (x AskreneinformchannelRequest_AskreneinformchannelInform) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (AskreneinformchannelRequest_AskreneinformchannelInform) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[66].Descriptor()
}

func (AskreneinformchannelRequest_AskreneinformchannelInform) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[66]
}

func (x AskreneinformchannelRequest_AskreneinformchannelInform) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use AskreneinformchannelRequest_AskreneinformchannelInform.Descriptor instead.
func (AskreneinformchannelRequest_AskreneinformchannelInform) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{453, 0}
}

// connect.direction
type PeerConnectNotification_PeerConnectDirection int32

const (
	PeerConnectNotification_IN  PeerConnectNotification_PeerConnectDirection = 0
	PeerConnectNotification_OUT PeerConnectNotification_PeerConnectDirection = 1
)

// Enum value maps for PeerConnectNotification_PeerConnectDirection.
var (
	PeerConnectNotification_PeerConnectDirection_name = map[int32]string{
		0: "IN",
		1: "OUT",
	}
	PeerConnectNotification_PeerConnectDirection_value = map[string]int32{
		"IN":  0,
		"OUT": 1,
	}
)

func (x PeerConnectNotification_PeerConnectDirection) Enum() *PeerConnectNotification_PeerConnectDirection {
	p := new(PeerConnectNotification_PeerConnectDirection)
	*p = x
	return p
}

func (x PeerConnectNotification_PeerConnectDirection) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (PeerConnectNotification_PeerConnectDirection) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[67].Descriptor()
}

func (PeerConnectNotification_PeerConnectDirection) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[67]
}

func (x PeerConnectNotification_PeerConnectDirection) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use PeerConnectNotification_PeerConnectDirection.Descriptor instead.
func (PeerConnectNotification_PeerConnectDirection) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{477, 0}
}

// connect.address.type
type PeerConnectAddress_PeerConnectAddressType int32

const (
	PeerConnectAddress_LOCAL_SOCKET PeerConnectAddress_PeerConnectAddressType = 0
	PeerConnectAddress_IPV4         PeerConnectAddress_PeerConnectAddressType = 1
	PeerConnectAddress_IPV6         PeerConnectAddress_PeerConnectAddressType = 2
	PeerConnectAddress_TORV2        PeerConnectAddress_PeerConnectAddressType = 3
	PeerConnectAddress_TORV3        PeerConnectAddress_PeerConnectAddressType = 4
)

// Enum value maps for PeerConnectAddress_PeerConnectAddressType.
var (
	PeerConnectAddress_PeerConnectAddressType_name = map[int32]string{
		0: "LOCAL_SOCKET",
		1: "IPV4",
		2: "IPV6",
		3: "TORV2",
		4: "TORV3",
	}
	PeerConnectAddress_PeerConnectAddressType_value = map[string]int32{
		"LOCAL_SOCKET": 0,
		"IPV4":         1,
		"IPV6":         2,
		"TORV2":        3,
		"TORV3":        4,
	}
)

func (x PeerConnectAddress_PeerConnectAddressType) Enum() *PeerConnectAddress_PeerConnectAddressType {
	p := new(PeerConnectAddress_PeerConnectAddressType)
	*p = x
	return p
}

func (x PeerConnectAddress_PeerConnectAddressType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (PeerConnectAddress_PeerConnectAddressType) Descriptor() protoreflect.EnumDescriptor {
	return file_cln_node_proto_enumTypes[68].Descriptor()
}

func (PeerConnectAddress_PeerConnectAddressType) Type() protoreflect.EnumType {
	return &file_cln_node_proto_enumTypes[68]
}

func (x PeerConnectAddress_PeerConnectAddressType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use PeerConnectAddress_PeerConnectAddressType.Descriptor instead.
func (PeerConnectAddress_PeerConnectAddressType) EnumDescriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{478, 0}
}

type GetinfoRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetinfoRequest) Reset() {
	*x = GetinfoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetinfoRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetinfoRequest) ProtoMessage() {}

func (x *GetinfoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetinfoRequest.ProtoReflect.Descriptor instead.
func (*GetinfoRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{0}
}

type GetinfoResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id                    []byte              `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Alias                 *string             `protobuf:"bytes,2,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	Color                 []byte              `protobuf:"bytes,3,opt,name=color,proto3" json:"color,omitempty"`
	NumPeers              uint32              `protobuf:"varint,4,opt,name=num_peers,json=numPeers,proto3" json:"num_peers,omitempty"`
	NumPendingChannels    uint32              `protobuf:"varint,5,opt,name=num_pending_channels,json=numPendingChannels,proto3" json:"num_pending_channels,omitempty"`
	NumActiveChannels     uint32              `protobuf:"varint,6,opt,name=num_active_channels,json=numActiveChannels,proto3" json:"num_active_channels,omitempty"`
	NumInactiveChannels   uint32              `protobuf:"varint,7,opt,name=num_inactive_channels,json=numInactiveChannels,proto3" json:"num_inactive_channels,omitempty"`
	Version               string              `protobuf:"bytes,8,opt,name=version,proto3" json:"version,omitempty"`
	LightningDir          string              `protobuf:"bytes,9,opt,name=lightning_dir,json=lightningDir,proto3" json:"lightning_dir,omitempty"`
	OurFeatures           *GetinfoOurFeatures `protobuf:"bytes,10,opt,name=our_features,json=ourFeatures,proto3,oneof" json:"our_features,omitempty"`
	Blockheight           uint32              `protobuf:"varint,11,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
	Network               string              `protobuf:"bytes,12,opt,name=network,proto3" json:"network,omitempty"`
	FeesCollectedMsat     *Amount             `protobuf:"bytes,13,opt,name=fees_collected_msat,json=feesCollectedMsat,proto3" json:"fees_collected_msat,omitempty"`
	Address               []*GetinfoAddress   `protobuf:"bytes,14,rep,name=address,proto3" json:"address,omitempty"`
	Binding               []*GetinfoBinding   `protobuf:"bytes,15,rep,name=binding,proto3" json:"binding,omitempty"`
	WarningBitcoindSync   *string             `protobuf:"bytes,16,opt,name=warning_bitcoind_sync,json=warningBitcoindSync,proto3,oneof" json:"warning_bitcoind_sync,omitempty"`
	WarningLightningdSync *string             `protobuf:"bytes,17,opt,name=warning_lightningd_sync,json=warningLightningdSync,proto3,oneof" json:"warning_lightningd_sync,omitempty"`
}

func (x *GetinfoResponse) Reset() {
	*x = GetinfoResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetinfoResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetinfoResponse) ProtoMessage() {}

func (x *GetinfoResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetinfoResponse.ProtoReflect.Descriptor instead.
func (*GetinfoResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{1}
}

func (x *GetinfoResponse) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *GetinfoResponse) GetAlias() string {
	if x != nil && x.Alias != nil {
		return *x.Alias
	}
	return ""
}

func (x *GetinfoResponse) GetColor() []byte {
	if x != nil {
		return x.Color
	}
	return nil
}

func (x *GetinfoResponse) GetNumPeers() uint32 {
	if x != nil {
		return x.NumPeers
	}
	return 0
}

func (x *GetinfoResponse) GetNumPendingChannels() uint32 {
	if x != nil {
		return x.NumPendingChannels
	}
	return 0
}

func (x *GetinfoResponse) GetNumActiveChannels() uint32 {
	if x != nil {
		return x.NumActiveChannels
	}
	return 0
}

func (x *GetinfoResponse) GetNumInactiveChannels() uint32 {
	if x != nil {
		return x.NumInactiveChannels
	}
	return 0
}

func (x *GetinfoResponse) GetVersion() string {
	if x != nil {
		return x.Version
	}
	return ""
}

func (x *GetinfoResponse) GetLightningDir() string {
	if x != nil {
		return x.LightningDir
	}
	return ""
}

func (x *GetinfoResponse) GetOurFeatures() *GetinfoOurFeatures {
	if x != nil {
		return x.OurFeatures
	}
	return nil
}

func (x *GetinfoResponse) GetBlockheight() uint32 {
	if x != nil {
		return x.Blockheight
	}
	return 0
}

func (x *GetinfoResponse) GetNetwork() string {
	if x != nil {
		return x.Network
	}
	return ""
}

func (x *GetinfoResponse) GetFeesCollectedMsat() *Amount {
	if x != nil {
		return x.FeesCollectedMsat
	}
	return nil
}

func (x *GetinfoResponse) GetAddress() []*GetinfoAddress {
	if x != nil {
		return x.Address
	}
	return nil
}

func (x *GetinfoResponse) GetBinding() []*GetinfoBinding {
	if x != nil {
		return x.Binding
	}
	return nil
}

func (x *GetinfoResponse) GetWarningBitcoindSync() string {
	if x != nil && x.WarningBitcoindSync != nil {
		return *x.WarningBitcoindSync
	}
	return ""
}

func (x *GetinfoResponse) GetWarningLightningdSync() string {
	if x != nil && x.WarningLightningdSync != nil {
		return *x.WarningLightningdSync
	}
	return ""
}

type GetinfoOurFeatures struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Init    []byte `protobuf:"bytes,1,opt,name=init,proto3" json:"init,omitempty"`
	Node    []byte `protobuf:"bytes,2,opt,name=node,proto3" json:"node,omitempty"`
	Channel []byte `protobuf:"bytes,3,opt,name=channel,proto3" json:"channel,omitempty"`
	Invoice []byte `protobuf:"bytes,4,opt,name=invoice,proto3" json:"invoice,omitempty"`
}

func (x *GetinfoOurFeatures) Reset() {
	*x = GetinfoOurFeatures{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetinfoOurFeatures) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetinfoOurFeatures) ProtoMessage() {}

func (x *GetinfoOurFeatures) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetinfoOurFeatures.ProtoReflect.Descriptor instead.
func (*GetinfoOurFeatures) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{2}
}

func (x *GetinfoOurFeatures) GetInit() []byte {
	if x != nil {
		return x.Init
	}
	return nil
}

func (x *GetinfoOurFeatures) GetNode() []byte {
	if x != nil {
		return x.Node
	}
	return nil
}

func (x *GetinfoOurFeatures) GetChannel() []byte {
	if x != nil {
		return x.Channel
	}
	return nil
}

func (x *GetinfoOurFeatures) GetInvoice() []byte {
	if x != nil {
		return x.Invoice
	}
	return nil
}

type GetinfoAddress struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType GetinfoAddress_GetinfoAddressType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.GetinfoAddress_GetinfoAddressType" json:"item_type,omitempty"`
	Port     uint32                            `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	Address  *string                           `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
}

func (x *GetinfoAddress) Reset() {
	*x = GetinfoAddress{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetinfoAddress) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetinfoAddress) ProtoMessage() {}

func (x *GetinfoAddress) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetinfoAddress.ProtoReflect.Descriptor instead.
func (*GetinfoAddress) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{3}
}

func (x *GetinfoAddress) GetItemType() GetinfoAddress_GetinfoAddressType {
	if x != nil {
		return x.ItemType
	}
	return GetinfoAddress_DNS
}

func (x *GetinfoAddress) GetPort() uint32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *GetinfoAddress) GetAddress() string {
	if x != nil && x.Address != nil {
		return *x.Address
	}
	return ""
}

type GetinfoBinding struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType GetinfoBinding_GetinfoBindingType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.GetinfoBinding_GetinfoBindingType" json:"item_type,omitempty"`
	Address  *string                           `protobuf:"bytes,2,opt,name=address,proto3,oneof" json:"address,omitempty"`
	Port     *uint32                           `protobuf:"varint,3,opt,name=port,proto3,oneof" json:"port,omitempty"`
	Socket   *string                           `protobuf:"bytes,4,opt,name=socket,proto3,oneof" json:"socket,omitempty"`
	Subtype  *string                           `protobuf:"bytes,5,opt,name=subtype,proto3,oneof" json:"subtype,omitempty"`
}

func (x *GetinfoBinding) Reset() {
	*x = GetinfoBinding{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetinfoBinding) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetinfoBinding) ProtoMessage() {}

func (x *GetinfoBinding) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetinfoBinding.ProtoReflect.Descriptor instead.
func (*GetinfoBinding) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{4}
}

func (x *GetinfoBinding) GetItemType() GetinfoBinding_GetinfoBindingType {
	if x != nil {
		return x.ItemType
	}
	return GetinfoBinding_LOCAL_SOCKET
}

func (x *GetinfoBinding) GetAddress() string {
	if x != nil && x.Address != nil {
		return *x.Address
	}
	return ""
}

func (x *GetinfoBinding) GetPort() uint32 {
	if x != nil && x.Port != nil {
		return *x.Port
	}
	return 0
}

func (x *GetinfoBinding) GetSocket() string {
	if x != nil && x.Socket != nil {
		return *x.Socket
	}
	return ""
}

func (x *GetinfoBinding) GetSubtype() string {
	if x != nil && x.Subtype != nil {
		return *x.Subtype
	}
	return ""
}

type ListpeersRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id    []byte                           `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
	Level *ListpeersRequest_ListpeersLevel `protobuf:"varint,2,opt,name=level,proto3,enum=cln.ListpeersRequest_ListpeersLevel,oneof" json:"level,omitempty"`
}

func (x *ListpeersRequest) Reset() {
	*x = ListpeersRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeersRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeersRequest) ProtoMessage() {}

func (x *ListpeersRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeersRequest.ProtoReflect.Descriptor instead.
func (*ListpeersRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{5}
}

func (x *ListpeersRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *ListpeersRequest) GetLevel() ListpeersRequest_ListpeersLevel {
	if x != nil && x.Level != nil {
		return *x.Level
	}
	return ListpeersRequest_IO
}

type ListpeersResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Peers []*ListpeersPeers `protobuf:"bytes,1,rep,name=peers,proto3" json:"peers,omitempty"`
}

func (x *ListpeersResponse) Reset() {
	*x = ListpeersResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeersResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeersResponse) ProtoMessage() {}

func (x *ListpeersResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeersResponse.ProtoReflect.Descriptor instead.
func (*ListpeersResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{6}
}

func (x *ListpeersResponse) GetPeers() []*ListpeersPeers {
	if x != nil {
		return x.Peers
	}
	return nil
}

type ListpeersPeers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id          []byte               `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Connected   bool                 `protobuf:"varint,2,opt,name=connected,proto3" json:"connected,omitempty"`
	Log         []*ListpeersPeersLog `protobuf:"bytes,3,rep,name=log,proto3" json:"log,omitempty"`
	Netaddr     []string             `protobuf:"bytes,5,rep,name=netaddr,proto3" json:"netaddr,omitempty"`
	Features    []byte               `protobuf:"bytes,6,opt,name=features,proto3,oneof" json:"features,omitempty"`
	RemoteAddr  *string              `protobuf:"bytes,7,opt,name=remote_addr,json=remoteAddr,proto3,oneof" json:"remote_addr,omitempty"`
	NumChannels *uint32              `protobuf:"varint,8,opt,name=num_channels,json=numChannels,proto3,oneof" json:"num_channels,omitempty"`
}

func (x *ListpeersPeers) Reset() {
	*x = ListpeersPeers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeersPeers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeersPeers) ProtoMessage() {}

func (x *ListpeersPeers) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeersPeers.ProtoReflect.Descriptor instead.
func (*ListpeersPeers) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{7}
}

func (x *ListpeersPeers) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *ListpeersPeers) GetConnected() bool {
	if x != nil {
		return x.Connected
	}
	return false
}

func (x *ListpeersPeers) GetLog() []*ListpeersPeersLog {
	if x != nil {
		return x.Log
	}
	return nil
}

func (x *ListpeersPeers) GetNetaddr() []string {
	if x != nil {
		return x.Netaddr
	}
	return nil
}

func (x *ListpeersPeers) GetFeatures() []byte {
	if x != nil {
		return x.Features
	}
	return nil
}

func (x *ListpeersPeers) GetRemoteAddr() string {
	if x != nil && x.RemoteAddr != nil {
		return *x.RemoteAddr
	}
	return ""
}

func (x *ListpeersPeers) GetNumChannels() uint32 {
	if x != nil && x.NumChannels != nil {
		return *x.NumChannels
	}
	return 0
}

type ListpeersPeersLog struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType   ListpeersPeersLog_ListpeersPeersLogType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ListpeersPeersLog_ListpeersPeersLogType" json:"item_type,omitempty"`
	NumSkipped *uint32                                 `protobuf:"varint,2,opt,name=num_skipped,json=numSkipped,proto3,oneof" json:"num_skipped,omitempty"`
	Time       *string                                 `protobuf:"bytes,3,opt,name=time,proto3,oneof" json:"time,omitempty"`
	Source     *string                                 `protobuf:"bytes,4,opt,name=source,proto3,oneof" json:"source,omitempty"`
	Log        *string                                 `protobuf:"bytes,5,opt,name=log,proto3,oneof" json:"log,omitempty"`
	NodeId     []byte                                  `protobuf:"bytes,6,opt,name=node_id,json=nodeId,proto3,oneof" json:"node_id,omitempty"`
	Data       []byte                                  `protobuf:"bytes,7,opt,name=data,proto3,oneof" json:"data,omitempty"`
}

func (x *ListpeersPeersLog) Reset() {
	*x = ListpeersPeersLog{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeersPeersLog) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeersPeersLog) ProtoMessage() {}

func (x *ListpeersPeersLog) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeersPeersLog.ProtoReflect.Descriptor instead.
func (*ListpeersPeersLog) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{8}
}

func (x *ListpeersPeersLog) GetItemType() ListpeersPeersLog_ListpeersPeersLogType {
	if x != nil {
		return x.ItemType
	}
	return ListpeersPeersLog_SKIPPED
}

func (x *ListpeersPeersLog) GetNumSkipped() uint32 {
	if x != nil && x.NumSkipped != nil {
		return *x.NumSkipped
	}
	return 0
}

func (x *ListpeersPeersLog) GetTime() string {
	if x != nil && x.Time != nil {
		return *x.Time
	}
	return ""
}

func (x *ListpeersPeersLog) GetSource() string {
	if x != nil && x.Source != nil {
		return *x.Source
	}
	return ""
}

func (x *ListpeersPeersLog) GetLog() string {
	if x != nil && x.Log != nil {
		return *x.Log
	}
	return ""
}

func (x *ListpeersPeersLog) GetNodeId() []byte {
	if x != nil {
		return x.NodeId
	}
	return nil
}

func (x *ListpeersPeersLog) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

type ListfundsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Spent *bool `protobuf:"varint,1,opt,name=spent,proto3,oneof" json:"spent,omitempty"`
}

func (x *ListfundsRequest) Reset() {
	*x = ListfundsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListfundsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListfundsRequest) ProtoMessage() {}

func (x *ListfundsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[9]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListfundsRequest.ProtoReflect.Descriptor instead.
func (*ListfundsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{9}
}

func (x *ListfundsRequest) GetSpent() bool {
	if x != nil && x.Spent != nil {
		return *x.Spent
	}
	return false
}

type ListfundsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Outputs  []*ListfundsOutputs  `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
	Channels []*ListfundsChannels `protobuf:"bytes,2,rep,name=channels,proto3" json:"channels,omitempty"`
}

func (x *ListfundsResponse) Reset() {
	*x = ListfundsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListfundsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListfundsResponse) ProtoMessage() {}

func (x *ListfundsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[10]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListfundsResponse.ProtoReflect.Descriptor instead.
func (*ListfundsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{10}
}

func (x *ListfundsResponse) GetOutputs() []*ListfundsOutputs {
	if x != nil {
		return x.Outputs
	}
	return nil
}

func (x *ListfundsResponse) GetChannels() []*ListfundsChannels {
	if x != nil {
		return x.Channels
	}
	return nil
}

type ListfundsOutputs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid            []byte                                  `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Output          uint32                                  `protobuf:"varint,2,opt,name=output,proto3" json:"output,omitempty"`
	AmountMsat      *Amount                                 `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	Scriptpubkey    []byte                                  `protobuf:"bytes,4,opt,name=scriptpubkey,proto3" json:"scriptpubkey,omitempty"`
	Address         *string                                 `protobuf:"bytes,5,opt,name=address,proto3,oneof" json:"address,omitempty"`
	Redeemscript    []byte                                  `protobuf:"bytes,6,opt,name=redeemscript,proto3,oneof" json:"redeemscript,omitempty"`
	Status          ListfundsOutputs_ListfundsOutputsStatus `protobuf:"varint,7,opt,name=status,proto3,enum=cln.ListfundsOutputs_ListfundsOutputsStatus" json:"status,omitempty"`
	Blockheight     *uint32                                 `protobuf:"varint,8,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
	Reserved        bool                                    `protobuf:"varint,9,opt,name=reserved,proto3" json:"reserved,omitempty"`
	ReservedToBlock *uint32                                 `protobuf:"varint,10,opt,name=reserved_to_block,json=reservedToBlock,proto3,oneof" json:"reserved_to_block,omitempty"`
}

func (x *ListfundsOutputs) Reset() {
	*x = ListfundsOutputs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListfundsOutputs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListfundsOutputs) ProtoMessage() {}

func (x *ListfundsOutputs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[11]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListfundsOutputs.ProtoReflect.Descriptor instead.
func (*ListfundsOutputs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{11}
}

func (x *ListfundsOutputs) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *ListfundsOutputs) GetOutput() uint32 {
	if x != nil {
		return x.Output
	}
	return 0
}

func (x *ListfundsOutputs) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *ListfundsOutputs) GetScriptpubkey() []byte {
	if x != nil {
		return x.Scriptpubkey
	}
	return nil
}

func (x *ListfundsOutputs) GetAddress() string {
	if x != nil && x.Address != nil {
		return *x.Address
	}
	return ""
}

func (x *ListfundsOutputs) GetRedeemscript() []byte {
	if x != nil {
		return x.Redeemscript
	}
	return nil
}

func (x *ListfundsOutputs) GetStatus() ListfundsOutputs_ListfundsOutputsStatus {
	if x != nil {
		return x.Status
	}
	return ListfundsOutputs_UNCONFIRMED
}

func (x *ListfundsOutputs) GetBlockheight() uint32 {
	if x != nil && x.Blockheight != nil {
		return *x.Blockheight
	}
	return 0
}

func (x *ListfundsOutputs) GetReserved() bool {
	if x != nil {
		return x.Reserved
	}
	return false
}

func (x *ListfundsOutputs) GetReservedToBlock() uint32 {
	if x != nil && x.ReservedToBlock != nil {
		return *x.ReservedToBlock
	}
	return 0
}

type ListfundsChannels struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PeerId         []byte       `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
	OurAmountMsat  *Amount      `protobuf:"bytes,2,opt,name=our_amount_msat,json=ourAmountMsat,proto3" json:"our_amount_msat,omitempty"`
	AmountMsat     *Amount      `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	FundingTxid    []byte       `protobuf:"bytes,4,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
	FundingOutput  uint32       `protobuf:"varint,5,opt,name=funding_output,json=fundingOutput,proto3" json:"funding_output,omitempty"`
	Connected      bool         `protobuf:"varint,6,opt,name=connected,proto3" json:"connected,omitempty"`
	State          ChannelState `protobuf:"varint,7,opt,name=state,proto3,enum=cln.ChannelState" json:"state,omitempty"`
	ShortChannelId *string      `protobuf:"bytes,8,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
	ChannelId      []byte       `protobuf:"bytes,9,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
}

func (x *ListfundsChannels) Reset() {
	*x = ListfundsChannels{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListfundsChannels) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListfundsChannels) ProtoMessage() {}

func (x *ListfundsChannels) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[12]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListfundsChannels.ProtoReflect.Descriptor instead.
func (*ListfundsChannels) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{12}
}

func (x *ListfundsChannels) GetPeerId() []byte {
	if x != nil {
		return x.PeerId
	}
	return nil
}

func (x *ListfundsChannels) GetOurAmountMsat() *Amount {
	if x != nil {
		return x.OurAmountMsat
	}
	return nil
}

func (x *ListfundsChannels) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *ListfundsChannels) GetFundingTxid() []byte {
	if x != nil {
		return x.FundingTxid
	}
	return nil
}

func (x *ListfundsChannels) GetFundingOutput() uint32 {
	if x != nil {
		return x.FundingOutput
	}
	return 0
}

func (x *ListfundsChannels) GetConnected() bool {
	if x != nil {
		return x.Connected
	}
	return false
}

func (x *ListfundsChannels) GetState() ChannelState {
	if x != nil {
		return x.State
	}
	return ChannelState_Openingd
}

func (x *ListfundsChannels) GetShortChannelId() string {
	if x != nil && x.ShortChannelId != nil {
		return *x.ShortChannelId
	}
	return ""
}

func (x *ListfundsChannels) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

type SendpayRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Route           []*SendpayRoute `protobuf:"bytes,1,rep,name=route,proto3" json:"route,omitempty"`
	PaymentHash     []byte          `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Label           *string         `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Bolt11          *string         `protobuf:"bytes,5,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	PaymentSecret   []byte          `protobuf:"bytes,6,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
	Partid          *uint64         `protobuf:"varint,7,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	Groupid         *uint64         `protobuf:"varint,9,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
	AmountMsat      *Amount         `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Localinvreqid   []byte          `protobuf:"bytes,11,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
	PaymentMetadata []byte          `protobuf:"bytes,12,opt,name=payment_metadata,json=paymentMetadata,proto3,oneof" json:"payment_metadata,omitempty"`
	Description     *string         `protobuf:"bytes,13,opt,name=description,proto3,oneof" json:"description,omitempty"`
}

func (x *SendpayRequest) Reset() {
	*x = SendpayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendpayRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendpayRequest) ProtoMessage() {}

func (x *SendpayRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[13]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendpayRequest.ProtoReflect.Descriptor instead.
func (*SendpayRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{13}
}

func (x *SendpayRequest) GetRoute() []*SendpayRoute {
	if x != nil {
		return x.Route
	}
	return nil
}

func (x *SendpayRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *SendpayRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *SendpayRequest) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *SendpayRequest) GetPaymentSecret() []byte {
	if x != nil {
		return x.PaymentSecret
	}
	return nil
}

func (x *SendpayRequest) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *SendpayRequest) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

func (x *SendpayRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *SendpayRequest) GetLocalinvreqid() []byte {
	if x != nil {
		return x.Localinvreqid
	}
	return nil
}

func (x *SendpayRequest) GetPaymentMetadata() []byte {
	if x != nil {
		return x.PaymentMetadata
	}
	return nil
}

func (x *SendpayRequest) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

type SendpayResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id              uint64                        `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Groupid         *uint64                       `protobuf:"varint,2,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
	PaymentHash     []byte                        `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status          SendpayResponse_SendpayStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.SendpayResponse_SendpayStatus" json:"status,omitempty"`
	AmountMsat      *Amount                       `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Destination     []byte                        `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	CreatedAt       uint64                        `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	AmountSentMsat  *Amount                       `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
	Label           *string                       `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Partid          *uint64                       `protobuf:"varint,10,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	Bolt11          *string                       `protobuf:"bytes,11,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12          *string                       `protobuf:"bytes,12,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	PaymentPreimage []byte                        `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	Message         *string                       `protobuf:"bytes,14,opt,name=message,proto3,oneof" json:"message,omitempty"`
	CompletedAt     *uint64                       `protobuf:"varint,15,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
	CreatedIndex    *uint64                       `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex    *uint64                       `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
}

func (x *SendpayResponse) Reset() {
	*x = SendpayResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendpayResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendpayResponse) ProtoMessage() {}

func (x *SendpayResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[14]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendpayResponse.ProtoReflect.Descriptor instead.
func (*SendpayResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{14}
}

func (x *SendpayResponse) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *SendpayResponse) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

func (x *SendpayResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *SendpayResponse) GetStatus() SendpayResponse_SendpayStatus {
	if x != nil {
		return x.Status
	}
	return SendpayResponse_PENDING
}

func (x *SendpayResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *SendpayResponse) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *SendpayResponse) GetCreatedAt() uint64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *SendpayResponse) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *SendpayResponse) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *SendpayResponse) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *SendpayResponse) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *SendpayResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *SendpayResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *SendpayResponse) GetMessage() string {
	if x != nil && x.Message != nil {
		return *x.Message
	}
	return ""
}

func (x *SendpayResponse) GetCompletedAt() uint64 {
	if x != nil && x.CompletedAt != nil {
		return *x.CompletedAt
	}
	return 0
}

func (x *SendpayResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *SendpayResponse) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

type SendpayRoute struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id         []byte  `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	Delay      uint32  `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
	Channel    string  `protobuf:"bytes,4,opt,name=channel,proto3" json:"channel,omitempty"`
	AmountMsat *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}

func (x *SendpayRoute) Reset() {
	*x = SendpayRoute{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendpayRoute) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendpayRoute) ProtoMessage() {}

func (x *SendpayRoute) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[15]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendpayRoute.ProtoReflect.Descriptor instead.
func (*SendpayRoute) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{15}
}

func (x *SendpayRoute) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *SendpayRoute) GetDelay() uint32 {
	if x != nil {
		return x.Delay
	}
	return 0
}

func (x *SendpayRoute) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

func (x *SendpayRoute) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

type ListchannelsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ShortChannelId *string `protobuf:"bytes,1,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
	Source         []byte  `protobuf:"bytes,2,opt,name=source,proto3,oneof" json:"source,omitempty"`
	Destination    []byte  `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
}

func (x *ListchannelsRequest) Reset() {
	*x = ListchannelsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListchannelsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListchannelsRequest) ProtoMessage() {}

func (x *ListchannelsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[16]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListchannelsRequest.ProtoReflect.Descriptor instead.
func (*ListchannelsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{16}
}

func (x *ListchannelsRequest) GetShortChannelId() string {
	if x != nil && x.ShortChannelId != nil {
		return *x.ShortChannelId
	}
	return ""
}

func (x *ListchannelsRequest) GetSource() []byte {
	if x != nil {
		return x.Source
	}
	return nil
}

func (x *ListchannelsRequest) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

type ListchannelsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Channels []*ListchannelsChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
}

func (x *ListchannelsResponse) Reset() {
	*x = ListchannelsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[17]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListchannelsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListchannelsResponse) ProtoMessage() {}

func (x *ListchannelsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[17]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListchannelsResponse.ProtoReflect.Descriptor instead.
func (*ListchannelsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{17}
}

func (x *ListchannelsResponse) GetChannels() []*ListchannelsChannels {
	if x != nil {
		return x.Channels
	}
	return nil
}

type ListchannelsChannels struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Source              []byte  `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
	Destination         []byte  `protobuf:"bytes,2,opt,name=destination,proto3" json:"destination,omitempty"`
	ShortChannelId      string  `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
	Public              bool    `protobuf:"varint,4,opt,name=public,proto3" json:"public,omitempty"`
	AmountMsat          *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	MessageFlags        uint32  `protobuf:"varint,6,opt,name=message_flags,json=messageFlags,proto3" json:"message_flags,omitempty"`
	ChannelFlags        uint32  `protobuf:"varint,7,opt,name=channel_flags,json=channelFlags,proto3" json:"channel_flags,omitempty"`
	Active              bool    `protobuf:"varint,8,opt,name=active,proto3" json:"active,omitempty"`
	LastUpdate          uint32  `protobuf:"varint,9,opt,name=last_update,json=lastUpdate,proto3" json:"last_update,omitempty"`
	BaseFeeMillisatoshi uint32  `protobuf:"varint,10,opt,name=base_fee_millisatoshi,json=baseFeeMillisatoshi,proto3" json:"base_fee_millisatoshi,omitempty"`
	FeePerMillionth     uint32  `protobuf:"varint,11,opt,name=fee_per_millionth,json=feePerMillionth,proto3" json:"fee_per_millionth,omitempty"`
	Delay               uint32  `protobuf:"varint,12,opt,name=delay,proto3" json:"delay,omitempty"`
	HtlcMinimumMsat     *Amount `protobuf:"bytes,13,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"`
	HtlcMaximumMsat     *Amount `protobuf:"bytes,14,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
	Features            []byte  `protobuf:"bytes,15,opt,name=features,proto3" json:"features,omitempty"`
	Direction           uint32  `protobuf:"varint,16,opt,name=direction,proto3" json:"direction,omitempty"`
}

func (x *ListchannelsChannels) Reset() {
	*x = ListchannelsChannels{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[18]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListchannelsChannels) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListchannelsChannels) ProtoMessage() {}

func (x *ListchannelsChannels) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[18]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListchannelsChannels.ProtoReflect.Descriptor instead.
func (*ListchannelsChannels) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{18}
}

func (x *ListchannelsChannels) GetSource() []byte {
	if x != nil {
		return x.Source
	}
	return nil
}

func (x *ListchannelsChannels) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *ListchannelsChannels) GetShortChannelId() string {
	if x != nil {
		return x.ShortChannelId
	}
	return ""
}

func (x *ListchannelsChannels) GetPublic() bool {
	if x != nil {
		return x.Public
	}
	return false
}

func (x *ListchannelsChannels) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *ListchannelsChannels) GetMessageFlags() uint32 {
	if x != nil {
		return x.MessageFlags
	}
	return 0
}

func (x *ListchannelsChannels) GetChannelFlags() uint32 {
	if x != nil {
		return x.ChannelFlags
	}
	return 0
}

func (x *ListchannelsChannels) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *ListchannelsChannels) GetLastUpdate() uint32 {
	if x != nil {
		return x.LastUpdate
	}
	return 0
}

func (x *ListchannelsChannels) GetBaseFeeMillisatoshi() uint32 {
	if x != nil {
		return x.BaseFeeMillisatoshi
	}
	return 0
}

func (x *ListchannelsChannels) GetFeePerMillionth() uint32 {
	if x != nil {
		return x.FeePerMillionth
	}
	return 0
}

func (x *ListchannelsChannels) GetDelay() uint32 {
	if x != nil {
		return x.Delay
	}
	return 0
}

func (x *ListchannelsChannels) GetHtlcMinimumMsat() *Amount {
	if x != nil {
		return x.HtlcMinimumMsat
	}
	return nil
}

func (x *ListchannelsChannels) GetHtlcMaximumMsat() *Amount {
	if x != nil {
		return x.HtlcMaximumMsat
	}
	return nil
}

func (x *ListchannelsChannels) GetFeatures() []byte {
	if x != nil {
		return x.Features
	}
	return nil
}

func (x *ListchannelsChannels) GetDirection() uint32 {
	if x != nil {
		return x.Direction
	}
	return 0
}

type AddgossipRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Message []byte `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
}

func (x *AddgossipRequest) Reset() {
	*x = AddgossipRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[19]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AddgossipRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddgossipRequest) ProtoMessage() {}

func (x *AddgossipRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[19]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddgossipRequest.ProtoReflect.Descriptor instead.
func (*AddgossipRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{19}
}

func (x *AddgossipRequest) GetMessage() []byte {
	if x != nil {
		return x.Message
	}
	return nil
}

type AddgossipResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AddgossipResponse) Reset() {
	*x = AddgossipResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[20]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AddgossipResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddgossipResponse) ProtoMessage() {}

func (x *AddgossipResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[20]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddgossipResponse.ProtoReflect.Descriptor instead.
func (*AddgossipResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{20}
}

type AddpsbtoutputRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Satoshi     *Amount `protobuf:"bytes,1,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
	Locktime    *uint32 `protobuf:"varint,2,opt,name=locktime,proto3,oneof" json:"locktime,omitempty"`
	Initialpsbt *string `protobuf:"bytes,3,opt,name=initialpsbt,proto3,oneof" json:"initialpsbt,omitempty"`
	Destination *string `protobuf:"bytes,4,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
}

func (x *AddpsbtoutputRequest) Reset() {
	*x = AddpsbtoutputRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AddpsbtoutputRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddpsbtoutputRequest) ProtoMessage() {}

func (x *AddpsbtoutputRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[21]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddpsbtoutputRequest.ProtoReflect.Descriptor instead.
func (*AddpsbtoutputRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{21}
}

func (x *AddpsbtoutputRequest) GetSatoshi() *Amount {
	if x != nil {
		return x.Satoshi
	}
	return nil
}

func (x *AddpsbtoutputRequest) GetLocktime() uint32 {
	if x != nil && x.Locktime != nil {
		return *x.Locktime
	}
	return 0
}

func (x *AddpsbtoutputRequest) GetInitialpsbt() string {
	if x != nil && x.Initialpsbt != nil {
		return *x.Initialpsbt
	}
	return ""
}

func (x *AddpsbtoutputRequest) GetDestination() string {
	if x != nil && x.Destination != nil {
		return *x.Destination
	}
	return ""
}

type AddpsbtoutputResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt                 string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	EstimatedAddedWeight uint32 `protobuf:"varint,2,opt,name=estimated_added_weight,json=estimatedAddedWeight,proto3" json:"estimated_added_weight,omitempty"`
	Outnum               uint32 `protobuf:"varint,3,opt,name=outnum,proto3" json:"outnum,omitempty"`
}

func (x *AddpsbtoutputResponse) Reset() {
	*x = AddpsbtoutputResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AddpsbtoutputResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddpsbtoutputResponse) ProtoMessage() {}

func (x *AddpsbtoutputResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[22]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddpsbtoutputResponse.ProtoReflect.Descriptor instead.
func (*AddpsbtoutputResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{22}
}

func (x *AddpsbtoutputResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *AddpsbtoutputResponse) GetEstimatedAddedWeight() uint32 {
	if x != nil {
		return x.EstimatedAddedWeight
	}
	return 0
}

func (x *AddpsbtoutputResponse) GetOutnum() uint32 {
	if x != nil {
		return x.Outnum
	}
	return 0
}

type AutocleanonceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subsystem AutocleanSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.AutocleanSubsystem" json:"subsystem,omitempty"`
	Age       uint64             `protobuf:"varint,2,opt,name=age,proto3" json:"age,omitempty"`
}

func (x *AutocleanonceRequest) Reset() {
	*x = AutocleanonceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[23]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceRequest) ProtoMessage() {}

func (x *AutocleanonceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[23]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceRequest.ProtoReflect.Descriptor instead.
func (*AutocleanonceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{23}
}

func (x *AutocleanonceRequest) GetSubsystem() AutocleanSubsystem {
	if x != nil {
		return x.Subsystem
	}
	return AutocleanSubsystem_SUCCEEDEDFORWARDS
}

func (x *AutocleanonceRequest) GetAge() uint64 {
	if x != nil {
		return x.Age
	}
	return 0
}

type AutocleanonceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Autoclean *AutocleanonceAutoclean `protobuf:"bytes,1,opt,name=autoclean,proto3" json:"autoclean,omitempty"`
}

func (x *AutocleanonceResponse) Reset() {
	*x = AutocleanonceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[24]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceResponse) ProtoMessage() {}

func (x *AutocleanonceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[24]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceResponse.ProtoReflect.Descriptor instead.
func (*AutocleanonceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{24}
}

func (x *AutocleanonceResponse) GetAutoclean() *AutocleanonceAutoclean {
	if x != nil {
		return x.Autoclean
	}
	return nil
}

type AutocleanonceAutoclean struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Succeededforwards *AutocleanonceAutocleanSucceededforwards `protobuf:"bytes,1,opt,name=succeededforwards,proto3,oneof" json:"succeededforwards,omitempty"`
	Failedforwards    *AutocleanonceAutocleanFailedforwards    `protobuf:"bytes,2,opt,name=failedforwards,proto3,oneof" json:"failedforwards,omitempty"`
	Succeededpays     *AutocleanonceAutocleanSucceededpays     `protobuf:"bytes,3,opt,name=succeededpays,proto3,oneof" json:"succeededpays,omitempty"`
	Failedpays        *AutocleanonceAutocleanFailedpays        `protobuf:"bytes,4,opt,name=failedpays,proto3,oneof" json:"failedpays,omitempty"`
	Paidinvoices      *AutocleanonceAutocleanPaidinvoices      `protobuf:"bytes,5,opt,name=paidinvoices,proto3,oneof" json:"paidinvoices,omitempty"`
	Expiredinvoices   *AutocleanonceAutocleanExpiredinvoices   `protobuf:"bytes,6,opt,name=expiredinvoices,proto3,oneof" json:"expiredinvoices,omitempty"`
}

func (x *AutocleanonceAutoclean) Reset() {
	*x = AutocleanonceAutoclean{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[25]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceAutoclean) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceAutoclean) ProtoMessage() {}

func (x *AutocleanonceAutoclean) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[25]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceAutoclean.ProtoReflect.Descriptor instead.
func (*AutocleanonceAutoclean) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{25}
}

func (x *AutocleanonceAutoclean) GetSucceededforwards() *AutocleanonceAutocleanSucceededforwards {
	if x != nil {
		return x.Succeededforwards
	}
	return nil
}

func (x *AutocleanonceAutoclean) GetFailedforwards() *AutocleanonceAutocleanFailedforwards {
	if x != nil {
		return x.Failedforwards
	}
	return nil
}

func (x *AutocleanonceAutoclean) GetSucceededpays() *AutocleanonceAutocleanSucceededpays {
	if x != nil {
		return x.Succeededpays
	}
	return nil
}

func (x *AutocleanonceAutoclean) GetFailedpays() *AutocleanonceAutocleanFailedpays {
	if x != nil {
		return x.Failedpays
	}
	return nil
}

func (x *AutocleanonceAutoclean) GetPaidinvoices() *AutocleanonceAutocleanPaidinvoices {
	if x != nil {
		return x.Paidinvoices
	}
	return nil
}

func (x *AutocleanonceAutoclean) GetExpiredinvoices() *AutocleanonceAutocleanExpiredinvoices {
	if x != nil {
		return x.Expiredinvoices
	}
	return nil
}

type AutocleanonceAutocleanSucceededforwards struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Cleaned   uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}

func (x *AutocleanonceAutocleanSucceededforwards) Reset() {
	*x = AutocleanonceAutocleanSucceededforwards{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[26]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceAutocleanSucceededforwards) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceAutocleanSucceededforwards) ProtoMessage() {}

func (x *AutocleanonceAutocleanSucceededforwards) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[26]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceAutocleanSucceededforwards.ProtoReflect.Descriptor instead.
func (*AutocleanonceAutocleanSucceededforwards) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{26}
}

func (x *AutocleanonceAutocleanSucceededforwards) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanonceAutocleanSucceededforwards) GetUncleaned() uint64 {
	if x != nil {
		return x.Uncleaned
	}
	return 0
}

type AutocleanonceAutocleanFailedforwards struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Cleaned   uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}

func (x *AutocleanonceAutocleanFailedforwards) Reset() {
	*x = AutocleanonceAutocleanFailedforwards{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[27]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceAutocleanFailedforwards) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceAutocleanFailedforwards) ProtoMessage() {}

func (x *AutocleanonceAutocleanFailedforwards) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[27]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceAutocleanFailedforwards.ProtoReflect.Descriptor instead.
func (*AutocleanonceAutocleanFailedforwards) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{27}
}

func (x *AutocleanonceAutocleanFailedforwards) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanonceAutocleanFailedforwards) GetUncleaned() uint64 {
	if x != nil {
		return x.Uncleaned
	}
	return 0
}

type AutocleanonceAutocleanSucceededpays struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Cleaned   uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}

func (x *AutocleanonceAutocleanSucceededpays) Reset() {
	*x = AutocleanonceAutocleanSucceededpays{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[28]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceAutocleanSucceededpays) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceAutocleanSucceededpays) ProtoMessage() {}

func (x *AutocleanonceAutocleanSucceededpays) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[28]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceAutocleanSucceededpays.ProtoReflect.Descriptor instead.
func (*AutocleanonceAutocleanSucceededpays) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{28}
}

func (x *AutocleanonceAutocleanSucceededpays) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanonceAutocleanSucceededpays) GetUncleaned() uint64 {
	if x != nil {
		return x.Uncleaned
	}
	return 0
}

type AutocleanonceAutocleanFailedpays struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Cleaned   uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}

func (x *AutocleanonceAutocleanFailedpays) Reset() {
	*x = AutocleanonceAutocleanFailedpays{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[29]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceAutocleanFailedpays) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceAutocleanFailedpays) ProtoMessage() {}

func (x *AutocleanonceAutocleanFailedpays) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[29]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceAutocleanFailedpays.ProtoReflect.Descriptor instead.
func (*AutocleanonceAutocleanFailedpays) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{29}
}

func (x *AutocleanonceAutocleanFailedpays) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanonceAutocleanFailedpays) GetUncleaned() uint64 {
	if x != nil {
		return x.Uncleaned
	}
	return 0
}

type AutocleanonceAutocleanPaidinvoices struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Cleaned   uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}

func (x *AutocleanonceAutocleanPaidinvoices) Reset() {
	*x = AutocleanonceAutocleanPaidinvoices{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[30]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceAutocleanPaidinvoices) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceAutocleanPaidinvoices) ProtoMessage() {}

func (x *AutocleanonceAutocleanPaidinvoices) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[30]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceAutocleanPaidinvoices.ProtoReflect.Descriptor instead.
func (*AutocleanonceAutocleanPaidinvoices) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{30}
}

func (x *AutocleanonceAutocleanPaidinvoices) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanonceAutocleanPaidinvoices) GetUncleaned() uint64 {
	if x != nil {
		return x.Uncleaned
	}
	return 0
}

type AutocleanonceAutocleanExpiredinvoices struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Cleaned   uint64 `protobuf:"varint,1,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Uncleaned uint64 `protobuf:"varint,2,opt,name=uncleaned,proto3" json:"uncleaned,omitempty"`
}

func (x *AutocleanonceAutocleanExpiredinvoices) Reset() {
	*x = AutocleanonceAutocleanExpiredinvoices{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[31]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanonceAutocleanExpiredinvoices) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanonceAutocleanExpiredinvoices) ProtoMessage() {}

func (x *AutocleanonceAutocleanExpiredinvoices) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[31]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanonceAutocleanExpiredinvoices.ProtoReflect.Descriptor instead.
func (*AutocleanonceAutocleanExpiredinvoices) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{31}
}

func (x *AutocleanonceAutocleanExpiredinvoices) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanonceAutocleanExpiredinvoices) GetUncleaned() uint64 {
	if x != nil {
		return x.Uncleaned
	}
	return 0
}

type AutocleanstatusRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subsystem *AutocleanSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.AutocleanSubsystem,oneof" json:"subsystem,omitempty"`
}

func (x *AutocleanstatusRequest) Reset() {
	*x = AutocleanstatusRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[32]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusRequest) ProtoMessage() {}

func (x *AutocleanstatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[32]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusRequest.ProtoReflect.Descriptor instead.
func (*AutocleanstatusRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{32}
}

func (x *AutocleanstatusRequest) GetSubsystem() AutocleanSubsystem {
	if x != nil && x.Subsystem != nil {
		return *x.Subsystem
	}
	return AutocleanSubsystem_SUCCEEDEDFORWARDS
}

type AutocleanstatusResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Autoclean *AutocleanstatusAutoclean `protobuf:"bytes,1,opt,name=autoclean,proto3" json:"autoclean,omitempty"`
}

func (x *AutocleanstatusResponse) Reset() {
	*x = AutocleanstatusResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[33]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusResponse) ProtoMessage() {}

func (x *AutocleanstatusResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[33]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusResponse.ProtoReflect.Descriptor instead.
func (*AutocleanstatusResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{33}
}

func (x *AutocleanstatusResponse) GetAutoclean() *AutocleanstatusAutoclean {
	if x != nil {
		return x.Autoclean
	}
	return nil
}

type AutocleanstatusAutoclean struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Succeededforwards *AutocleanstatusAutocleanSucceededforwards `protobuf:"bytes,1,opt,name=succeededforwards,proto3,oneof" json:"succeededforwards,omitempty"`
	Failedforwards    *AutocleanstatusAutocleanFailedforwards    `protobuf:"bytes,2,opt,name=failedforwards,proto3,oneof" json:"failedforwards,omitempty"`
	Succeededpays     *AutocleanstatusAutocleanSucceededpays     `protobuf:"bytes,3,opt,name=succeededpays,proto3,oneof" json:"succeededpays,omitempty"`
	Failedpays        *AutocleanstatusAutocleanFailedpays        `protobuf:"bytes,4,opt,name=failedpays,proto3,oneof" json:"failedpays,omitempty"`
	Paidinvoices      *AutocleanstatusAutocleanPaidinvoices      `protobuf:"bytes,5,opt,name=paidinvoices,proto3,oneof" json:"paidinvoices,omitempty"`
	Expiredinvoices   *AutocleanstatusAutocleanExpiredinvoices   `protobuf:"bytes,6,opt,name=expiredinvoices,proto3,oneof" json:"expiredinvoices,omitempty"`
}

func (x *AutocleanstatusAutoclean) Reset() {
	*x = AutocleanstatusAutoclean{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[34]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusAutoclean) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusAutoclean) ProtoMessage() {}

func (x *AutocleanstatusAutoclean) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[34]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusAutoclean.ProtoReflect.Descriptor instead.
func (*AutocleanstatusAutoclean) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{34}
}

func (x *AutocleanstatusAutoclean) GetSucceededforwards() *AutocleanstatusAutocleanSucceededforwards {
	if x != nil {
		return x.Succeededforwards
	}
	return nil
}

func (x *AutocleanstatusAutoclean) GetFailedforwards() *AutocleanstatusAutocleanFailedforwards {
	if x != nil {
		return x.Failedforwards
	}
	return nil
}

func (x *AutocleanstatusAutoclean) GetSucceededpays() *AutocleanstatusAutocleanSucceededpays {
	if x != nil {
		return x.Succeededpays
	}
	return nil
}

func (x *AutocleanstatusAutoclean) GetFailedpays() *AutocleanstatusAutocleanFailedpays {
	if x != nil {
		return x.Failedpays
	}
	return nil
}

func (x *AutocleanstatusAutoclean) GetPaidinvoices() *AutocleanstatusAutocleanPaidinvoices {
	if x != nil {
		return x.Paidinvoices
	}
	return nil
}

func (x *AutocleanstatusAutoclean) GetExpiredinvoices() *AutocleanstatusAutocleanExpiredinvoices {
	if x != nil {
		return x.Expiredinvoices
	}
	return nil
}

type AutocleanstatusAutocleanSucceededforwards struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Enabled bool    `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Cleaned uint64  `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Age     *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}

func (x *AutocleanstatusAutocleanSucceededforwards) Reset() {
	*x = AutocleanstatusAutocleanSucceededforwards{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[35]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusAutocleanSucceededforwards) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusAutocleanSucceededforwards) ProtoMessage() {}

func (x *AutocleanstatusAutocleanSucceededforwards) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[35]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusAutocleanSucceededforwards.ProtoReflect.Descriptor instead.
func (*AutocleanstatusAutocleanSucceededforwards) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{35}
}

func (x *AutocleanstatusAutocleanSucceededforwards) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *AutocleanstatusAutocleanSucceededforwards) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanstatusAutocleanSucceededforwards) GetAge() uint64 {
	if x != nil && x.Age != nil {
		return *x.Age
	}
	return 0
}

type AutocleanstatusAutocleanFailedforwards struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Enabled bool    `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Cleaned uint64  `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Age     *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}

func (x *AutocleanstatusAutocleanFailedforwards) Reset() {
	*x = AutocleanstatusAutocleanFailedforwards{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[36]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusAutocleanFailedforwards) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusAutocleanFailedforwards) ProtoMessage() {}

func (x *AutocleanstatusAutocleanFailedforwards) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[36]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusAutocleanFailedforwards.ProtoReflect.Descriptor instead.
func (*AutocleanstatusAutocleanFailedforwards) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{36}
}

func (x *AutocleanstatusAutocleanFailedforwards) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *AutocleanstatusAutocleanFailedforwards) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanstatusAutocleanFailedforwards) GetAge() uint64 {
	if x != nil && x.Age != nil {
		return *x.Age
	}
	return 0
}

type AutocleanstatusAutocleanSucceededpays struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Enabled bool    `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Cleaned uint64  `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Age     *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}

func (x *AutocleanstatusAutocleanSucceededpays) Reset() {
	*x = AutocleanstatusAutocleanSucceededpays{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[37]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusAutocleanSucceededpays) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusAutocleanSucceededpays) ProtoMessage() {}

func (x *AutocleanstatusAutocleanSucceededpays) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[37]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusAutocleanSucceededpays.ProtoReflect.Descriptor instead.
func (*AutocleanstatusAutocleanSucceededpays) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{37}
}

func (x *AutocleanstatusAutocleanSucceededpays) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *AutocleanstatusAutocleanSucceededpays) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanstatusAutocleanSucceededpays) GetAge() uint64 {
	if x != nil && x.Age != nil {
		return *x.Age
	}
	return 0
}

type AutocleanstatusAutocleanFailedpays struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Enabled bool    `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Cleaned uint64  `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Age     *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}

func (x *AutocleanstatusAutocleanFailedpays) Reset() {
	*x = AutocleanstatusAutocleanFailedpays{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[38]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusAutocleanFailedpays) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusAutocleanFailedpays) ProtoMessage() {}

func (x *AutocleanstatusAutocleanFailedpays) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[38]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusAutocleanFailedpays.ProtoReflect.Descriptor instead.
func (*AutocleanstatusAutocleanFailedpays) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{38}
}

func (x *AutocleanstatusAutocleanFailedpays) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *AutocleanstatusAutocleanFailedpays) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanstatusAutocleanFailedpays) GetAge() uint64 {
	if x != nil && x.Age != nil {
		return *x.Age
	}
	return 0
}

type AutocleanstatusAutocleanPaidinvoices struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Enabled bool    `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Cleaned uint64  `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Age     *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}

func (x *AutocleanstatusAutocleanPaidinvoices) Reset() {
	*x = AutocleanstatusAutocleanPaidinvoices{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[39]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusAutocleanPaidinvoices) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusAutocleanPaidinvoices) ProtoMessage() {}

func (x *AutocleanstatusAutocleanPaidinvoices) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[39]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusAutocleanPaidinvoices.ProtoReflect.Descriptor instead.
func (*AutocleanstatusAutocleanPaidinvoices) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{39}
}

func (x *AutocleanstatusAutocleanPaidinvoices) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *AutocleanstatusAutocleanPaidinvoices) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanstatusAutocleanPaidinvoices) GetAge() uint64 {
	if x != nil && x.Age != nil {
		return *x.Age
	}
	return 0
}

type AutocleanstatusAutocleanExpiredinvoices struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Enabled bool    `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Cleaned uint64  `protobuf:"varint,2,opt,name=cleaned,proto3" json:"cleaned,omitempty"`
	Age     *uint64 `protobuf:"varint,3,opt,name=age,proto3,oneof" json:"age,omitempty"`
}

func (x *AutocleanstatusAutocleanExpiredinvoices) Reset() {
	*x = AutocleanstatusAutocleanExpiredinvoices{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[40]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AutocleanstatusAutocleanExpiredinvoices) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AutocleanstatusAutocleanExpiredinvoices) ProtoMessage() {}

func (x *AutocleanstatusAutocleanExpiredinvoices) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[40]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AutocleanstatusAutocleanExpiredinvoices.ProtoReflect.Descriptor instead.
func (*AutocleanstatusAutocleanExpiredinvoices) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{40}
}

func (x *AutocleanstatusAutocleanExpiredinvoices) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *AutocleanstatusAutocleanExpiredinvoices) GetCleaned() uint64 {
	if x != nil {
		return x.Cleaned
	}
	return 0
}

func (x *AutocleanstatusAutocleanExpiredinvoices) GetAge() uint64 {
	if x != nil && x.Age != nil {
		return *x.Age
	}
	return 0
}

type CheckmessageRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
	Zbase   string `protobuf:"bytes,2,opt,name=zbase,proto3" json:"zbase,omitempty"`
	Pubkey  []byte `protobuf:"bytes,3,opt,name=pubkey,proto3,oneof" json:"pubkey,omitempty"`
}

func (x *CheckmessageRequest) Reset() {
	*x = CheckmessageRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[41]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CheckmessageRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CheckmessageRequest) ProtoMessage() {}

func (x *CheckmessageRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[41]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CheckmessageRequest.ProtoReflect.Descriptor instead.
func (*CheckmessageRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{41}
}

func (x *CheckmessageRequest) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

func (x *CheckmessageRequest) GetZbase() string {
	if x != nil {
		return x.Zbase
	}
	return ""
}

func (x *CheckmessageRequest) GetPubkey() []byte {
	if x != nil {
		return x.Pubkey
	}
	return nil
}

type CheckmessageResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Verified bool   `protobuf:"varint,1,opt,name=verified,proto3" json:"verified,omitempty"`
	Pubkey   []byte `protobuf:"bytes,2,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
}

func (x *CheckmessageResponse) Reset() {
	*x = CheckmessageResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[42]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CheckmessageResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CheckmessageResponse) ProtoMessage() {}

func (x *CheckmessageResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[42]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CheckmessageResponse.ProtoReflect.Descriptor instead.
func (*CheckmessageResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{42}
}

func (x *CheckmessageResponse) GetVerified() bool {
	if x != nil {
		return x.Verified
	}
	return false
}

func (x *CheckmessageResponse) GetPubkey() []byte {
	if x != nil {
		return x.Pubkey
	}
	return nil
}

type CloseRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id                 string     `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Unilateraltimeout  *uint32    `protobuf:"varint,2,opt,name=unilateraltimeout,proto3,oneof" json:"unilateraltimeout,omitempty"`
	Destination        *string    `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	FeeNegotiationStep *string    `protobuf:"bytes,4,opt,name=fee_negotiation_step,json=feeNegotiationStep,proto3,oneof" json:"fee_negotiation_step,omitempty"`
	WrongFunding       *Outpoint  `protobuf:"bytes,5,opt,name=wrong_funding,json=wrongFunding,proto3,oneof" json:"wrong_funding,omitempty"`
	ForceLeaseClosed   *bool      `protobuf:"varint,6,opt,name=force_lease_closed,json=forceLeaseClosed,proto3,oneof" json:"force_lease_closed,omitempty"`
	Feerange           []*Feerate `protobuf:"bytes,7,rep,name=feerange,proto3" json:"feerange,omitempty"`
}

func (x *CloseRequest) Reset() {
	*x = CloseRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[43]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CloseRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CloseRequest) ProtoMessage() {}

func (x *CloseRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[43]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CloseRequest.ProtoReflect.Descriptor instead.
func (*CloseRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{43}
}

func (x *CloseRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *CloseRequest) GetUnilateraltimeout() uint32 {
	if x != nil && x.Unilateraltimeout != nil {
		return *x.Unilateraltimeout
	}
	return 0
}

func (x *CloseRequest) GetDestination() string {
	if x != nil && x.Destination != nil {
		return *x.Destination
	}
	return ""
}

func (x *CloseRequest) GetFeeNegotiationStep() string {
	if x != nil && x.FeeNegotiationStep != nil {
		return *x.FeeNegotiationStep
	}
	return ""
}

func (x *CloseRequest) GetWrongFunding() *Outpoint {
	if x != nil {
		return x.WrongFunding
	}
	return nil
}

func (x *CloseRequest) GetForceLeaseClosed() bool {
	if x != nil && x.ForceLeaseClosed != nil {
		return *x.ForceLeaseClosed
	}
	return false
}

func (x *CloseRequest) GetFeerange() []*Feerate {
	if x != nil {
		return x.Feerange
	}
	return nil
}

type CloseResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType CloseResponse_CloseType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.CloseResponse_CloseType" json:"item_type,omitempty"`
	Tx       []byte                  `protobuf:"bytes,2,opt,name=tx,proto3,oneof" json:"tx,omitempty"`
	Txid     []byte                  `protobuf:"bytes,3,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
	Txs      [][]byte                `protobuf:"bytes,4,rep,name=txs,proto3" json:"txs,omitempty"`
	Txids    [][]byte                `protobuf:"bytes,5,rep,name=txids,proto3" json:"txids,omitempty"`
}

func (x *CloseResponse) Reset() {
	*x = CloseResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[44]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CloseResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CloseResponse) ProtoMessage() {}

func (x *CloseResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[44]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CloseResponse.ProtoReflect.Descriptor instead.
func (*CloseResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{44}
}

func (x *CloseResponse) GetItemType() CloseResponse_CloseType {
	if x != nil {
		return x.ItemType
	}
	return CloseResponse_MUTUAL
}

func (x *CloseResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *CloseResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *CloseResponse) GetTxs() [][]byte {
	if x != nil {
		return x.Txs
	}
	return nil
}

func (x *CloseResponse) GetTxids() [][]byte {
	if x != nil {
		return x.Txids
	}
	return nil
}

type ConnectRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id   string  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Host *string `protobuf:"bytes,2,opt,name=host,proto3,oneof" json:"host,omitempty"`
	Port *uint32 `protobuf:"varint,3,opt,name=port,proto3,oneof" json:"port,omitempty"`
}

func (x *ConnectRequest) Reset() {
	*x = ConnectRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[45]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ConnectRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ConnectRequest) ProtoMessage() {}

func (x *ConnectRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[45]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ConnectRequest.ProtoReflect.Descriptor instead.
func (*ConnectRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{45}
}

func (x *ConnectRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *ConnectRequest) GetHost() string {
	if x != nil && x.Host != nil {
		return *x.Host
	}
	return ""
}

func (x *ConnectRequest) GetPort() uint32 {
	if x != nil && x.Port != nil {
		return *x.Port
	}
	return 0
}

type ConnectResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id        []byte                           `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Features  []byte                           `protobuf:"bytes,2,opt,name=features,proto3" json:"features,omitempty"`
	Direction ConnectResponse_ConnectDirection `protobuf:"varint,3,opt,name=direction,proto3,enum=cln.ConnectResponse_ConnectDirection" json:"direction,omitempty"`
	Address   *ConnectAddress                  `protobuf:"bytes,4,opt,name=address,proto3" json:"address,omitempty"`
}

func (x *ConnectResponse) Reset() {
	*x = ConnectResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[46]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ConnectResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ConnectResponse) ProtoMessage() {}

func (x *ConnectResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[46]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ConnectResponse.ProtoReflect.Descriptor instead.
func (*ConnectResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{46}
}

func (x *ConnectResponse) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *ConnectResponse) GetFeatures() []byte {
	if x != nil {
		return x.Features
	}
	return nil
}

func (x *ConnectResponse) GetDirection() ConnectResponse_ConnectDirection {
	if x != nil {
		return x.Direction
	}
	return ConnectResponse_IN
}

func (x *ConnectResponse) GetAddress() *ConnectAddress {
	if x != nil {
		return x.Address
	}
	return nil
}

type ConnectAddress struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType ConnectAddress_ConnectAddressType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ConnectAddress_ConnectAddressType" json:"item_type,omitempty"`
	Socket   *string                           `protobuf:"bytes,2,opt,name=socket,proto3,oneof" json:"socket,omitempty"`
	Address  *string                           `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
	Port     *uint32                           `protobuf:"varint,4,opt,name=port,proto3,oneof" json:"port,omitempty"`
}

func (x *ConnectAddress) Reset() {
	*x = ConnectAddress{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[47]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ConnectAddress) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ConnectAddress) ProtoMessage() {}

func (x *ConnectAddress) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[47]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ConnectAddress.ProtoReflect.Descriptor instead.
func (*ConnectAddress) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{47}
}

func (x *ConnectAddress) GetItemType() ConnectAddress_ConnectAddressType {
	if x != nil {
		return x.ItemType
	}
	return ConnectAddress_LOCAL_SOCKET
}

func (x *ConnectAddress) GetSocket() string {
	if x != nil && x.Socket != nil {
		return *x.Socket
	}
	return ""
}

func (x *ConnectAddress) GetAddress() string {
	if x != nil && x.Address != nil {
		return *x.Address
	}
	return ""
}

func (x *ConnectAddress) GetPort() uint32 {
	if x != nil && x.Port != nil {
		return *x.Port
	}
	return 0
}

type CreateinvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invstring string `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
	Label     string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	Preimage  []byte `protobuf:"bytes,3,opt,name=preimage,proto3" json:"preimage,omitempty"`
}

func (x *CreateinvoiceRequest) Reset() {
	*x = CreateinvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[48]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateinvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateinvoiceRequest) ProtoMessage() {}

func (x *CreateinvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[48]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateinvoiceRequest.ProtoReflect.Descriptor instead.
func (*CreateinvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{48}
}

func (x *CreateinvoiceRequest) GetInvstring() string {
	if x != nil {
		return x.Invstring
	}
	return ""
}

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

func (x *CreateinvoiceRequest) GetPreimage() []byte {
	if x != nil {
		return x.Preimage
	}
	return nil
}

type CreateinvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label              string                                    `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
	Bolt11             *string                                   `protobuf:"bytes,2,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12             *string                                   `protobuf:"bytes,3,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	PaymentHash        []byte                                    `protobuf:"bytes,4,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	AmountMsat         *Amount                                   `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Status             CreateinvoiceResponse_CreateinvoiceStatus `protobuf:"varint,6,opt,name=status,proto3,enum=cln.CreateinvoiceResponse_CreateinvoiceStatus" json:"status,omitempty"`
	Description        string                                    `protobuf:"bytes,7,opt,name=description,proto3" json:"description,omitempty"`
	ExpiresAt          uint64                                    `protobuf:"varint,8,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	PayIndex           *uint64                                   `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
	AmountReceivedMsat *Amount                                   `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
	PaidAt             *uint64                                   `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
	PaymentPreimage    []byte                                    `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	LocalOfferId       []byte                                    `protobuf:"bytes,13,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
	InvreqPayerNote    *string                                   `protobuf:"bytes,15,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
	CreatedIndex       *uint64                                   `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	PaidOutpoint       *CreateinvoicePaidOutpoint                `protobuf:"bytes,17,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
}

func (x *CreateinvoiceResponse) Reset() {
	*x = CreateinvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[49]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateinvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateinvoiceResponse) ProtoMessage() {}

func (x *CreateinvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[49]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateinvoiceResponse.ProtoReflect.Descriptor instead.
func (*CreateinvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{49}
}

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

func (x *CreateinvoiceResponse) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *CreateinvoiceResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *CreateinvoiceResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *CreateinvoiceResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *CreateinvoiceResponse) GetStatus() CreateinvoiceResponse_CreateinvoiceStatus {
	if x != nil {
		return x.Status
	}
	return CreateinvoiceResponse_PAID
}

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

func (x *CreateinvoiceResponse) GetExpiresAt() uint64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *CreateinvoiceResponse) GetPayIndex() uint64 {
	if x != nil && x.PayIndex != nil {
		return *x.PayIndex
	}
	return 0
}

func (x *CreateinvoiceResponse) GetAmountReceivedMsat() *Amount {
	if x != nil {
		return x.AmountReceivedMsat
	}
	return nil
}

func (x *CreateinvoiceResponse) GetPaidAt() uint64 {
	if x != nil && x.PaidAt != nil {
		return *x.PaidAt
	}
	return 0
}

func (x *CreateinvoiceResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *CreateinvoiceResponse) GetLocalOfferId() []byte {
	if x != nil {
		return x.LocalOfferId
	}
	return nil
}

func (x *CreateinvoiceResponse) GetInvreqPayerNote() string {
	if x != nil && x.InvreqPayerNote != nil {
		return *x.InvreqPayerNote
	}
	return ""
}

func (x *CreateinvoiceResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *CreateinvoiceResponse) GetPaidOutpoint() *CreateinvoicePaidOutpoint {
	if x != nil {
		return x.PaidOutpoint
	}
	return nil
}

type CreateinvoicePaidOutpoint struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid   []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
}

func (x *CreateinvoicePaidOutpoint) Reset() {
	*x = CreateinvoicePaidOutpoint{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[50]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateinvoicePaidOutpoint) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateinvoicePaidOutpoint) ProtoMessage() {}

func (x *CreateinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[50]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
func (*CreateinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{50}
}

func (x *CreateinvoicePaidOutpoint) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *CreateinvoicePaidOutpoint) GetOutnum() uint32 {
	if x != nil {
		return x.Outnum
	}
	return 0
}

type DatastoreRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Hex        []byte                          `protobuf:"bytes,2,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
	Mode       *DatastoreRequest_DatastoreMode `protobuf:"varint,3,opt,name=mode,proto3,enum=cln.DatastoreRequest_DatastoreMode,oneof" json:"mode,omitempty"`
	Generation *uint64                         `protobuf:"varint,4,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
	Key        []string                        `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
	String_    *string                         `protobuf:"bytes,6,opt,name=string,proto3,oneof" json:"string,omitempty"`
}

func (x *DatastoreRequest) Reset() {
	*x = DatastoreRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[51]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DatastoreRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DatastoreRequest) ProtoMessage() {}

func (x *DatastoreRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[51]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DatastoreRequest.ProtoReflect.Descriptor instead.
func (*DatastoreRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{51}
}

func (x *DatastoreRequest) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

func (x *DatastoreRequest) GetMode() DatastoreRequest_DatastoreMode {
	if x != nil && x.Mode != nil {
		return *x.Mode
	}
	return DatastoreRequest_MUST_CREATE
}

func (x *DatastoreRequest) GetGeneration() uint64 {
	if x != nil && x.Generation != nil {
		return *x.Generation
	}
	return 0
}

func (x *DatastoreRequest) GetKey() []string {
	if x != nil {
		return x.Key
	}
	return nil
}

func (x *DatastoreRequest) GetString_() string {
	if x != nil && x.String_ != nil {
		return *x.String_
	}
	return ""
}

type DatastoreResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Generation *uint64  `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
	Hex        []byte   `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
	String_    *string  `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
	Key        []string `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
}

func (x *DatastoreResponse) Reset() {
	*x = DatastoreResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[52]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DatastoreResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DatastoreResponse) ProtoMessage() {}

func (x *DatastoreResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[52]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DatastoreResponse.ProtoReflect.Descriptor instead.
func (*DatastoreResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{52}
}

func (x *DatastoreResponse) GetGeneration() uint64 {
	if x != nil && x.Generation != nil {
		return *x.Generation
	}
	return 0
}

func (x *DatastoreResponse) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

func (x *DatastoreResponse) GetString_() string {
	if x != nil && x.String_ != nil {
		return *x.String_
	}
	return ""
}

func (x *DatastoreResponse) GetKey() []string {
	if x != nil {
		return x.Key
	}
	return nil
}

type DatastoreusageRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key []string `protobuf:"bytes,1,rep,name=key,proto3" json:"key,omitempty"`
}

func (x *DatastoreusageRequest) Reset() {
	*x = DatastoreusageRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[53]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DatastoreusageRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DatastoreusageRequest) ProtoMessage() {}

func (x *DatastoreusageRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[53]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DatastoreusageRequest.ProtoReflect.Descriptor instead.
func (*DatastoreusageRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{53}
}

func (x *DatastoreusageRequest) GetKey() []string {
	if x != nil {
		return x.Key
	}
	return nil
}

type DatastoreusageResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Datastoreusage *DatastoreusageDatastoreusage `protobuf:"bytes,1,opt,name=datastoreusage,proto3" json:"datastoreusage,omitempty"`
}

func (x *DatastoreusageResponse) Reset() {
	*x = DatastoreusageResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[54]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DatastoreusageResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DatastoreusageResponse) ProtoMessage() {}

func (x *DatastoreusageResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[54]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DatastoreusageResponse.ProtoReflect.Descriptor instead.
func (*DatastoreusageResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{54}
}

func (x *DatastoreusageResponse) GetDatastoreusage() *DatastoreusageDatastoreusage {
	if x != nil {
		return x.Datastoreusage
	}
	return nil
}

type DatastoreusageDatastoreusage struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key        string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	TotalBytes uint64 `protobuf:"varint,2,opt,name=total_bytes,json=totalBytes,proto3" json:"total_bytes,omitempty"`
}

func (x *DatastoreusageDatastoreusage) Reset() {
	*x = DatastoreusageDatastoreusage{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[55]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DatastoreusageDatastoreusage) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DatastoreusageDatastoreusage) ProtoMessage() {}

func (x *DatastoreusageDatastoreusage) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[55]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DatastoreusageDatastoreusage.ProtoReflect.Descriptor instead.
func (*DatastoreusageDatastoreusage) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{55}
}

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

func (x *DatastoreusageDatastoreusage) GetTotalBytes() uint64 {
	if x != nil {
		return x.TotalBytes
	}
	return 0
}

type CreateonionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Hops       []*CreateonionHops `protobuf:"bytes,1,rep,name=hops,proto3" json:"hops,omitempty"`
	Assocdata  []byte             `protobuf:"bytes,2,opt,name=assocdata,proto3" json:"assocdata,omitempty"`
	SessionKey []byte             `protobuf:"bytes,3,opt,name=session_key,json=sessionKey,proto3,oneof" json:"session_key,omitempty"`
	OnionSize  *uint32            `protobuf:"varint,4,opt,name=onion_size,json=onionSize,proto3,oneof" json:"onion_size,omitempty"`
}

func (x *CreateonionRequest) Reset() {
	*x = CreateonionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[56]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateonionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateonionRequest) ProtoMessage() {}

func (x *CreateonionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[56]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateonionRequest.ProtoReflect.Descriptor instead.
func (*CreateonionRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{56}
}

func (x *CreateonionRequest) GetHops() []*CreateonionHops {
	if x != nil {
		return x.Hops
	}
	return nil
}

func (x *CreateonionRequest) GetAssocdata() []byte {
	if x != nil {
		return x.Assocdata
	}
	return nil
}

func (x *CreateonionRequest) GetSessionKey() []byte {
	if x != nil {
		return x.SessionKey
	}
	return nil
}

func (x *CreateonionRequest) GetOnionSize() uint32 {
	if x != nil && x.OnionSize != nil {
		return *x.OnionSize
	}
	return 0
}

type CreateonionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Onion         []byte   `protobuf:"bytes,1,opt,name=onion,proto3" json:"onion,omitempty"`
	SharedSecrets [][]byte `protobuf:"bytes,2,rep,name=shared_secrets,json=sharedSecrets,proto3" json:"shared_secrets,omitempty"`
}

func (x *CreateonionResponse) Reset() {
	*x = CreateonionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[57]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateonionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateonionResponse) ProtoMessage() {}

func (x *CreateonionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[57]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateonionResponse.ProtoReflect.Descriptor instead.
func (*CreateonionResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{57}
}

func (x *CreateonionResponse) GetOnion() []byte {
	if x != nil {
		return x.Onion
	}
	return nil
}

func (x *CreateonionResponse) GetSharedSecrets() [][]byte {
	if x != nil {
		return x.SharedSecrets
	}
	return nil
}

type CreateonionHops struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Pubkey  []byte `protobuf:"bytes,1,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
	Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
}

func (x *CreateonionHops) Reset() {
	*x = CreateonionHops{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[58]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateonionHops) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateonionHops) ProtoMessage() {}

func (x *CreateonionHops) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[58]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateonionHops.ProtoReflect.Descriptor instead.
func (*CreateonionHops) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{58}
}

func (x *CreateonionHops) GetPubkey() []byte {
	if x != nil {
		return x.Pubkey
	}
	return nil
}

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

type DeldatastoreRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Generation *uint64  `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
	Key        []string `protobuf:"bytes,3,rep,name=key,proto3" json:"key,omitempty"`
}

func (x *DeldatastoreRequest) Reset() {
	*x = DeldatastoreRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[59]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeldatastoreRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeldatastoreRequest) ProtoMessage() {}

func (x *DeldatastoreRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[59]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeldatastoreRequest.ProtoReflect.Descriptor instead.
func (*DeldatastoreRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{59}
}

func (x *DeldatastoreRequest) GetGeneration() uint64 {
	if x != nil && x.Generation != nil {
		return *x.Generation
	}
	return 0
}

func (x *DeldatastoreRequest) GetKey() []string {
	if x != nil {
		return x.Key
	}
	return nil
}

type DeldatastoreResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Generation *uint64  `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
	Hex        []byte   `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
	String_    *string  `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
	Key        []string `protobuf:"bytes,5,rep,name=key,proto3" json:"key,omitempty"`
}

func (x *DeldatastoreResponse) Reset() {
	*x = DeldatastoreResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[60]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DeldatastoreResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeldatastoreResponse) ProtoMessage() {}

func (x *DeldatastoreResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[60]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeldatastoreResponse.ProtoReflect.Descriptor instead.
func (*DeldatastoreResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{60}
}

func (x *DeldatastoreResponse) GetGeneration() uint64 {
	if x != nil && x.Generation != nil {
		return *x.Generation
	}
	return 0
}

func (x *DeldatastoreResponse) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

func (x *DeldatastoreResponse) GetString_() string {
	if x != nil && x.String_ != nil {
		return *x.String_
	}
	return ""
}

func (x *DeldatastoreResponse) GetKey() []string {
	if x != nil {
		return x.Key
	}
	return nil
}

type DelinvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label    string                             `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
	Status   DelinvoiceRequest_DelinvoiceStatus `protobuf:"varint,2,opt,name=status,proto3,enum=cln.DelinvoiceRequest_DelinvoiceStatus" json:"status,omitempty"`
	Desconly *bool                              `protobuf:"varint,3,opt,name=desconly,proto3,oneof" json:"desconly,omitempty"`
}

func (x *DelinvoiceRequest) Reset() {
	*x = DelinvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[61]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DelinvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DelinvoiceRequest) ProtoMessage() {}

func (x *DelinvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[61]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DelinvoiceRequest.ProtoReflect.Descriptor instead.
func (*DelinvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{61}
}

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

func (x *DelinvoiceRequest) GetStatus() DelinvoiceRequest_DelinvoiceStatus {
	if x != nil {
		return x.Status
	}
	return DelinvoiceRequest_PAID
}

func (x *DelinvoiceRequest) GetDesconly() bool {
	if x != nil && x.Desconly != nil {
		return *x.Desconly
	}
	return false
}

type DelinvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label              string                              `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
	Bolt11             *string                             `protobuf:"bytes,2,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12             *string                             `protobuf:"bytes,3,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	AmountMsat         *Amount                             `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Description        *string                             `protobuf:"bytes,5,opt,name=description,proto3,oneof" json:"description,omitempty"`
	PaymentHash        []byte                              `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status             DelinvoiceResponse_DelinvoiceStatus `protobuf:"varint,7,opt,name=status,proto3,enum=cln.DelinvoiceResponse_DelinvoiceStatus" json:"status,omitempty"`
	ExpiresAt          uint64                              `protobuf:"varint,8,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	LocalOfferId       []byte                              `protobuf:"bytes,9,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
	InvreqPayerNote    *string                             `protobuf:"bytes,11,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
	CreatedIndex       *uint64                             `protobuf:"varint,12,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex       *uint64                             `protobuf:"varint,13,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
	PayIndex           *uint64                             `protobuf:"varint,14,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
	AmountReceivedMsat *Amount                             `protobuf:"bytes,15,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
	PaidAt             *uint64                             `protobuf:"varint,16,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
	PaymentPreimage    []byte                              `protobuf:"bytes,17,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
}

func (x *DelinvoiceResponse) Reset() {
	*x = DelinvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[62]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DelinvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DelinvoiceResponse) ProtoMessage() {}

func (x *DelinvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[62]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DelinvoiceResponse.ProtoReflect.Descriptor instead.
func (*DelinvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{62}
}

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

func (x *DelinvoiceResponse) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *DelinvoiceResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *DelinvoiceResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *DelinvoiceResponse) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *DelinvoiceResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *DelinvoiceResponse) GetStatus() DelinvoiceResponse_DelinvoiceStatus {
	if x != nil {
		return x.Status
	}
	return DelinvoiceResponse_PAID
}

func (x *DelinvoiceResponse) GetExpiresAt() uint64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *DelinvoiceResponse) GetLocalOfferId() []byte {
	if x != nil {
		return x.LocalOfferId
	}
	return nil
}

func (x *DelinvoiceResponse) GetInvreqPayerNote() string {
	if x != nil && x.InvreqPayerNote != nil {
		return *x.InvreqPayerNote
	}
	return ""
}

func (x *DelinvoiceResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *DelinvoiceResponse) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

func (x *DelinvoiceResponse) GetPayIndex() uint64 {
	if x != nil && x.PayIndex != nil {
		return *x.PayIndex
	}
	return 0
}

func (x *DelinvoiceResponse) GetAmountReceivedMsat() *Amount {
	if x != nil {
		return x.AmountReceivedMsat
	}
	return nil
}

func (x *DelinvoiceResponse) GetPaidAt() uint64 {
	if x != nil && x.PaidAt != nil {
		return *x.PaidAt
	}
	return 0
}

func (x *DelinvoiceResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

type DevforgetchannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id             []byte  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	ShortChannelId *string `protobuf:"bytes,2,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
	ChannelId      []byte  `protobuf:"bytes,3,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
	Force          *bool   `protobuf:"varint,4,opt,name=force,proto3,oneof" json:"force,omitempty"`
}

func (x *DevforgetchannelRequest) Reset() {
	*x = DevforgetchannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[63]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DevforgetchannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DevforgetchannelRequest) ProtoMessage() {}

func (x *DevforgetchannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[63]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DevforgetchannelRequest.ProtoReflect.Descriptor instead.
func (*DevforgetchannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{63}
}

func (x *DevforgetchannelRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *DevforgetchannelRequest) GetShortChannelId() string {
	if x != nil && x.ShortChannelId != nil {
		return *x.ShortChannelId
	}
	return ""
}

func (x *DevforgetchannelRequest) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *DevforgetchannelRequest) GetForce() bool {
	if x != nil && x.Force != nil {
		return *x.Force
	}
	return false
}

type DevforgetchannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Forced         bool   `protobuf:"varint,1,opt,name=forced,proto3" json:"forced,omitempty"`
	FundingUnspent bool   `protobuf:"varint,2,opt,name=funding_unspent,json=fundingUnspent,proto3" json:"funding_unspent,omitempty"`
	FundingTxid    []byte `protobuf:"bytes,3,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
}

func (x *DevforgetchannelResponse) Reset() {
	*x = DevforgetchannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[64]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DevforgetchannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DevforgetchannelResponse) ProtoMessage() {}

func (x *DevforgetchannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[64]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DevforgetchannelResponse.ProtoReflect.Descriptor instead.
func (*DevforgetchannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{64}
}

func (x *DevforgetchannelResponse) GetForced() bool {
	if x != nil {
		return x.Forced
	}
	return false
}

func (x *DevforgetchannelResponse) GetFundingUnspent() bool {
	if x != nil {
		return x.FundingUnspent
	}
	return false
}

func (x *DevforgetchannelResponse) GetFundingTxid() []byte {
	if x != nil {
		return x.FundingTxid
	}
	return nil
}

type EmergencyrecoverRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *EmergencyrecoverRequest) Reset() {
	*x = EmergencyrecoverRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[65]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *EmergencyrecoverRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EmergencyrecoverRequest) ProtoMessage() {}

func (x *EmergencyrecoverRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[65]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EmergencyrecoverRequest.ProtoReflect.Descriptor instead.
func (*EmergencyrecoverRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{65}
}

type EmergencyrecoverResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Stubs [][]byte `protobuf:"bytes,1,rep,name=stubs,proto3" json:"stubs,omitempty"`
}

func (x *EmergencyrecoverResponse) Reset() {
	*x = EmergencyrecoverResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[66]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *EmergencyrecoverResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EmergencyrecoverResponse) ProtoMessage() {}

func (x *EmergencyrecoverResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[66]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EmergencyrecoverResponse.ProtoReflect.Descriptor instead.
func (*EmergencyrecoverResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{66}
}

func (x *EmergencyrecoverResponse) GetStubs() [][]byte {
	if x != nil {
		return x.Stubs
	}
	return nil
}

type GetemergencyrecoverdataRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *GetemergencyrecoverdataRequest) Reset() {
	*x = GetemergencyrecoverdataRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[67]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetemergencyrecoverdataRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetemergencyrecoverdataRequest) ProtoMessage() {}

func (x *GetemergencyrecoverdataRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[67]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetemergencyrecoverdataRequest.ProtoReflect.Descriptor instead.
func (*GetemergencyrecoverdataRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{67}
}

type GetemergencyrecoverdataResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Filedata []byte `protobuf:"bytes,1,opt,name=filedata,proto3" json:"filedata,omitempty"`
}

func (x *GetemergencyrecoverdataResponse) Reset() {
	*x = GetemergencyrecoverdataResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[68]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetemergencyrecoverdataResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetemergencyrecoverdataResponse) ProtoMessage() {}

func (x *GetemergencyrecoverdataResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[68]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetemergencyrecoverdataResponse.ProtoReflect.Descriptor instead.
func (*GetemergencyrecoverdataResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{68}
}

func (x *GetemergencyrecoverdataResponse) GetFiledata() []byte {
	if x != nil {
		return x.Filedata
	}
	return nil
}

type ExposesecretRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Passphrase string  `protobuf:"bytes,1,opt,name=passphrase,proto3" json:"passphrase,omitempty"`
	Identifier *string `protobuf:"bytes,2,opt,name=identifier,proto3,oneof" json:"identifier,omitempty"`
}

func (x *ExposesecretRequest) Reset() {
	*x = ExposesecretRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[69]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExposesecretRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExposesecretRequest) ProtoMessage() {}

func (x *ExposesecretRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[69]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExposesecretRequest.ProtoReflect.Descriptor instead.
func (*ExposesecretRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{69}
}

func (x *ExposesecretRequest) GetPassphrase() string {
	if x != nil {
		return x.Passphrase
	}
	return ""
}

func (x *ExposesecretRequest) GetIdentifier() string {
	if x != nil && x.Identifier != nil {
		return *x.Identifier
	}
	return ""
}

type ExposesecretResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Identifier string `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
	Codex32    string `protobuf:"bytes,2,opt,name=codex32,proto3" json:"codex32,omitempty"`
}

func (x *ExposesecretResponse) Reset() {
	*x = ExposesecretResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[70]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ExposesecretResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ExposesecretResponse) ProtoMessage() {}

func (x *ExposesecretResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[70]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ExposesecretResponse.ProtoReflect.Descriptor instead.
func (*ExposesecretResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{70}
}

func (x *ExposesecretResponse) GetIdentifier() string {
	if x != nil {
		return x.Identifier
	}
	return ""
}

func (x *ExposesecretResponse) GetCodex32() string {
	if x != nil {
		return x.Codex32
	}
	return ""
}

type RecoverRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Hsmsecret string `protobuf:"bytes,1,opt,name=hsmsecret,proto3" json:"hsmsecret,omitempty"`
}

func (x *RecoverRequest) Reset() {
	*x = RecoverRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[71]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RecoverRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RecoverRequest) ProtoMessage() {}

func (x *RecoverRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[71]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RecoverRequest.ProtoReflect.Descriptor instead.
func (*RecoverRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{71}
}

func (x *RecoverRequest) GetHsmsecret() string {
	if x != nil {
		return x.Hsmsecret
	}
	return ""
}

type RecoverResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Result *RecoverResponse_RecoverResult `protobuf:"varint,1,opt,name=result,proto3,enum=cln.RecoverResponse_RecoverResult,oneof" json:"result,omitempty"`
}

func (x *RecoverResponse) Reset() {
	*x = RecoverResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[72]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RecoverResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RecoverResponse) ProtoMessage() {}

func (x *RecoverResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[72]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RecoverResponse.ProtoReflect.Descriptor instead.
func (*RecoverResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{72}
}

func (x *RecoverResponse) GetResult() RecoverResponse_RecoverResult {
	if x != nil && x.Result != nil {
		return *x.Result
	}
	return RecoverResponse_RECOVERY_RESTART_IN_PROGRESS
}

type RecoverchannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Scb [][]byte `protobuf:"bytes,1,rep,name=scb,proto3" json:"scb,omitempty"`
}

func (x *RecoverchannelRequest) Reset() {
	*x = RecoverchannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[73]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RecoverchannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RecoverchannelRequest) ProtoMessage() {}

func (x *RecoverchannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[73]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RecoverchannelRequest.ProtoReflect.Descriptor instead.
func (*RecoverchannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{73}
}

func (x *RecoverchannelRequest) GetScb() [][]byte {
	if x != nil {
		return x.Scb
	}
	return nil
}

type RecoverchannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Stubs []string `protobuf:"bytes,1,rep,name=stubs,proto3" json:"stubs,omitempty"`
}

func (x *RecoverchannelResponse) Reset() {
	*x = RecoverchannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[74]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RecoverchannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RecoverchannelResponse) ProtoMessage() {}

func (x *RecoverchannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[74]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RecoverchannelResponse.ProtoReflect.Descriptor instead.
func (*RecoverchannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{74}
}

func (x *RecoverchannelResponse) GetStubs() []string {
	if x != nil {
		return x.Stubs
	}
	return nil
}

type InvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Description           string       `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	Label                 string       `protobuf:"bytes,3,opt,name=label,proto3" json:"label,omitempty"`
	Fallbacks             []string     `protobuf:"bytes,4,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
	Preimage              []byte       `protobuf:"bytes,5,opt,name=preimage,proto3,oneof" json:"preimage,omitempty"`
	Cltv                  *uint32      `protobuf:"varint,6,opt,name=cltv,proto3,oneof" json:"cltv,omitempty"`
	Expiry                *uint64      `protobuf:"varint,7,opt,name=expiry,proto3,oneof" json:"expiry,omitempty"`
	Exposeprivatechannels []string     `protobuf:"bytes,8,rep,name=exposeprivatechannels,proto3" json:"exposeprivatechannels,omitempty"`
	Deschashonly          *bool        `protobuf:"varint,9,opt,name=deschashonly,proto3,oneof" json:"deschashonly,omitempty"`
	AmountMsat            *AmountOrAny `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}

func (x *InvoiceRequest) Reset() {
	*x = InvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[75]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InvoiceRequest) ProtoMessage() {}

func (x *InvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[75]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InvoiceRequest.ProtoReflect.Descriptor instead.
func (*InvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{75}
}

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

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

func (x *InvoiceRequest) GetFallbacks() []string {
	if x != nil {
		return x.Fallbacks
	}
	return nil
}

func (x *InvoiceRequest) GetPreimage() []byte {
	if x != nil {
		return x.Preimage
	}
	return nil
}

func (x *InvoiceRequest) GetCltv() uint32 {
	if x != nil && x.Cltv != nil {
		return *x.Cltv
	}
	return 0
}

func (x *InvoiceRequest) GetExpiry() uint64 {
	if x != nil && x.Expiry != nil {
		return *x.Expiry
	}
	return 0
}

func (x *InvoiceRequest) GetExposeprivatechannels() []string {
	if x != nil {
		return x.Exposeprivatechannels
	}
	return nil
}

func (x *InvoiceRequest) GetDeschashonly() bool {
	if x != nil && x.Deschashonly != nil {
		return *x.Deschashonly
	}
	return false
}

func (x *InvoiceRequest) GetAmountMsat() *AmountOrAny {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

type InvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bolt11               string  `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
	PaymentHash          []byte  `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	PaymentSecret        []byte  `protobuf:"bytes,3,opt,name=payment_secret,json=paymentSecret,proto3" json:"payment_secret,omitempty"`
	ExpiresAt            uint64  `protobuf:"varint,4,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	WarningCapacity      *string `protobuf:"bytes,5,opt,name=warning_capacity,json=warningCapacity,proto3,oneof" json:"warning_capacity,omitempty"`
	WarningOffline       *string `protobuf:"bytes,6,opt,name=warning_offline,json=warningOffline,proto3,oneof" json:"warning_offline,omitempty"`
	WarningDeadends      *string `protobuf:"bytes,7,opt,name=warning_deadends,json=warningDeadends,proto3,oneof" json:"warning_deadends,omitempty"`
	WarningPrivateUnused *string `protobuf:"bytes,8,opt,name=warning_private_unused,json=warningPrivateUnused,proto3,oneof" json:"warning_private_unused,omitempty"`
	WarningMpp           *string `protobuf:"bytes,9,opt,name=warning_mpp,json=warningMpp,proto3,oneof" json:"warning_mpp,omitempty"`
	CreatedIndex         *uint64 `protobuf:"varint,10,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
}

func (x *InvoiceResponse) Reset() {
	*x = InvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[76]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InvoiceResponse) ProtoMessage() {}

func (x *InvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[76]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InvoiceResponse.ProtoReflect.Descriptor instead.
func (*InvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{76}
}

func (x *InvoiceResponse) GetBolt11() string {
	if x != nil {
		return x.Bolt11
	}
	return ""
}

func (x *InvoiceResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *InvoiceResponse) GetPaymentSecret() []byte {
	if x != nil {
		return x.PaymentSecret
	}
	return nil
}

func (x *InvoiceResponse) GetExpiresAt() uint64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *InvoiceResponse) GetWarningCapacity() string {
	if x != nil && x.WarningCapacity != nil {
		return *x.WarningCapacity
	}
	return ""
}

func (x *InvoiceResponse) GetWarningOffline() string {
	if x != nil && x.WarningOffline != nil {
		return *x.WarningOffline
	}
	return ""
}

func (x *InvoiceResponse) GetWarningDeadends() string {
	if x != nil && x.WarningDeadends != nil {
		return *x.WarningDeadends
	}
	return ""
}

func (x *InvoiceResponse) GetWarningPrivateUnused() string {
	if x != nil && x.WarningPrivateUnused != nil {
		return *x.WarningPrivateUnused
	}
	return ""
}

func (x *InvoiceResponse) GetWarningMpp() string {
	if x != nil && x.WarningMpp != nil {
		return *x.WarningMpp
	}
	return ""
}

func (x *InvoiceResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

type InvoicerequestRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Amount         *Amount `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
	Description    string  `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	Issuer         *string `protobuf:"bytes,3,opt,name=issuer,proto3,oneof" json:"issuer,omitempty"`
	Label          *string `protobuf:"bytes,4,opt,name=label,proto3,oneof" json:"label,omitempty"`
	AbsoluteExpiry *uint64 `protobuf:"varint,5,opt,name=absolute_expiry,json=absoluteExpiry,proto3,oneof" json:"absolute_expiry,omitempty"`
	SingleUse      *bool   `protobuf:"varint,6,opt,name=single_use,json=singleUse,proto3,oneof" json:"single_use,omitempty"`
}

func (x *InvoicerequestRequest) Reset() {
	*x = InvoicerequestRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[77]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InvoicerequestRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InvoicerequestRequest) ProtoMessage() {}

func (x *InvoicerequestRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[77]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InvoicerequestRequest.ProtoReflect.Descriptor instead.
func (*InvoicerequestRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{77}
}

func (x *InvoicerequestRequest) GetAmount() *Amount {
	if x != nil {
		return x.Amount
	}
	return nil
}

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

func (x *InvoicerequestRequest) GetIssuer() string {
	if x != nil && x.Issuer != nil {
		return *x.Issuer
	}
	return ""
}

func (x *InvoicerequestRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *InvoicerequestRequest) GetAbsoluteExpiry() uint64 {
	if x != nil && x.AbsoluteExpiry != nil {
		return *x.AbsoluteExpiry
	}
	return 0
}

func (x *InvoicerequestRequest) GetSingleUse() bool {
	if x != nil && x.SingleUse != nil {
		return *x.SingleUse
	}
	return false
}

type InvoicerequestResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InvreqId  []byte  `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3" json:"invreq_id,omitempty"`
	Active    bool    `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
	SingleUse bool    `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	Bolt12    string  `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
	Used      bool    `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
	Label     *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}

func (x *InvoicerequestResponse) Reset() {
	*x = InvoicerequestResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[78]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InvoicerequestResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InvoicerequestResponse) ProtoMessage() {}

func (x *InvoicerequestResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[78]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InvoicerequestResponse.ProtoReflect.Descriptor instead.
func (*InvoicerequestResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{78}
}

func (x *InvoicerequestResponse) GetInvreqId() []byte {
	if x != nil {
		return x.InvreqId
	}
	return nil
}

func (x *InvoicerequestResponse) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *InvoicerequestResponse) GetSingleUse() bool {
	if x != nil {
		return x.SingleUse
	}
	return false
}

func (x *InvoicerequestResponse) GetBolt12() string {
	if x != nil {
		return x.Bolt12
	}
	return ""
}

func (x *InvoicerequestResponse) GetUsed() bool {
	if x != nil {
		return x.Used
	}
	return false
}

func (x *InvoicerequestResponse) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

type DisableinvoicerequestRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InvreqId string `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3" json:"invreq_id,omitempty"`
}

func (x *DisableinvoicerequestRequest) Reset() {
	*x = DisableinvoicerequestRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[79]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DisableinvoicerequestRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DisableinvoicerequestRequest) ProtoMessage() {}

func (x *DisableinvoicerequestRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[79]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DisableinvoicerequestRequest.ProtoReflect.Descriptor instead.
func (*DisableinvoicerequestRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{79}
}

func (x *DisableinvoicerequestRequest) GetInvreqId() string {
	if x != nil {
		return x.InvreqId
	}
	return ""
}

type DisableinvoicerequestResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InvreqId  []byte  `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3" json:"invreq_id,omitempty"`
	Active    bool    `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
	SingleUse bool    `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	Bolt12    string  `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
	Used      bool    `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
	Label     *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}

func (x *DisableinvoicerequestResponse) Reset() {
	*x = DisableinvoicerequestResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[80]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DisableinvoicerequestResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DisableinvoicerequestResponse) ProtoMessage() {}

func (x *DisableinvoicerequestResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[80]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DisableinvoicerequestResponse.ProtoReflect.Descriptor instead.
func (*DisableinvoicerequestResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{80}
}

func (x *DisableinvoicerequestResponse) GetInvreqId() []byte {
	if x != nil {
		return x.InvreqId
	}
	return nil
}

func (x *DisableinvoicerequestResponse) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *DisableinvoicerequestResponse) GetSingleUse() bool {
	if x != nil {
		return x.SingleUse
	}
	return false
}

func (x *DisableinvoicerequestResponse) GetBolt12() string {
	if x != nil {
		return x.Bolt12
	}
	return ""
}

func (x *DisableinvoicerequestResponse) GetUsed() bool {
	if x != nil {
		return x.Used
	}
	return false
}

func (x *DisableinvoicerequestResponse) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

type ListinvoicerequestsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InvreqId   *string `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3,oneof" json:"invreq_id,omitempty"`
	ActiveOnly *bool   `protobuf:"varint,2,opt,name=active_only,json=activeOnly,proto3,oneof" json:"active_only,omitempty"`
}

func (x *ListinvoicerequestsRequest) Reset() {
	*x = ListinvoicerequestsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[81]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListinvoicerequestsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListinvoicerequestsRequest) ProtoMessage() {}

func (x *ListinvoicerequestsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[81]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListinvoicerequestsRequest.ProtoReflect.Descriptor instead.
func (*ListinvoicerequestsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{81}
}

func (x *ListinvoicerequestsRequest) GetInvreqId() string {
	if x != nil && x.InvreqId != nil {
		return *x.InvreqId
	}
	return ""
}

func (x *ListinvoicerequestsRequest) GetActiveOnly() bool {
	if x != nil && x.ActiveOnly != nil {
		return *x.ActiveOnly
	}
	return false
}

type ListinvoicerequestsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invoicerequests []*ListinvoicerequestsInvoicerequests `protobuf:"bytes,1,rep,name=invoicerequests,proto3" json:"invoicerequests,omitempty"`
}

func (x *ListinvoicerequestsResponse) Reset() {
	*x = ListinvoicerequestsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[82]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListinvoicerequestsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListinvoicerequestsResponse) ProtoMessage() {}

func (x *ListinvoicerequestsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[82]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListinvoicerequestsResponse.ProtoReflect.Descriptor instead.
func (*ListinvoicerequestsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{82}
}

func (x *ListinvoicerequestsResponse) GetInvoicerequests() []*ListinvoicerequestsInvoicerequests {
	if x != nil {
		return x.Invoicerequests
	}
	return nil
}

type ListinvoicerequestsInvoicerequests struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InvreqId  []byte  `protobuf:"bytes,1,opt,name=invreq_id,json=invreqId,proto3" json:"invreq_id,omitempty"`
	Active    bool    `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
	SingleUse bool    `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	Bolt12    string  `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
	Used      bool    `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
	Label     *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}

func (x *ListinvoicerequestsInvoicerequests) Reset() {
	*x = ListinvoicerequestsInvoicerequests{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[83]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListinvoicerequestsInvoicerequests) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListinvoicerequestsInvoicerequests) ProtoMessage() {}

func (x *ListinvoicerequestsInvoicerequests) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[83]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListinvoicerequestsInvoicerequests.ProtoReflect.Descriptor instead.
func (*ListinvoicerequestsInvoicerequests) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{83}
}

func (x *ListinvoicerequestsInvoicerequests) GetInvreqId() []byte {
	if x != nil {
		return x.InvreqId
	}
	return nil
}

func (x *ListinvoicerequestsInvoicerequests) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *ListinvoicerequestsInvoicerequests) GetSingleUse() bool {
	if x != nil {
		return x.SingleUse
	}
	return false
}

func (x *ListinvoicerequestsInvoicerequests) GetBolt12() string {
	if x != nil {
		return x.Bolt12
	}
	return ""
}

func (x *ListinvoicerequestsInvoicerequests) GetUsed() bool {
	if x != nil {
		return x.Used
	}
	return false
}

func (x *ListinvoicerequestsInvoicerequests) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

type ListdatastoreRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key []string `protobuf:"bytes,2,rep,name=key,proto3" json:"key,omitempty"`
}

func (x *ListdatastoreRequest) Reset() {
	*x = ListdatastoreRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[84]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListdatastoreRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListdatastoreRequest) ProtoMessage() {}

func (x *ListdatastoreRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[84]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListdatastoreRequest.ProtoReflect.Descriptor instead.
func (*ListdatastoreRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{84}
}

func (x *ListdatastoreRequest) GetKey() []string {
	if x != nil {
		return x.Key
	}
	return nil
}

type ListdatastoreResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Datastore []*ListdatastoreDatastore `protobuf:"bytes,1,rep,name=datastore,proto3" json:"datastore,omitempty"`
}

func (x *ListdatastoreResponse) Reset() {
	*x = ListdatastoreResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[85]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListdatastoreResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListdatastoreResponse) ProtoMessage() {}

func (x *ListdatastoreResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[85]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListdatastoreResponse.ProtoReflect.Descriptor instead.
func (*ListdatastoreResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{85}
}

func (x *ListdatastoreResponse) GetDatastore() []*ListdatastoreDatastore {
	if x != nil {
		return x.Datastore
	}
	return nil
}

type ListdatastoreDatastore struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key        []string `protobuf:"bytes,1,rep,name=key,proto3" json:"key,omitempty"`
	Generation *uint64  `protobuf:"varint,2,opt,name=generation,proto3,oneof" json:"generation,omitempty"`
	Hex        []byte   `protobuf:"bytes,3,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
	String_    *string  `protobuf:"bytes,4,opt,name=string,proto3,oneof" json:"string,omitempty"`
}

func (x *ListdatastoreDatastore) Reset() {
	*x = ListdatastoreDatastore{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[86]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListdatastoreDatastore) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListdatastoreDatastore) ProtoMessage() {}

func (x *ListdatastoreDatastore) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[86]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListdatastoreDatastore.ProtoReflect.Descriptor instead.
func (*ListdatastoreDatastore) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{86}
}

func (x *ListdatastoreDatastore) GetKey() []string {
	if x != nil {
		return x.Key
	}
	return nil
}

func (x *ListdatastoreDatastore) GetGeneration() uint64 {
	if x != nil && x.Generation != nil {
		return *x.Generation
	}
	return 0
}

func (x *ListdatastoreDatastore) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

func (x *ListdatastoreDatastore) GetString_() string {
	if x != nil && x.String_ != nil {
		return *x.String_
	}
	return ""
}

type ListinvoicesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label       *string                                `protobuf:"bytes,1,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Invstring   *string                                `protobuf:"bytes,2,opt,name=invstring,proto3,oneof" json:"invstring,omitempty"`
	PaymentHash []byte                                 `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
	OfferId     *string                                `protobuf:"bytes,4,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
	Index       *ListinvoicesRequest_ListinvoicesIndex `protobuf:"varint,5,opt,name=index,proto3,enum=cln.ListinvoicesRequest_ListinvoicesIndex,oneof" json:"index,omitempty"`
	Start       *uint64                                `protobuf:"varint,6,opt,name=start,proto3,oneof" json:"start,omitempty"`
	Limit       *uint32                                `protobuf:"varint,7,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
}

func (x *ListinvoicesRequest) Reset() {
	*x = ListinvoicesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[87]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListinvoicesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListinvoicesRequest) ProtoMessage() {}

func (x *ListinvoicesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[87]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListinvoicesRequest.ProtoReflect.Descriptor instead.
func (*ListinvoicesRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{87}
}

func (x *ListinvoicesRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *ListinvoicesRequest) GetInvstring() string {
	if x != nil && x.Invstring != nil {
		return *x.Invstring
	}
	return ""
}

func (x *ListinvoicesRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *ListinvoicesRequest) GetOfferId() string {
	if x != nil && x.OfferId != nil {
		return *x.OfferId
	}
	return ""
}

func (x *ListinvoicesRequest) GetIndex() ListinvoicesRequest_ListinvoicesIndex {
	if x != nil && x.Index != nil {
		return *x.Index
	}
	return ListinvoicesRequest_CREATED
}

func (x *ListinvoicesRequest) GetStart() uint64 {
	if x != nil && x.Start != nil {
		return *x.Start
	}
	return 0
}

func (x *ListinvoicesRequest) GetLimit() uint32 {
	if x != nil && x.Limit != nil {
		return *x.Limit
	}
	return 0
}

type ListinvoicesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invoices []*ListinvoicesInvoices `protobuf:"bytes,1,rep,name=invoices,proto3" json:"invoices,omitempty"`
}

func (x *ListinvoicesResponse) Reset() {
	*x = ListinvoicesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[88]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListinvoicesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListinvoicesResponse) ProtoMessage() {}

func (x *ListinvoicesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[88]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListinvoicesResponse.ProtoReflect.Descriptor instead.
func (*ListinvoicesResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{88}
}

func (x *ListinvoicesResponse) GetInvoices() []*ListinvoicesInvoices {
	if x != nil {
		return x.Invoices
	}
	return nil
}

type ListinvoicesInvoices struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label              string                                          `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
	Description        *string                                         `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
	PaymentHash        []byte                                          `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status             ListinvoicesInvoices_ListinvoicesInvoicesStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.ListinvoicesInvoices_ListinvoicesInvoicesStatus" json:"status,omitempty"`
	ExpiresAt          uint64                                          `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	AmountMsat         *Amount                                         `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Bolt11             *string                                         `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12             *string                                         `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	LocalOfferId       []byte                                          `protobuf:"bytes,9,opt,name=local_offer_id,json=localOfferId,proto3,oneof" json:"local_offer_id,omitempty"`
	PayIndex           *uint64                                         `protobuf:"varint,11,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
	AmountReceivedMsat *Amount                                         `protobuf:"bytes,12,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
	PaidAt             *uint64                                         `protobuf:"varint,13,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
	PaymentPreimage    []byte                                          `protobuf:"bytes,14,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	InvreqPayerNote    *string                                         `protobuf:"bytes,15,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
	CreatedIndex       *uint64                                         `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex       *uint64                                         `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
	PaidOutpoint       *ListinvoicesInvoicesPaidOutpoint               `protobuf:"bytes,18,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
}

func (x *ListinvoicesInvoices) Reset() {
	*x = ListinvoicesInvoices{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[89]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListinvoicesInvoices) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListinvoicesInvoices) ProtoMessage() {}

func (x *ListinvoicesInvoices) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[89]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListinvoicesInvoices.ProtoReflect.Descriptor instead.
func (*ListinvoicesInvoices) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{89}
}

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

func (x *ListinvoicesInvoices) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *ListinvoicesInvoices) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *ListinvoicesInvoices) GetStatus() ListinvoicesInvoices_ListinvoicesInvoicesStatus {
	if x != nil {
		return x.Status
	}
	return ListinvoicesInvoices_UNPAID
}

func (x *ListinvoicesInvoices) GetExpiresAt() uint64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *ListinvoicesInvoices) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *ListinvoicesInvoices) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *ListinvoicesInvoices) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *ListinvoicesInvoices) GetLocalOfferId() []byte {
	if x != nil {
		return x.LocalOfferId
	}
	return nil
}

func (x *ListinvoicesInvoices) GetPayIndex() uint64 {
	if x != nil && x.PayIndex != nil {
		return *x.PayIndex
	}
	return 0
}

func (x *ListinvoicesInvoices) GetAmountReceivedMsat() *Amount {
	if x != nil {
		return x.AmountReceivedMsat
	}
	return nil
}

func (x *ListinvoicesInvoices) GetPaidAt() uint64 {
	if x != nil && x.PaidAt != nil {
		return *x.PaidAt
	}
	return 0
}

func (x *ListinvoicesInvoices) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *ListinvoicesInvoices) GetInvreqPayerNote() string {
	if x != nil && x.InvreqPayerNote != nil {
		return *x.InvreqPayerNote
	}
	return ""
}

func (x *ListinvoicesInvoices) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *ListinvoicesInvoices) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

func (x *ListinvoicesInvoices) GetPaidOutpoint() *ListinvoicesInvoicesPaidOutpoint {
	if x != nil {
		return x.PaidOutpoint
	}
	return nil
}

type ListinvoicesInvoicesPaidOutpoint struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid   []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
}

func (x *ListinvoicesInvoicesPaidOutpoint) Reset() {
	*x = ListinvoicesInvoicesPaidOutpoint{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[90]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListinvoicesInvoicesPaidOutpoint) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListinvoicesInvoicesPaidOutpoint) ProtoMessage() {}

func (x *ListinvoicesInvoicesPaidOutpoint) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[90]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListinvoicesInvoicesPaidOutpoint.ProtoReflect.Descriptor instead.
func (*ListinvoicesInvoicesPaidOutpoint) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{90}
}

func (x *ListinvoicesInvoicesPaidOutpoint) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *ListinvoicesInvoicesPaidOutpoint) GetOutnum() uint32 {
	if x != nil {
		return x.Outnum
	}
	return 0
}

type SendonionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Onion         []byte             `protobuf:"bytes,1,opt,name=onion,proto3" json:"onion,omitempty"`
	FirstHop      *SendonionFirstHop `protobuf:"bytes,2,opt,name=first_hop,json=firstHop,proto3" json:"first_hop,omitempty"`
	PaymentHash   []byte             `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Label         *string            `protobuf:"bytes,4,opt,name=label,proto3,oneof" json:"label,omitempty"`
	SharedSecrets [][]byte           `protobuf:"bytes,5,rep,name=shared_secrets,json=sharedSecrets,proto3" json:"shared_secrets,omitempty"`
	Partid        *uint32            `protobuf:"varint,6,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	Bolt11        *string            `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Destination   []byte             `protobuf:"bytes,9,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	Groupid       *uint64            `protobuf:"varint,11,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
	AmountMsat    *Amount            `protobuf:"bytes,12,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Localinvreqid []byte             `protobuf:"bytes,13,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
	Description   *string            `protobuf:"bytes,14,opt,name=description,proto3,oneof" json:"description,omitempty"`
}

func (x *SendonionRequest) Reset() {
	*x = SendonionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[91]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendonionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendonionRequest) ProtoMessage() {}

func (x *SendonionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[91]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendonionRequest.ProtoReflect.Descriptor instead.
func (*SendonionRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{91}
}

func (x *SendonionRequest) GetOnion() []byte {
	if x != nil {
		return x.Onion
	}
	return nil
}

func (x *SendonionRequest) GetFirstHop() *SendonionFirstHop {
	if x != nil {
		return x.FirstHop
	}
	return nil
}

func (x *SendonionRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *SendonionRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *SendonionRequest) GetSharedSecrets() [][]byte {
	if x != nil {
		return x.SharedSecrets
	}
	return nil
}

func (x *SendonionRequest) GetPartid() uint32 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *SendonionRequest) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *SendonionRequest) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *SendonionRequest) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

func (x *SendonionRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *SendonionRequest) GetLocalinvreqid() []byte {
	if x != nil {
		return x.Localinvreqid
	}
	return nil
}

func (x *SendonionRequest) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

type SendonionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id              uint64                            `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	PaymentHash     []byte                            `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status          SendonionResponse_SendonionStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.SendonionResponse_SendonionStatus" json:"status,omitempty"`
	AmountMsat      *Amount                           `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Destination     []byte                            `protobuf:"bytes,5,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	CreatedAt       uint64                            `protobuf:"varint,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	AmountSentMsat  *Amount                           `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
	Label           *string                           `protobuf:"bytes,8,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Bolt11          *string                           `protobuf:"bytes,9,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12          *string                           `protobuf:"bytes,10,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	PaymentPreimage []byte                            `protobuf:"bytes,11,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	Message         *string                           `protobuf:"bytes,12,opt,name=message,proto3,oneof" json:"message,omitempty"`
	Partid          *uint64                           `protobuf:"varint,13,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	CreatedIndex    *uint64                           `protobuf:"varint,14,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex    *uint64                           `protobuf:"varint,15,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
}

func (x *SendonionResponse) Reset() {
	*x = SendonionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[92]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendonionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendonionResponse) ProtoMessage() {}

func (x *SendonionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[92]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendonionResponse.ProtoReflect.Descriptor instead.
func (*SendonionResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{92}
}

func (x *SendonionResponse) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *SendonionResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *SendonionResponse) GetStatus() SendonionResponse_SendonionStatus {
	if x != nil {
		return x.Status
	}
	return SendonionResponse_PENDING
}

func (x *SendonionResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *SendonionResponse) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *SendonionResponse) GetCreatedAt() uint64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *SendonionResponse) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *SendonionResponse) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *SendonionResponse) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *SendonionResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *SendonionResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *SendonionResponse) GetMessage() string {
	if x != nil && x.Message != nil {
		return *x.Message
	}
	return ""
}

func (x *SendonionResponse) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *SendonionResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *SendonionResponse) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

type SendonionFirstHop struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id         []byte  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	AmountMsat *Amount `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	Delay      uint32  `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
}

func (x *SendonionFirstHop) Reset() {
	*x = SendonionFirstHop{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[93]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendonionFirstHop) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendonionFirstHop) ProtoMessage() {}

func (x *SendonionFirstHop) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[93]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendonionFirstHop.ProtoReflect.Descriptor instead.
func (*SendonionFirstHop) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{93}
}

func (x *SendonionFirstHop) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *SendonionFirstHop) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *SendonionFirstHop) GetDelay() uint32 {
	if x != nil {
		return x.Delay
	}
	return 0
}

type ListsendpaysRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bolt11      *string                                 `protobuf:"bytes,1,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	PaymentHash []byte                                  `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
	Status      *ListsendpaysRequest_ListsendpaysStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListsendpaysRequest_ListsendpaysStatus,oneof" json:"status,omitempty"`
	Index       *ListsendpaysRequest_ListsendpaysIndex  `protobuf:"varint,4,opt,name=index,proto3,enum=cln.ListsendpaysRequest_ListsendpaysIndex,oneof" json:"index,omitempty"`
	Start       *uint64                                 `protobuf:"varint,5,opt,name=start,proto3,oneof" json:"start,omitempty"`
	Limit       *uint32                                 `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
}

func (x *ListsendpaysRequest) Reset() {
	*x = ListsendpaysRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[94]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListsendpaysRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListsendpaysRequest) ProtoMessage() {}

func (x *ListsendpaysRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[94]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListsendpaysRequest.ProtoReflect.Descriptor instead.
func (*ListsendpaysRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{94}
}

func (x *ListsendpaysRequest) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *ListsendpaysRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *ListsendpaysRequest) GetStatus() ListsendpaysRequest_ListsendpaysStatus {
	if x != nil && x.Status != nil {
		return *x.Status
	}
	return ListsendpaysRequest_PENDING
}

func (x *ListsendpaysRequest) GetIndex() ListsendpaysRequest_ListsendpaysIndex {
	if x != nil && x.Index != nil {
		return *x.Index
	}
	return ListsendpaysRequest_CREATED
}

func (x *ListsendpaysRequest) GetStart() uint64 {
	if x != nil && x.Start != nil {
		return *x.Start
	}
	return 0
}

func (x *ListsendpaysRequest) GetLimit() uint32 {
	if x != nil && x.Limit != nil {
		return *x.Limit
	}
	return 0
}

type ListsendpaysResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Payments []*ListsendpaysPayments `protobuf:"bytes,1,rep,name=payments,proto3" json:"payments,omitempty"`
}

func (x *ListsendpaysResponse) Reset() {
	*x = ListsendpaysResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[95]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListsendpaysResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListsendpaysResponse) ProtoMessage() {}

func (x *ListsendpaysResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[95]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListsendpaysResponse.ProtoReflect.Descriptor instead.
func (*ListsendpaysResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{95}
}

func (x *ListsendpaysResponse) GetPayments() []*ListsendpaysPayments {
	if x != nil {
		return x.Payments
	}
	return nil
}

type ListsendpaysPayments struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id              uint64                                          `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Groupid         uint64                                          `protobuf:"varint,2,opt,name=groupid,proto3" json:"groupid,omitempty"`
	PaymentHash     []byte                                          `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status          ListsendpaysPayments_ListsendpaysPaymentsStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.ListsendpaysPayments_ListsendpaysPaymentsStatus" json:"status,omitempty"`
	AmountMsat      *Amount                                         `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Destination     []byte                                          `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	CreatedAt       uint64                                          `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	AmountSentMsat  *Amount                                         `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
	Label           *string                                         `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Bolt11          *string                                         `protobuf:"bytes,10,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12          *string                                         `protobuf:"bytes,11,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	PaymentPreimage []byte                                          `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	Erroronion      []byte                                          `protobuf:"bytes,13,opt,name=erroronion,proto3,oneof" json:"erroronion,omitempty"`
	Description     *string                                         `protobuf:"bytes,14,opt,name=description,proto3,oneof" json:"description,omitempty"`
	Partid          *uint64                                         `protobuf:"varint,15,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	CreatedIndex    *uint64                                         `protobuf:"varint,16,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex    *uint64                                         `protobuf:"varint,17,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
	CompletedAt     *uint64                                         `protobuf:"varint,18,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
}

func (x *ListsendpaysPayments) Reset() {
	*x = ListsendpaysPayments{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[96]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListsendpaysPayments) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListsendpaysPayments) ProtoMessage() {}

func (x *ListsendpaysPayments) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[96]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListsendpaysPayments.ProtoReflect.Descriptor instead.
func (*ListsendpaysPayments) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{96}
}

func (x *ListsendpaysPayments) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *ListsendpaysPayments) GetGroupid() uint64 {
	if x != nil {
		return x.Groupid
	}
	return 0
}

func (x *ListsendpaysPayments) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *ListsendpaysPayments) GetStatus() ListsendpaysPayments_ListsendpaysPaymentsStatus {
	if x != nil {
		return x.Status
	}
	return ListsendpaysPayments_PENDING
}

func (x *ListsendpaysPayments) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *ListsendpaysPayments) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *ListsendpaysPayments) GetCreatedAt() uint64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListsendpaysPayments) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *ListsendpaysPayments) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *ListsendpaysPayments) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *ListsendpaysPayments) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *ListsendpaysPayments) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *ListsendpaysPayments) GetErroronion() []byte {
	if x != nil {
		return x.Erroronion
	}
	return nil
}

func (x *ListsendpaysPayments) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *ListsendpaysPayments) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *ListsendpaysPayments) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *ListsendpaysPayments) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

func (x *ListsendpaysPayments) GetCompletedAt() uint64 {
	if x != nil && x.CompletedAt != nil {
		return *x.CompletedAt
	}
	return 0
}

type ListtransactionsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ListtransactionsRequest) Reset() {
	*x = ListtransactionsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[97]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListtransactionsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListtransactionsRequest) ProtoMessage() {}

func (x *ListtransactionsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[97]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListtransactionsRequest.ProtoReflect.Descriptor instead.
func (*ListtransactionsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{97}
}

type ListtransactionsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Transactions []*ListtransactionsTransactions `protobuf:"bytes,1,rep,name=transactions,proto3" json:"transactions,omitempty"`
}

func (x *ListtransactionsResponse) Reset() {
	*x = ListtransactionsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[98]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListtransactionsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListtransactionsResponse) ProtoMessage() {}

func (x *ListtransactionsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[98]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListtransactionsResponse.ProtoReflect.Descriptor instead.
func (*ListtransactionsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{98}
}

func (x *ListtransactionsResponse) GetTransactions() []*ListtransactionsTransactions {
	if x != nil {
		return x.Transactions
	}
	return nil
}

type ListtransactionsTransactions struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Hash        []byte                                 `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
	Rawtx       []byte                                 `protobuf:"bytes,2,opt,name=rawtx,proto3" json:"rawtx,omitempty"`
	Blockheight uint32                                 `protobuf:"varint,3,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
	Txindex     uint32                                 `protobuf:"varint,4,opt,name=txindex,proto3" json:"txindex,omitempty"`
	Locktime    uint32                                 `protobuf:"varint,7,opt,name=locktime,proto3" json:"locktime,omitempty"`
	Version     uint32                                 `protobuf:"varint,8,opt,name=version,proto3" json:"version,omitempty"`
	Inputs      []*ListtransactionsTransactionsInputs  `protobuf:"bytes,9,rep,name=inputs,proto3" json:"inputs,omitempty"`
	Outputs     []*ListtransactionsTransactionsOutputs `protobuf:"bytes,10,rep,name=outputs,proto3" json:"outputs,omitempty"`
}

func (x *ListtransactionsTransactions) Reset() {
	*x = ListtransactionsTransactions{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[99]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListtransactionsTransactions) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListtransactionsTransactions) ProtoMessage() {}

func (x *ListtransactionsTransactions) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[99]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListtransactionsTransactions.ProtoReflect.Descriptor instead.
func (*ListtransactionsTransactions) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{99}
}

func (x *ListtransactionsTransactions) GetHash() []byte {
	if x != nil {
		return x.Hash
	}
	return nil
}

func (x *ListtransactionsTransactions) GetRawtx() []byte {
	if x != nil {
		return x.Rawtx
	}
	return nil
}

func (x *ListtransactionsTransactions) GetBlockheight() uint32 {
	if x != nil {
		return x.Blockheight
	}
	return 0
}

func (x *ListtransactionsTransactions) GetTxindex() uint32 {
	if x != nil {
		return x.Txindex
	}
	return 0
}

func (x *ListtransactionsTransactions) GetLocktime() uint32 {
	if x != nil {
		return x.Locktime
	}
	return 0
}

func (x *ListtransactionsTransactions) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *ListtransactionsTransactions) GetInputs() []*ListtransactionsTransactionsInputs {
	if x != nil {
		return x.Inputs
	}
	return nil
}

func (x *ListtransactionsTransactions) GetOutputs() []*ListtransactionsTransactionsOutputs {
	if x != nil {
		return x.Outputs
	}
	return nil
}

type ListtransactionsTransactionsInputs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid     []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Index    uint32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
	Sequence uint32 `protobuf:"varint,3,opt,name=sequence,proto3" json:"sequence,omitempty"`
}

func (x *ListtransactionsTransactionsInputs) Reset() {
	*x = ListtransactionsTransactionsInputs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[100]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListtransactionsTransactionsInputs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListtransactionsTransactionsInputs) ProtoMessage() {}

func (x *ListtransactionsTransactionsInputs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[100]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListtransactionsTransactionsInputs.ProtoReflect.Descriptor instead.
func (*ListtransactionsTransactionsInputs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{100}
}

func (x *ListtransactionsTransactionsInputs) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *ListtransactionsTransactionsInputs) GetIndex() uint32 {
	if x != nil {
		return x.Index
	}
	return 0
}

func (x *ListtransactionsTransactionsInputs) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

type ListtransactionsTransactionsOutputs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Index        uint32  `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
	ScriptPubKey []byte  `protobuf:"bytes,3,opt,name=scriptPubKey,proto3" json:"scriptPubKey,omitempty"`
	AmountMsat   *Amount `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}

func (x *ListtransactionsTransactionsOutputs) Reset() {
	*x = ListtransactionsTransactionsOutputs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[101]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListtransactionsTransactionsOutputs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListtransactionsTransactionsOutputs) ProtoMessage() {}

func (x *ListtransactionsTransactionsOutputs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[101]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListtransactionsTransactionsOutputs.ProtoReflect.Descriptor instead.
func (*ListtransactionsTransactionsOutputs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{101}
}

func (x *ListtransactionsTransactionsOutputs) GetIndex() uint32 {
	if x != nil {
		return x.Index
	}
	return 0
}

func (x *ListtransactionsTransactionsOutputs) GetScriptPubKey() []byte {
	if x != nil {
		return x.ScriptPubKey
	}
	return nil
}

func (x *ListtransactionsTransactionsOutputs) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

type MakesecretRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Hex     []byte  `protobuf:"bytes,1,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
	String_ *string `protobuf:"bytes,2,opt,name=string,proto3,oneof" json:"string,omitempty"`
}

func (x *MakesecretRequest) Reset() {
	*x = MakesecretRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[102]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MakesecretRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MakesecretRequest) ProtoMessage() {}

func (x *MakesecretRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[102]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MakesecretRequest.ProtoReflect.Descriptor instead.
func (*MakesecretRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{102}
}

func (x *MakesecretRequest) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

func (x *MakesecretRequest) GetString_() string {
	if x != nil && x.String_ != nil {
		return *x.String_
	}
	return ""
}

type MakesecretResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Secret []byte `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
}

func (x *MakesecretResponse) Reset() {
	*x = MakesecretResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[103]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MakesecretResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MakesecretResponse) ProtoMessage() {}

func (x *MakesecretResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[103]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MakesecretResponse.ProtoReflect.Descriptor instead.
func (*MakesecretResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{103}
}

func (x *MakesecretResponse) GetSecret() []byte {
	if x != nil {
		return x.Secret
	}
	return nil
}

type PayRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bolt11        string   `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
	Label         *string  `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Maxfeepercent *float64 `protobuf:"fixed64,4,opt,name=maxfeepercent,proto3,oneof" json:"maxfeepercent,omitempty"`
	RetryFor      *uint32  `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
	Maxdelay      *uint32  `protobuf:"varint,6,opt,name=maxdelay,proto3,oneof" json:"maxdelay,omitempty"`
	Exemptfee     *Amount  `protobuf:"bytes,7,opt,name=exemptfee,proto3,oneof" json:"exemptfee,omitempty"`
	Riskfactor    *float64 `protobuf:"fixed64,8,opt,name=riskfactor,proto3,oneof" json:"riskfactor,omitempty"`
	Exclude       []string `protobuf:"bytes,10,rep,name=exclude,proto3" json:"exclude,omitempty"`
	Maxfee        *Amount  `protobuf:"bytes,11,opt,name=maxfee,proto3,oneof" json:"maxfee,omitempty"`
	Description   *string  `protobuf:"bytes,12,opt,name=description,proto3,oneof" json:"description,omitempty"`
	AmountMsat    *Amount  `protobuf:"bytes,13,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Localinvreqid []byte   `protobuf:"bytes,14,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
	PartialMsat   *Amount  `protobuf:"bytes,15,opt,name=partial_msat,json=partialMsat,proto3,oneof" json:"partial_msat,omitempty"`
}

func (x *PayRequest) Reset() {
	*x = PayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[104]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PayRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PayRequest) ProtoMessage() {}

func (x *PayRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[104]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PayRequest.ProtoReflect.Descriptor instead.
func (*PayRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{104}
}

func (x *PayRequest) GetBolt11() string {
	if x != nil {
		return x.Bolt11
	}
	return ""
}

func (x *PayRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *PayRequest) GetMaxfeepercent() float64 {
	if x != nil && x.Maxfeepercent != nil {
		return *x.Maxfeepercent
	}
	return 0
}

func (x *PayRequest) GetRetryFor() uint32 {
	if x != nil && x.RetryFor != nil {
		return *x.RetryFor
	}
	return 0
}

func (x *PayRequest) GetMaxdelay() uint32 {
	if x != nil && x.Maxdelay != nil {
		return *x.Maxdelay
	}
	return 0
}

func (x *PayRequest) GetExemptfee() *Amount {
	if x != nil {
		return x.Exemptfee
	}
	return nil
}

func (x *PayRequest) GetRiskfactor() float64 {
	if x != nil && x.Riskfactor != nil {
		return *x.Riskfactor
	}
	return 0
}

func (x *PayRequest) GetExclude() []string {
	if x != nil {
		return x.Exclude
	}
	return nil
}

func (x *PayRequest) GetMaxfee() *Amount {
	if x != nil {
		return x.Maxfee
	}
	return nil
}

func (x *PayRequest) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *PayRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *PayRequest) GetLocalinvreqid() []byte {
	if x != nil {
		return x.Localinvreqid
	}
	return nil
}

func (x *PayRequest) GetPartialMsat() *Amount {
	if x != nil {
		return x.PartialMsat
	}
	return nil
}

type PayResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PaymentPreimage          []byte                `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
	Destination              []byte                `protobuf:"bytes,2,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	PaymentHash              []byte                `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	CreatedAt                float64               `protobuf:"fixed64,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Parts                    uint32                `protobuf:"varint,5,opt,name=parts,proto3" json:"parts,omitempty"`
	AmountMsat               *Amount               `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	AmountSentMsat           *Amount               `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
	WarningPartialCompletion *string               `protobuf:"bytes,8,opt,name=warning_partial_completion,json=warningPartialCompletion,proto3,oneof" json:"warning_partial_completion,omitempty"`
	Status                   PayResponse_PayStatus `protobuf:"varint,9,opt,name=status,proto3,enum=cln.PayResponse_PayStatus" json:"status,omitempty"`
}

func (x *PayResponse) Reset() {
	*x = PayResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[105]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PayResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PayResponse) ProtoMessage() {}

func (x *PayResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[105]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PayResponse.ProtoReflect.Descriptor instead.
func (*PayResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{105}
}

func (x *PayResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *PayResponse) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *PayResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *PayResponse) GetCreatedAt() float64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *PayResponse) GetParts() uint32 {
	if x != nil {
		return x.Parts
	}
	return 0
}

func (x *PayResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *PayResponse) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *PayResponse) GetWarningPartialCompletion() string {
	if x != nil && x.WarningPartialCompletion != nil {
		return *x.WarningPartialCompletion
	}
	return ""
}

func (x *PayResponse) GetStatus() PayResponse_PayStatus {
	if x != nil {
		return x.Status
	}
	return PayResponse_COMPLETE
}

type ListnodesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
}

func (x *ListnodesRequest) Reset() {
	*x = ListnodesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[106]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListnodesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListnodesRequest) ProtoMessage() {}

func (x *ListnodesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[106]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListnodesRequest.ProtoReflect.Descriptor instead.
func (*ListnodesRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{106}
}

func (x *ListnodesRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

type ListnodesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Nodes []*ListnodesNodes `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"`
}

func (x *ListnodesResponse) Reset() {
	*x = ListnodesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[107]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListnodesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListnodesResponse) ProtoMessage() {}

func (x *ListnodesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[107]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListnodesResponse.ProtoReflect.Descriptor instead.
func (*ListnodesResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{107}
}

func (x *ListnodesResponse) GetNodes() []*ListnodesNodes {
	if x != nil {
		return x.Nodes
	}
	return nil
}

type ListnodesNodes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Nodeid         []byte                        `protobuf:"bytes,1,opt,name=nodeid,proto3" json:"nodeid,omitempty"`
	LastTimestamp  *uint32                       `protobuf:"varint,2,opt,name=last_timestamp,json=lastTimestamp,proto3,oneof" json:"last_timestamp,omitempty"`
	Alias          *string                       `protobuf:"bytes,3,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	Color          []byte                        `protobuf:"bytes,4,opt,name=color,proto3,oneof" json:"color,omitempty"`
	Features       []byte                        `protobuf:"bytes,5,opt,name=features,proto3,oneof" json:"features,omitempty"`
	Addresses      []*ListnodesNodesAddresses    `protobuf:"bytes,6,rep,name=addresses,proto3" json:"addresses,omitempty"`
	OptionWillFund *ListnodesNodesOptionWillFund `protobuf:"bytes,7,opt,name=option_will_fund,json=optionWillFund,proto3,oneof" json:"option_will_fund,omitempty"`
}

func (x *ListnodesNodes) Reset() {
	*x = ListnodesNodes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[108]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListnodesNodes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListnodesNodes) ProtoMessage() {}

func (x *ListnodesNodes) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[108]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListnodesNodes.ProtoReflect.Descriptor instead.
func (*ListnodesNodes) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{108}
}

func (x *ListnodesNodes) GetNodeid() []byte {
	if x != nil {
		return x.Nodeid
	}
	return nil
}

func (x *ListnodesNodes) GetLastTimestamp() uint32 {
	if x != nil && x.LastTimestamp != nil {
		return *x.LastTimestamp
	}
	return 0
}

func (x *ListnodesNodes) GetAlias() string {
	if x != nil && x.Alias != nil {
		return *x.Alias
	}
	return ""
}

func (x *ListnodesNodes) GetColor() []byte {
	if x != nil {
		return x.Color
	}
	return nil
}

func (x *ListnodesNodes) GetFeatures() []byte {
	if x != nil {
		return x.Features
	}
	return nil
}

func (x *ListnodesNodes) GetAddresses() []*ListnodesNodesAddresses {
	if x != nil {
		return x.Addresses
	}
	return nil
}

func (x *ListnodesNodes) GetOptionWillFund() *ListnodesNodesOptionWillFund {
	if x != nil {
		return x.OptionWillFund
	}
	return nil
}

type ListnodesNodesOptionWillFund struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	LeaseFeeBaseMsat                     *Amount `protobuf:"bytes,1,opt,name=lease_fee_base_msat,json=leaseFeeBaseMsat,proto3" json:"lease_fee_base_msat,omitempty"`
	LeaseFeeBasis                        uint32  `protobuf:"varint,2,opt,name=lease_fee_basis,json=leaseFeeBasis,proto3" json:"lease_fee_basis,omitempty"`
	FundingWeight                        uint32  `protobuf:"varint,3,opt,name=funding_weight,json=fundingWeight,proto3" json:"funding_weight,omitempty"`
	ChannelFeeMaxBaseMsat                *Amount `protobuf:"bytes,4,opt,name=channel_fee_max_base_msat,json=channelFeeMaxBaseMsat,proto3" json:"channel_fee_max_base_msat,omitempty"`
	ChannelFeeMaxProportionalThousandths uint32  `protobuf:"varint,5,opt,name=channel_fee_max_proportional_thousandths,json=channelFeeMaxProportionalThousandths,proto3" json:"channel_fee_max_proportional_thousandths,omitempty"`
	CompactLease                         []byte  `protobuf:"bytes,6,opt,name=compact_lease,json=compactLease,proto3" json:"compact_lease,omitempty"`
}

func (x *ListnodesNodesOptionWillFund) Reset() {
	*x = ListnodesNodesOptionWillFund{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[109]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListnodesNodesOptionWillFund) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListnodesNodesOptionWillFund) ProtoMessage() {}

func (x *ListnodesNodesOptionWillFund) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[109]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListnodesNodesOptionWillFund.ProtoReflect.Descriptor instead.
func (*ListnodesNodesOptionWillFund) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{109}
}

func (x *ListnodesNodesOptionWillFund) GetLeaseFeeBaseMsat() *Amount {
	if x != nil {
		return x.LeaseFeeBaseMsat
	}
	return nil
}

func (x *ListnodesNodesOptionWillFund) GetLeaseFeeBasis() uint32 {
	if x != nil {
		return x.LeaseFeeBasis
	}
	return 0
}

func (x *ListnodesNodesOptionWillFund) GetFundingWeight() uint32 {
	if x != nil {
		return x.FundingWeight
	}
	return 0
}

func (x *ListnodesNodesOptionWillFund) GetChannelFeeMaxBaseMsat() *Amount {
	if x != nil {
		return x.ChannelFeeMaxBaseMsat
	}
	return nil
}

func (x *ListnodesNodesOptionWillFund) GetChannelFeeMaxProportionalThousandths() uint32 {
	if x != nil {
		return x.ChannelFeeMaxProportionalThousandths
	}
	return 0
}

func (x *ListnodesNodesOptionWillFund) GetCompactLease() []byte {
	if x != nil {
		return x.CompactLease
	}
	return nil
}

type ListnodesNodesAddresses struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType ListnodesNodesAddresses_ListnodesNodesAddressesType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.ListnodesNodesAddresses_ListnodesNodesAddressesType" json:"item_type,omitempty"`
	Port     uint32                                              `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	Address  *string                                             `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
}

func (x *ListnodesNodesAddresses) Reset() {
	*x = ListnodesNodesAddresses{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[110]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListnodesNodesAddresses) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListnodesNodesAddresses) ProtoMessage() {}

func (x *ListnodesNodesAddresses) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[110]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListnodesNodesAddresses.ProtoReflect.Descriptor instead.
func (*ListnodesNodesAddresses) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{110}
}

func (x *ListnodesNodesAddresses) GetItemType() ListnodesNodesAddresses_ListnodesNodesAddressesType {
	if x != nil {
		return x.ItemType
	}
	return ListnodesNodesAddresses_DNS
}

func (x *ListnodesNodesAddresses) GetPort() uint32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *ListnodesNodesAddresses) GetAddress() string {
	if x != nil && x.Address != nil {
		return *x.Address
	}
	return ""
}

type WaitanyinvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	LastpayIndex *uint64 `protobuf:"varint,1,opt,name=lastpay_index,json=lastpayIndex,proto3,oneof" json:"lastpay_index,omitempty"`
	Timeout      *uint64 `protobuf:"varint,2,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
}

func (x *WaitanyinvoiceRequest) Reset() {
	*x = WaitanyinvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[111]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitanyinvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitanyinvoiceRequest) ProtoMessage() {}

func (x *WaitanyinvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[111]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitanyinvoiceRequest.ProtoReflect.Descriptor instead.
func (*WaitanyinvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{111}
}

func (x *WaitanyinvoiceRequest) GetLastpayIndex() uint64 {
	if x != nil && x.LastpayIndex != nil {
		return *x.LastpayIndex
	}
	return 0
}

func (x *WaitanyinvoiceRequest) GetTimeout() uint64 {
	if x != nil && x.Timeout != nil {
		return *x.Timeout
	}
	return 0
}

type WaitanyinvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label              string                                      `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
	Description        *string                                     `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
	PaymentHash        []byte                                      `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status             WaitanyinvoiceResponse_WaitanyinvoiceStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitanyinvoiceResponse_WaitanyinvoiceStatus" json:"status,omitempty"`
	ExpiresAt          uint64                                      `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	AmountMsat         *Amount                                     `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Bolt11             *string                                     `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12             *string                                     `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	PayIndex           *uint64                                     `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
	AmountReceivedMsat *Amount                                     `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
	PaidAt             *uint64                                     `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
	PaymentPreimage    []byte                                      `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	CreatedIndex       *uint64                                     `protobuf:"varint,13,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex       *uint64                                     `protobuf:"varint,14,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
	PaidOutpoint       *WaitanyinvoicePaidOutpoint                 `protobuf:"bytes,15,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
}

func (x *WaitanyinvoiceResponse) Reset() {
	*x = WaitanyinvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[112]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitanyinvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitanyinvoiceResponse) ProtoMessage() {}

func (x *WaitanyinvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[112]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitanyinvoiceResponse.ProtoReflect.Descriptor instead.
func (*WaitanyinvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{112}
}

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

func (x *WaitanyinvoiceResponse) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *WaitanyinvoiceResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *WaitanyinvoiceResponse) GetStatus() WaitanyinvoiceResponse_WaitanyinvoiceStatus {
	if x != nil {
		return x.Status
	}
	return WaitanyinvoiceResponse_PAID
}

func (x *WaitanyinvoiceResponse) GetExpiresAt() uint64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *WaitanyinvoiceResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *WaitanyinvoiceResponse) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *WaitanyinvoiceResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *WaitanyinvoiceResponse) GetPayIndex() uint64 {
	if x != nil && x.PayIndex != nil {
		return *x.PayIndex
	}
	return 0
}

func (x *WaitanyinvoiceResponse) GetAmountReceivedMsat() *Amount {
	if x != nil {
		return x.AmountReceivedMsat
	}
	return nil
}

func (x *WaitanyinvoiceResponse) GetPaidAt() uint64 {
	if x != nil && x.PaidAt != nil {
		return *x.PaidAt
	}
	return 0
}

func (x *WaitanyinvoiceResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *WaitanyinvoiceResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *WaitanyinvoiceResponse) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

func (x *WaitanyinvoiceResponse) GetPaidOutpoint() *WaitanyinvoicePaidOutpoint {
	if x != nil {
		return x.PaidOutpoint
	}
	return nil
}

type WaitanyinvoicePaidOutpoint struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid   []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
}

func (x *WaitanyinvoicePaidOutpoint) Reset() {
	*x = WaitanyinvoicePaidOutpoint{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[113]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitanyinvoicePaidOutpoint) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitanyinvoicePaidOutpoint) ProtoMessage() {}

func (x *WaitanyinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[113]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitanyinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
func (*WaitanyinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{113}
}

func (x *WaitanyinvoicePaidOutpoint) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *WaitanyinvoicePaidOutpoint) GetOutnum() uint32 {
	if x != nil {
		return x.Outnum
	}
	return 0
}

type WaitinvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
}

func (x *WaitinvoiceRequest) Reset() {
	*x = WaitinvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[114]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitinvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitinvoiceRequest) ProtoMessage() {}

func (x *WaitinvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[114]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitinvoiceRequest.ProtoReflect.Descriptor instead.
func (*WaitinvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{114}
}

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

type WaitinvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label              string                                `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
	Description        *string                               `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
	PaymentHash        []byte                                `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status             WaitinvoiceResponse_WaitinvoiceStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitinvoiceResponse_WaitinvoiceStatus" json:"status,omitempty"`
	ExpiresAt          uint64                                `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	AmountMsat         *Amount                               `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Bolt11             *string                               `protobuf:"bytes,7,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12             *string                               `protobuf:"bytes,8,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	PayIndex           *uint64                               `protobuf:"varint,9,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
	AmountReceivedMsat *Amount                               `protobuf:"bytes,10,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
	PaidAt             *uint64                               `protobuf:"varint,11,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
	PaymentPreimage    []byte                                `protobuf:"bytes,12,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	CreatedIndex       *uint64                               `protobuf:"varint,13,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex       *uint64                               `protobuf:"varint,14,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
	PaidOutpoint       *WaitinvoicePaidOutpoint              `protobuf:"bytes,15,opt,name=paid_outpoint,json=paidOutpoint,proto3,oneof" json:"paid_outpoint,omitempty"`
}

func (x *WaitinvoiceResponse) Reset() {
	*x = WaitinvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[115]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitinvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitinvoiceResponse) ProtoMessage() {}

func (x *WaitinvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[115]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitinvoiceResponse.ProtoReflect.Descriptor instead.
func (*WaitinvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{115}
}

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

func (x *WaitinvoiceResponse) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *WaitinvoiceResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *WaitinvoiceResponse) GetStatus() WaitinvoiceResponse_WaitinvoiceStatus {
	if x != nil {
		return x.Status
	}
	return WaitinvoiceResponse_PAID
}

func (x *WaitinvoiceResponse) GetExpiresAt() uint64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *WaitinvoiceResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *WaitinvoiceResponse) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *WaitinvoiceResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *WaitinvoiceResponse) GetPayIndex() uint64 {
	if x != nil && x.PayIndex != nil {
		return *x.PayIndex
	}
	return 0
}

func (x *WaitinvoiceResponse) GetAmountReceivedMsat() *Amount {
	if x != nil {
		return x.AmountReceivedMsat
	}
	return nil
}

func (x *WaitinvoiceResponse) GetPaidAt() uint64 {
	if x != nil && x.PaidAt != nil {
		return *x.PaidAt
	}
	return 0
}

func (x *WaitinvoiceResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *WaitinvoiceResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *WaitinvoiceResponse) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

func (x *WaitinvoiceResponse) GetPaidOutpoint() *WaitinvoicePaidOutpoint {
	if x != nil {
		return x.PaidOutpoint
	}
	return nil
}

type WaitinvoicePaidOutpoint struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid   []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Outnum uint32 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
}

func (x *WaitinvoicePaidOutpoint) Reset() {
	*x = WaitinvoicePaidOutpoint{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[116]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitinvoicePaidOutpoint) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitinvoicePaidOutpoint) ProtoMessage() {}

func (x *WaitinvoicePaidOutpoint) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[116]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitinvoicePaidOutpoint.ProtoReflect.Descriptor instead.
func (*WaitinvoicePaidOutpoint) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{116}
}

func (x *WaitinvoicePaidOutpoint) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *WaitinvoicePaidOutpoint) GetOutnum() uint32 {
	if x != nil {
		return x.Outnum
	}
	return 0
}

type WaitsendpayRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PaymentHash []byte  `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Partid      *uint64 `protobuf:"varint,2,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	Timeout     *uint32 `protobuf:"varint,3,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
	Groupid     *uint64 `protobuf:"varint,4,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
}

func (x *WaitsendpayRequest) Reset() {
	*x = WaitsendpayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[117]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitsendpayRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitsendpayRequest) ProtoMessage() {}

func (x *WaitsendpayRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[117]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitsendpayRequest.ProtoReflect.Descriptor instead.
func (*WaitsendpayRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{117}
}

func (x *WaitsendpayRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *WaitsendpayRequest) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *WaitsendpayRequest) GetTimeout() uint32 {
	if x != nil && x.Timeout != nil {
		return *x.Timeout
	}
	return 0
}

func (x *WaitsendpayRequest) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

type WaitsendpayResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id              uint64                                `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Groupid         *uint64                               `protobuf:"varint,2,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
	PaymentHash     []byte                                `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status          WaitsendpayResponse_WaitsendpayStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.WaitsendpayResponse_WaitsendpayStatus" json:"status,omitempty"`
	AmountMsat      *Amount                               `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Destination     []byte                                `protobuf:"bytes,6,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	CreatedAt       uint64                                `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	AmountSentMsat  *Amount                               `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
	Label           *string                               `protobuf:"bytes,9,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Partid          *uint64                               `protobuf:"varint,10,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	Bolt11          *string                               `protobuf:"bytes,11,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12          *string                               `protobuf:"bytes,12,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	PaymentPreimage []byte                                `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	CompletedAt     *float64                              `protobuf:"fixed64,14,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
	CreatedIndex    *uint64                               `protobuf:"varint,15,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex    *uint64                               `protobuf:"varint,16,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
}

func (x *WaitsendpayResponse) Reset() {
	*x = WaitsendpayResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[118]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitsendpayResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitsendpayResponse) ProtoMessage() {}

func (x *WaitsendpayResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[118]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitsendpayResponse.ProtoReflect.Descriptor instead.
func (*WaitsendpayResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{118}
}

func (x *WaitsendpayResponse) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *WaitsendpayResponse) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

func (x *WaitsendpayResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *WaitsendpayResponse) GetStatus() WaitsendpayResponse_WaitsendpayStatus {
	if x != nil {
		return x.Status
	}
	return WaitsendpayResponse_COMPLETE
}

func (x *WaitsendpayResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *WaitsendpayResponse) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *WaitsendpayResponse) GetCreatedAt() uint64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *WaitsendpayResponse) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *WaitsendpayResponse) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *WaitsendpayResponse) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *WaitsendpayResponse) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *WaitsendpayResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *WaitsendpayResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *WaitsendpayResponse) GetCompletedAt() float64 {
	if x != nil && x.CompletedAt != nil {
		return *x.CompletedAt
	}
	return 0
}

func (x *WaitsendpayResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *WaitsendpayResponse) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

type NewaddrRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Addresstype *NewaddrRequest_NewaddrAddresstype `protobuf:"varint,1,opt,name=addresstype,proto3,enum=cln.NewaddrRequest_NewaddrAddresstype,oneof" json:"addresstype,omitempty"`
}

func (x *NewaddrRequest) Reset() {
	*x = NewaddrRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[119]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *NewaddrRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*NewaddrRequest) ProtoMessage() {}

func (x *NewaddrRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[119]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use NewaddrRequest.ProtoReflect.Descriptor instead.
func (*NewaddrRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{119}
}

func (x *NewaddrRequest) GetAddresstype() NewaddrRequest_NewaddrAddresstype {
	if x != nil && x.Addresstype != nil {
		return *x.Addresstype
	}
	return NewaddrRequest_BECH32
}

type NewaddrResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bech32 *string `protobuf:"bytes,1,opt,name=bech32,proto3,oneof" json:"bech32,omitempty"`
	P2Tr   *string `protobuf:"bytes,3,opt,name=p2tr,proto3,oneof" json:"p2tr,omitempty"`
}

func (x *NewaddrResponse) Reset() {
	*x = NewaddrResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[120]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *NewaddrResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*NewaddrResponse) ProtoMessage() {}

func (x *NewaddrResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[120]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use NewaddrResponse.ProtoReflect.Descriptor instead.
func (*NewaddrResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{120}
}

func (x *NewaddrResponse) GetBech32() string {
	if x != nil && x.Bech32 != nil {
		return *x.Bech32
	}
	return ""
}

func (x *NewaddrResponse) GetP2Tr() string {
	if x != nil && x.P2Tr != nil {
		return *x.P2Tr
	}
	return ""
}

type WithdrawRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destination string       `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	Satoshi     *AmountOrAll `protobuf:"bytes,2,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
	Minconf     *uint32      `protobuf:"varint,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
	Utxos       []*Outpoint  `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
	Feerate     *Feerate     `protobuf:"bytes,5,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
}

func (x *WithdrawRequest) Reset() {
	*x = WithdrawRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[121]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WithdrawRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WithdrawRequest) ProtoMessage() {}

func (x *WithdrawRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[121]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WithdrawRequest.ProtoReflect.Descriptor instead.
func (*WithdrawRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{121}
}

func (x *WithdrawRequest) GetDestination() string {
	if x != nil {
		return x.Destination
	}
	return ""
}

func (x *WithdrawRequest) GetSatoshi() *AmountOrAll {
	if x != nil {
		return x.Satoshi
	}
	return nil
}

func (x *WithdrawRequest) GetMinconf() uint32 {
	if x != nil && x.Minconf != nil {
		return *x.Minconf
	}
	return 0
}

func (x *WithdrawRequest) GetUtxos() []*Outpoint {
	if x != nil {
		return x.Utxos
	}
	return nil
}

func (x *WithdrawRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

type WithdrawResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tx   []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
	Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
	Psbt string `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"`
}

func (x *WithdrawResponse) Reset() {
	*x = WithdrawResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[122]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WithdrawResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WithdrawResponse) ProtoMessage() {}

func (x *WithdrawResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[122]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WithdrawResponse.ProtoReflect.Descriptor instead.
func (*WithdrawResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{122}
}

func (x *WithdrawResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *WithdrawResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *WithdrawResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

type KeysendRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destination   []byte         `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	Label         *string        `protobuf:"bytes,3,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Maxfeepercent *float64       `protobuf:"fixed64,4,opt,name=maxfeepercent,proto3,oneof" json:"maxfeepercent,omitempty"`
	RetryFor      *uint32        `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
	Maxdelay      *uint32        `protobuf:"varint,6,opt,name=maxdelay,proto3,oneof" json:"maxdelay,omitempty"`
	Exemptfee     *Amount        `protobuf:"bytes,7,opt,name=exemptfee,proto3,oneof" json:"exemptfee,omitempty"`
	Routehints    *RoutehintList `protobuf:"bytes,8,opt,name=routehints,proto3,oneof" json:"routehints,omitempty"`
	Extratlvs     *TlvStream     `protobuf:"bytes,9,opt,name=extratlvs,proto3,oneof" json:"extratlvs,omitempty"`
	AmountMsat    *Amount        `protobuf:"bytes,10,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	Maxfee        *Amount        `protobuf:"bytes,11,opt,name=maxfee,proto3,oneof" json:"maxfee,omitempty"`
}

func (x *KeysendRequest) Reset() {
	*x = KeysendRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[123]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *KeysendRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*KeysendRequest) ProtoMessage() {}

func (x *KeysendRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[123]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use KeysendRequest.ProtoReflect.Descriptor instead.
func (*KeysendRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{123}
}

func (x *KeysendRequest) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *KeysendRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *KeysendRequest) GetMaxfeepercent() float64 {
	if x != nil && x.Maxfeepercent != nil {
		return *x.Maxfeepercent
	}
	return 0
}

func (x *KeysendRequest) GetRetryFor() uint32 {
	if x != nil && x.RetryFor != nil {
		return *x.RetryFor
	}
	return 0
}

func (x *KeysendRequest) GetMaxdelay() uint32 {
	if x != nil && x.Maxdelay != nil {
		return *x.Maxdelay
	}
	return 0
}

func (x *KeysendRequest) GetExemptfee() *Amount {
	if x != nil {
		return x.Exemptfee
	}
	return nil
}

func (x *KeysendRequest) GetRoutehints() *RoutehintList {
	if x != nil {
		return x.Routehints
	}
	return nil
}

func (x *KeysendRequest) GetExtratlvs() *TlvStream {
	if x != nil {
		return x.Extratlvs
	}
	return nil
}

func (x *KeysendRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *KeysendRequest) GetMaxfee() *Amount {
	if x != nil {
		return x.Maxfee
	}
	return nil
}

type KeysendResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PaymentPreimage          []byte                        `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
	Destination              []byte                        `protobuf:"bytes,2,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	PaymentHash              []byte                        `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	CreatedAt                float64                       `protobuf:"fixed64,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Parts                    uint32                        `protobuf:"varint,5,opt,name=parts,proto3" json:"parts,omitempty"`
	AmountMsat               *Amount                       `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	AmountSentMsat           *Amount                       `protobuf:"bytes,7,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
	WarningPartialCompletion *string                       `protobuf:"bytes,8,opt,name=warning_partial_completion,json=warningPartialCompletion,proto3,oneof" json:"warning_partial_completion,omitempty"`
	Status                   KeysendResponse_KeysendStatus `protobuf:"varint,9,opt,name=status,proto3,enum=cln.KeysendResponse_KeysendStatus" json:"status,omitempty"`
}

func (x *KeysendResponse) Reset() {
	*x = KeysendResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[124]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *KeysendResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*KeysendResponse) ProtoMessage() {}

func (x *KeysendResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[124]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use KeysendResponse.ProtoReflect.Descriptor instead.
func (*KeysendResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{124}
}

func (x *KeysendResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *KeysendResponse) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *KeysendResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *KeysendResponse) GetCreatedAt() float64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *KeysendResponse) GetParts() uint32 {
	if x != nil {
		return x.Parts
	}
	return 0
}

func (x *KeysendResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *KeysendResponse) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *KeysendResponse) GetWarningPartialCompletion() string {
	if x != nil && x.WarningPartialCompletion != nil {
		return *x.WarningPartialCompletion
	}
	return ""
}

func (x *KeysendResponse) GetStatus() KeysendResponse_KeysendStatus {
	if x != nil {
		return x.Status
	}
	return KeysendResponse_COMPLETE
}

type FundpsbtRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Satoshi              *AmountOrAll `protobuf:"bytes,1,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
	Feerate              *Feerate     `protobuf:"bytes,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
	Startweight          uint32       `protobuf:"varint,3,opt,name=startweight,proto3" json:"startweight,omitempty"`
	Minconf              *uint32      `protobuf:"varint,4,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
	Reserve              *uint32      `protobuf:"varint,5,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
	Locktime             *uint32      `protobuf:"varint,6,opt,name=locktime,proto3,oneof" json:"locktime,omitempty"`
	MinWitnessWeight     *uint32      `protobuf:"varint,7,opt,name=min_witness_weight,json=minWitnessWeight,proto3,oneof" json:"min_witness_weight,omitempty"`
	ExcessAsChange       *bool        `protobuf:"varint,8,opt,name=excess_as_change,json=excessAsChange,proto3,oneof" json:"excess_as_change,omitempty"`
	Nonwrapped           *bool        `protobuf:"varint,9,opt,name=nonwrapped,proto3,oneof" json:"nonwrapped,omitempty"`
	OpeningAnchorChannel *bool        `protobuf:"varint,10,opt,name=opening_anchor_channel,json=openingAnchorChannel,proto3,oneof" json:"opening_anchor_channel,omitempty"`
}

func (x *FundpsbtRequest) Reset() {
	*x = FundpsbtRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[125]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundpsbtRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundpsbtRequest) ProtoMessage() {}

func (x *FundpsbtRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[125]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundpsbtRequest.ProtoReflect.Descriptor instead.
func (*FundpsbtRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{125}
}

func (x *FundpsbtRequest) GetSatoshi() *AmountOrAll {
	if x != nil {
		return x.Satoshi
	}
	return nil
}

func (x *FundpsbtRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *FundpsbtRequest) GetStartweight() uint32 {
	if x != nil {
		return x.Startweight
	}
	return 0
}

func (x *FundpsbtRequest) GetMinconf() uint32 {
	if x != nil && x.Minconf != nil {
		return *x.Minconf
	}
	return 0
}

func (x *FundpsbtRequest) GetReserve() uint32 {
	if x != nil && x.Reserve != nil {
		return *x.Reserve
	}
	return 0
}

func (x *FundpsbtRequest) GetLocktime() uint32 {
	if x != nil && x.Locktime != nil {
		return *x.Locktime
	}
	return 0
}

func (x *FundpsbtRequest) GetMinWitnessWeight() uint32 {
	if x != nil && x.MinWitnessWeight != nil {
		return *x.MinWitnessWeight
	}
	return 0
}

func (x *FundpsbtRequest) GetExcessAsChange() bool {
	if x != nil && x.ExcessAsChange != nil {
		return *x.ExcessAsChange
	}
	return false
}

func (x *FundpsbtRequest) GetNonwrapped() bool {
	if x != nil && x.Nonwrapped != nil {
		return *x.Nonwrapped
	}
	return false
}

func (x *FundpsbtRequest) GetOpeningAnchorChannel() bool {
	if x != nil && x.OpeningAnchorChannel != nil {
		return *x.OpeningAnchorChannel
	}
	return false
}

type FundpsbtResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt                 string                  `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	FeeratePerKw         uint32                  `protobuf:"varint,2,opt,name=feerate_per_kw,json=feeratePerKw,proto3" json:"feerate_per_kw,omitempty"`
	EstimatedFinalWeight uint32                  `protobuf:"varint,3,opt,name=estimated_final_weight,json=estimatedFinalWeight,proto3" json:"estimated_final_weight,omitempty"`
	ExcessMsat           *Amount                 `protobuf:"bytes,4,opt,name=excess_msat,json=excessMsat,proto3" json:"excess_msat,omitempty"`
	ChangeOutnum         *uint32                 `protobuf:"varint,5,opt,name=change_outnum,json=changeOutnum,proto3,oneof" json:"change_outnum,omitempty"`
	Reservations         []*FundpsbtReservations `protobuf:"bytes,6,rep,name=reservations,proto3" json:"reservations,omitempty"`
}

func (x *FundpsbtResponse) Reset() {
	*x = FundpsbtResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[126]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundpsbtResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundpsbtResponse) ProtoMessage() {}

func (x *FundpsbtResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[126]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundpsbtResponse.ProtoReflect.Descriptor instead.
func (*FundpsbtResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{126}
}

func (x *FundpsbtResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *FundpsbtResponse) GetFeeratePerKw() uint32 {
	if x != nil {
		return x.FeeratePerKw
	}
	return 0
}

func (x *FundpsbtResponse) GetEstimatedFinalWeight() uint32 {
	if x != nil {
		return x.EstimatedFinalWeight
	}
	return 0
}

func (x *FundpsbtResponse) GetExcessMsat() *Amount {
	if x != nil {
		return x.ExcessMsat
	}
	return nil
}

func (x *FundpsbtResponse) GetChangeOutnum() uint32 {
	if x != nil && x.ChangeOutnum != nil {
		return *x.ChangeOutnum
	}
	return 0
}

func (x *FundpsbtResponse) GetReservations() []*FundpsbtReservations {
	if x != nil {
		return x.Reservations
	}
	return nil
}

type FundpsbtReservations struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid            []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Vout            uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
	WasReserved     bool   `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
	Reserved        bool   `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
	ReservedToBlock uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3" json:"reserved_to_block,omitempty"`
}

func (x *FundpsbtReservations) Reset() {
	*x = FundpsbtReservations{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[127]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundpsbtReservations) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundpsbtReservations) ProtoMessage() {}

func (x *FundpsbtReservations) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[127]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundpsbtReservations.ProtoReflect.Descriptor instead.
func (*FundpsbtReservations) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{127}
}

func (x *FundpsbtReservations) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *FundpsbtReservations) GetVout() uint32 {
	if x != nil {
		return x.Vout
	}
	return 0
}

func (x *FundpsbtReservations) GetWasReserved() bool {
	if x != nil {
		return x.WasReserved
	}
	return false
}

func (x *FundpsbtReservations) GetReserved() bool {
	if x != nil {
		return x.Reserved
	}
	return false
}

func (x *FundpsbtReservations) GetReservedToBlock() uint32 {
	if x != nil {
		return x.ReservedToBlock
	}
	return 0
}

type SendpsbtRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt    string  `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	Reserve *uint32 `protobuf:"varint,2,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
}

func (x *SendpsbtRequest) Reset() {
	*x = SendpsbtRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[128]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendpsbtRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendpsbtRequest) ProtoMessage() {}

func (x *SendpsbtRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[128]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendpsbtRequest.ProtoReflect.Descriptor instead.
func (*SendpsbtRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{128}
}

func (x *SendpsbtRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *SendpsbtRequest) GetReserve() uint32 {
	if x != nil && x.Reserve != nil {
		return *x.Reserve
	}
	return 0
}

type SendpsbtResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tx   []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
	Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *SendpsbtResponse) Reset() {
	*x = SendpsbtResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[129]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendpsbtResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendpsbtResponse) ProtoMessage() {}

func (x *SendpsbtResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[129]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendpsbtResponse.ProtoReflect.Descriptor instead.
func (*SendpsbtResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{129}
}

func (x *SendpsbtResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *SendpsbtResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type SignpsbtRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt     string   `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	Signonly []uint32 `protobuf:"varint,2,rep,packed,name=signonly,proto3" json:"signonly,omitempty"`
}

func (x *SignpsbtRequest) Reset() {
	*x = SignpsbtRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[130]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SignpsbtRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignpsbtRequest) ProtoMessage() {}

func (x *SignpsbtRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[130]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SignpsbtRequest.ProtoReflect.Descriptor instead.
func (*SignpsbtRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{130}
}

func (x *SignpsbtRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *SignpsbtRequest) GetSignonly() []uint32 {
	if x != nil {
		return x.Signonly
	}
	return nil
}

type SignpsbtResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	SignedPsbt string `protobuf:"bytes,1,opt,name=signed_psbt,json=signedPsbt,proto3" json:"signed_psbt,omitempty"`
}

func (x *SignpsbtResponse) Reset() {
	*x = SignpsbtResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[131]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SignpsbtResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignpsbtResponse) ProtoMessage() {}

func (x *SignpsbtResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[131]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SignpsbtResponse.ProtoReflect.Descriptor instead.
func (*SignpsbtResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{131}
}

func (x *SignpsbtResponse) GetSignedPsbt() string {
	if x != nil {
		return x.SignedPsbt
	}
	return ""
}

type UtxopsbtRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Satoshi              *AmountOrAll `protobuf:"bytes,1,opt,name=satoshi,proto3" json:"satoshi,omitempty"`
	Feerate              *Feerate     `protobuf:"bytes,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
	Startweight          uint32       `protobuf:"varint,3,opt,name=startweight,proto3" json:"startweight,omitempty"`
	Utxos                []*Outpoint  `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
	Reserve              *uint32      `protobuf:"varint,5,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
	Locktime             *uint32      `protobuf:"varint,6,opt,name=locktime,proto3,oneof" json:"locktime,omitempty"`
	MinWitnessWeight     *uint32      `protobuf:"varint,7,opt,name=min_witness_weight,json=minWitnessWeight,proto3,oneof" json:"min_witness_weight,omitempty"`
	Reservedok           *bool        `protobuf:"varint,8,opt,name=reservedok,proto3,oneof" json:"reservedok,omitempty"`
	ExcessAsChange       *bool        `protobuf:"varint,9,opt,name=excess_as_change,json=excessAsChange,proto3,oneof" json:"excess_as_change,omitempty"`
	OpeningAnchorChannel *bool        `protobuf:"varint,10,opt,name=opening_anchor_channel,json=openingAnchorChannel,proto3,oneof" json:"opening_anchor_channel,omitempty"`
}

func (x *UtxopsbtRequest) Reset() {
	*x = UtxopsbtRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[132]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UtxopsbtRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UtxopsbtRequest) ProtoMessage() {}

func (x *UtxopsbtRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[132]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UtxopsbtRequest.ProtoReflect.Descriptor instead.
func (*UtxopsbtRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{132}
}

func (x *UtxopsbtRequest) GetSatoshi() *AmountOrAll {
	if x != nil {
		return x.Satoshi
	}
	return nil
}

func (x *UtxopsbtRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *UtxopsbtRequest) GetStartweight() uint32 {
	if x != nil {
		return x.Startweight
	}
	return 0
}

func (x *UtxopsbtRequest) GetUtxos() []*Outpoint {
	if x != nil {
		return x.Utxos
	}
	return nil
}

func (x *UtxopsbtRequest) GetReserve() uint32 {
	if x != nil && x.Reserve != nil {
		return *x.Reserve
	}
	return 0
}

func (x *UtxopsbtRequest) GetLocktime() uint32 {
	if x != nil && x.Locktime != nil {
		return *x.Locktime
	}
	return 0
}

func (x *UtxopsbtRequest) GetMinWitnessWeight() uint32 {
	if x != nil && x.MinWitnessWeight != nil {
		return *x.MinWitnessWeight
	}
	return 0
}

func (x *UtxopsbtRequest) GetReservedok() bool {
	if x != nil && x.Reservedok != nil {
		return *x.Reservedok
	}
	return false
}

func (x *UtxopsbtRequest) GetExcessAsChange() bool {
	if x != nil && x.ExcessAsChange != nil {
		return *x.ExcessAsChange
	}
	return false
}

func (x *UtxopsbtRequest) GetOpeningAnchorChannel() bool {
	if x != nil && x.OpeningAnchorChannel != nil {
		return *x.OpeningAnchorChannel
	}
	return false
}

type UtxopsbtResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt                 string                  `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	FeeratePerKw         uint32                  `protobuf:"varint,2,opt,name=feerate_per_kw,json=feeratePerKw,proto3" json:"feerate_per_kw,omitempty"`
	EstimatedFinalWeight uint32                  `protobuf:"varint,3,opt,name=estimated_final_weight,json=estimatedFinalWeight,proto3" json:"estimated_final_weight,omitempty"`
	ExcessMsat           *Amount                 `protobuf:"bytes,4,opt,name=excess_msat,json=excessMsat,proto3" json:"excess_msat,omitempty"`
	ChangeOutnum         *uint32                 `protobuf:"varint,5,opt,name=change_outnum,json=changeOutnum,proto3,oneof" json:"change_outnum,omitempty"`
	Reservations         []*UtxopsbtReservations `protobuf:"bytes,6,rep,name=reservations,proto3" json:"reservations,omitempty"`
}

func (x *UtxopsbtResponse) Reset() {
	*x = UtxopsbtResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[133]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UtxopsbtResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UtxopsbtResponse) ProtoMessage() {}

func (x *UtxopsbtResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[133]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UtxopsbtResponse.ProtoReflect.Descriptor instead.
func (*UtxopsbtResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{133}
}

func (x *UtxopsbtResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *UtxopsbtResponse) GetFeeratePerKw() uint32 {
	if x != nil {
		return x.FeeratePerKw
	}
	return 0
}

func (x *UtxopsbtResponse) GetEstimatedFinalWeight() uint32 {
	if x != nil {
		return x.EstimatedFinalWeight
	}
	return 0
}

func (x *UtxopsbtResponse) GetExcessMsat() *Amount {
	if x != nil {
		return x.ExcessMsat
	}
	return nil
}

func (x *UtxopsbtResponse) GetChangeOutnum() uint32 {
	if x != nil && x.ChangeOutnum != nil {
		return *x.ChangeOutnum
	}
	return 0
}

func (x *UtxopsbtResponse) GetReservations() []*UtxopsbtReservations {
	if x != nil {
		return x.Reservations
	}
	return nil
}

type UtxopsbtReservations struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid            []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Vout            uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
	WasReserved     bool   `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
	Reserved        bool   `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
	ReservedToBlock uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3" json:"reserved_to_block,omitempty"`
}

func (x *UtxopsbtReservations) Reset() {
	*x = UtxopsbtReservations{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[134]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UtxopsbtReservations) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UtxopsbtReservations) ProtoMessage() {}

func (x *UtxopsbtReservations) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[134]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UtxopsbtReservations.ProtoReflect.Descriptor instead.
func (*UtxopsbtReservations) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{134}
}

func (x *UtxopsbtReservations) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *UtxopsbtReservations) GetVout() uint32 {
	if x != nil {
		return x.Vout
	}
	return 0
}

func (x *UtxopsbtReservations) GetWasReserved() bool {
	if x != nil {
		return x.WasReserved
	}
	return false
}

func (x *UtxopsbtReservations) GetReserved() bool {
	if x != nil {
		return x.Reserved
	}
	return false
}

func (x *UtxopsbtReservations) GetReservedToBlock() uint32 {
	if x != nil {
		return x.ReservedToBlock
	}
	return 0
}

type TxdiscardRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *TxdiscardRequest) Reset() {
	*x = TxdiscardRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[135]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TxdiscardRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TxdiscardRequest) ProtoMessage() {}

func (x *TxdiscardRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[135]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TxdiscardRequest.ProtoReflect.Descriptor instead.
func (*TxdiscardRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{135}
}

func (x *TxdiscardRequest) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type TxdiscardResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	UnsignedTx []byte `protobuf:"bytes,1,opt,name=unsigned_tx,json=unsignedTx,proto3" json:"unsigned_tx,omitempty"`
	Txid       []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *TxdiscardResponse) Reset() {
	*x = TxdiscardResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[136]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TxdiscardResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TxdiscardResponse) ProtoMessage() {}

func (x *TxdiscardResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[136]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TxdiscardResponse.ProtoReflect.Descriptor instead.
func (*TxdiscardResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{136}
}

func (x *TxdiscardResponse) GetUnsignedTx() []byte {
	if x != nil {
		return x.UnsignedTx
	}
	return nil
}

func (x *TxdiscardResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type TxprepareRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Feerate *Feerate      `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
	Minconf *uint32       `protobuf:"varint,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
	Utxos   []*Outpoint   `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
	Outputs []*OutputDesc `protobuf:"bytes,5,rep,name=outputs,proto3" json:"outputs,omitempty"`
}

func (x *TxprepareRequest) Reset() {
	*x = TxprepareRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[137]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TxprepareRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TxprepareRequest) ProtoMessage() {}

func (x *TxprepareRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[137]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TxprepareRequest.ProtoReflect.Descriptor instead.
func (*TxprepareRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{137}
}

func (x *TxprepareRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *TxprepareRequest) GetMinconf() uint32 {
	if x != nil && x.Minconf != nil {
		return *x.Minconf
	}
	return 0
}

func (x *TxprepareRequest) GetUtxos() []*Outpoint {
	if x != nil {
		return x.Utxos
	}
	return nil
}

func (x *TxprepareRequest) GetOutputs() []*OutputDesc {
	if x != nil {
		return x.Outputs
	}
	return nil
}

type TxprepareResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt       string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	UnsignedTx []byte `protobuf:"bytes,2,opt,name=unsigned_tx,json=unsignedTx,proto3" json:"unsigned_tx,omitempty"`
	Txid       []byte `protobuf:"bytes,3,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *TxprepareResponse) Reset() {
	*x = TxprepareResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[138]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TxprepareResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TxprepareResponse) ProtoMessage() {}

func (x *TxprepareResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[138]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TxprepareResponse.ProtoReflect.Descriptor instead.
func (*TxprepareResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{138}
}

func (x *TxprepareResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *TxprepareResponse) GetUnsignedTx() []byte {
	if x != nil {
		return x.UnsignedTx
	}
	return nil
}

func (x *TxprepareResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type TxsendRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *TxsendRequest) Reset() {
	*x = TxsendRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[139]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TxsendRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TxsendRequest) ProtoMessage() {}

func (x *TxsendRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[139]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TxsendRequest.ProtoReflect.Descriptor instead.
func (*TxsendRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{139}
}

func (x *TxsendRequest) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type TxsendResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	Tx   []byte `protobuf:"bytes,2,opt,name=tx,proto3" json:"tx,omitempty"`
	Txid []byte `protobuf:"bytes,3,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *TxsendResponse) Reset() {
	*x = TxsendResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[140]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TxsendResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TxsendResponse) ProtoMessage() {}

func (x *TxsendResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[140]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TxsendResponse.ProtoReflect.Descriptor instead.
func (*TxsendResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{140}
}

func (x *TxsendResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *TxsendResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *TxsendResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type ListpeerchannelsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
}

func (x *ListpeerchannelsRequest) Reset() {
	*x = ListpeerchannelsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[141]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsRequest) ProtoMessage() {}

func (x *ListpeerchannelsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[141]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsRequest.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{141}
}

func (x *ListpeerchannelsRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

type ListpeerchannelsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Channels []*ListpeerchannelsChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
}

func (x *ListpeerchannelsResponse) Reset() {
	*x = ListpeerchannelsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[142]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsResponse) ProtoMessage() {}

func (x *ListpeerchannelsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[142]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsResponse.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{142}
}

func (x *ListpeerchannelsResponse) GetChannels() []*ListpeerchannelsChannels {
	if x != nil {
		return x.Channels
	}
	return nil
}

type ListpeerchannelsChannels struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PeerId                    []byte                                                 `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
	PeerConnected             bool                                                   `protobuf:"varint,2,opt,name=peer_connected,json=peerConnected,proto3" json:"peer_connected,omitempty"`
	State                     ListpeerchannelsChannels_ListpeerchannelsChannelsState `protobuf:"varint,3,opt,name=state,proto3,enum=cln.ListpeerchannelsChannels_ListpeerchannelsChannelsState" json:"state,omitempty"`
	ScratchTxid               []byte                                                 `protobuf:"bytes,4,opt,name=scratch_txid,json=scratchTxid,proto3,oneof" json:"scratch_txid,omitempty"`
	Feerate                   *ListpeerchannelsChannelsFeerate                       `protobuf:"bytes,6,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
	Owner                     *string                                                `protobuf:"bytes,7,opt,name=owner,proto3,oneof" json:"owner,omitempty"`
	ShortChannelId            *string                                                `protobuf:"bytes,8,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
	ChannelId                 []byte                                                 `protobuf:"bytes,9,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
	FundingTxid               []byte                                                 `protobuf:"bytes,10,opt,name=funding_txid,json=fundingTxid,proto3,oneof" json:"funding_txid,omitempty"`
	FundingOutnum             *uint32                                                `protobuf:"varint,11,opt,name=funding_outnum,json=fundingOutnum,proto3,oneof" json:"funding_outnum,omitempty"`
	InitialFeerate            *string                                                `protobuf:"bytes,12,opt,name=initial_feerate,json=initialFeerate,proto3,oneof" json:"initial_feerate,omitempty"`
	LastFeerate               *string                                                `protobuf:"bytes,13,opt,name=last_feerate,json=lastFeerate,proto3,oneof" json:"last_feerate,omitempty"`
	NextFeerate               *string                                                `protobuf:"bytes,14,opt,name=next_feerate,json=nextFeerate,proto3,oneof" json:"next_feerate,omitempty"`
	NextFeeStep               *uint32                                                `protobuf:"varint,15,opt,name=next_fee_step,json=nextFeeStep,proto3,oneof" json:"next_fee_step,omitempty"`
	Inflight                  []*ListpeerchannelsChannelsInflight                    `protobuf:"bytes,16,rep,name=inflight,proto3" json:"inflight,omitempty"`
	CloseTo                   []byte                                                 `protobuf:"bytes,17,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
	Private                   *bool                                                  `protobuf:"varint,18,opt,name=private,proto3,oneof" json:"private,omitempty"`
	Opener                    ChannelSide                                            `protobuf:"varint,19,opt,name=opener,proto3,enum=cln.ChannelSide" json:"opener,omitempty"`
	Closer                    *ChannelSide                                           `protobuf:"varint,20,opt,name=closer,proto3,enum=cln.ChannelSide,oneof" json:"closer,omitempty"`
	Funding                   *ListpeerchannelsChannelsFunding                       `protobuf:"bytes,22,opt,name=funding,proto3,oneof" json:"funding,omitempty"`
	ToUsMsat                  *Amount                                                `protobuf:"bytes,23,opt,name=to_us_msat,json=toUsMsat,proto3,oneof" json:"to_us_msat,omitempty"`
	MinToUsMsat               *Amount                                                `protobuf:"bytes,24,opt,name=min_to_us_msat,json=minToUsMsat,proto3,oneof" json:"min_to_us_msat,omitempty"`
	MaxToUsMsat               *Amount                                                `protobuf:"bytes,25,opt,name=max_to_us_msat,json=maxToUsMsat,proto3,oneof" json:"max_to_us_msat,omitempty"`
	TotalMsat                 *Amount                                                `protobuf:"bytes,26,opt,name=total_msat,json=totalMsat,proto3,oneof" json:"total_msat,omitempty"`
	FeeBaseMsat               *Amount                                                `protobuf:"bytes,27,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
	FeeProportionalMillionths *uint32                                                `protobuf:"varint,28,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
	DustLimitMsat             *Amount                                                `protobuf:"bytes,29,opt,name=dust_limit_msat,json=dustLimitMsat,proto3,oneof" json:"dust_limit_msat,omitempty"`
	MaxTotalHtlcInMsat        *Amount                                                `protobuf:"bytes,30,opt,name=max_total_htlc_in_msat,json=maxTotalHtlcInMsat,proto3,oneof" json:"max_total_htlc_in_msat,omitempty"`
	TheirReserveMsat          *Amount                                                `protobuf:"bytes,31,opt,name=their_reserve_msat,json=theirReserveMsat,proto3,oneof" json:"their_reserve_msat,omitempty"`
	OurReserveMsat            *Amount                                                `protobuf:"bytes,32,opt,name=our_reserve_msat,json=ourReserveMsat,proto3,oneof" json:"our_reserve_msat,omitempty"`
	SpendableMsat             *Amount                                                `protobuf:"bytes,33,opt,name=spendable_msat,json=spendableMsat,proto3,oneof" json:"spendable_msat,omitempty"`
	ReceivableMsat            *Amount                                                `protobuf:"bytes,34,opt,name=receivable_msat,json=receivableMsat,proto3,oneof" json:"receivable_msat,omitempty"`
	MinimumHtlcInMsat         *Amount                                                `protobuf:"bytes,35,opt,name=minimum_htlc_in_msat,json=minimumHtlcInMsat,proto3,oneof" json:"minimum_htlc_in_msat,omitempty"`
	MinimumHtlcOutMsat        *Amount                                                `protobuf:"bytes,36,opt,name=minimum_htlc_out_msat,json=minimumHtlcOutMsat,proto3,oneof" json:"minimum_htlc_out_msat,omitempty"`
	MaximumHtlcOutMsat        *Amount                                                `protobuf:"bytes,37,opt,name=maximum_htlc_out_msat,json=maximumHtlcOutMsat,proto3,oneof" json:"maximum_htlc_out_msat,omitempty"`
	TheirToSelfDelay          *uint32                                                `protobuf:"varint,38,opt,name=their_to_self_delay,json=theirToSelfDelay,proto3,oneof" json:"their_to_self_delay,omitempty"`
	OurToSelfDelay            *uint32                                                `protobuf:"varint,39,opt,name=our_to_self_delay,json=ourToSelfDelay,proto3,oneof" json:"our_to_self_delay,omitempty"`
	MaxAcceptedHtlcs          *uint32                                                `protobuf:"varint,40,opt,name=max_accepted_htlcs,json=maxAcceptedHtlcs,proto3,oneof" json:"max_accepted_htlcs,omitempty"`
	Alias                     *ListpeerchannelsChannelsAlias                         `protobuf:"bytes,41,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	Status                    []string                                               `protobuf:"bytes,43,rep,name=status,proto3" json:"status,omitempty"`
	InPaymentsOffered         *uint64                                                `protobuf:"varint,44,opt,name=in_payments_offered,json=inPaymentsOffered,proto3,oneof" json:"in_payments_offered,omitempty"`
	InOfferedMsat             *Amount                                                `protobuf:"bytes,45,opt,name=in_offered_msat,json=inOfferedMsat,proto3,oneof" json:"in_offered_msat,omitempty"`
	InPaymentsFulfilled       *uint64                                                `protobuf:"varint,46,opt,name=in_payments_fulfilled,json=inPaymentsFulfilled,proto3,oneof" json:"in_payments_fulfilled,omitempty"`
	InFulfilledMsat           *Amount                                                `protobuf:"bytes,47,opt,name=in_fulfilled_msat,json=inFulfilledMsat,proto3,oneof" json:"in_fulfilled_msat,omitempty"`
	OutPaymentsOffered        *uint64                                                `protobuf:"varint,48,opt,name=out_payments_offered,json=outPaymentsOffered,proto3,oneof" json:"out_payments_offered,omitempty"`
	OutOfferedMsat            *Amount                                                `protobuf:"bytes,49,opt,name=out_offered_msat,json=outOfferedMsat,proto3,oneof" json:"out_offered_msat,omitempty"`
	OutPaymentsFulfilled      *uint64                                                `protobuf:"varint,50,opt,name=out_payments_fulfilled,json=outPaymentsFulfilled,proto3,oneof" json:"out_payments_fulfilled,omitempty"`
	OutFulfilledMsat          *Amount                                                `protobuf:"bytes,51,opt,name=out_fulfilled_msat,json=outFulfilledMsat,proto3,oneof" json:"out_fulfilled_msat,omitempty"`
	Htlcs                     []*ListpeerchannelsChannelsHtlcs                       `protobuf:"bytes,52,rep,name=htlcs,proto3" json:"htlcs,omitempty"`
	CloseToAddr               *string                                                `protobuf:"bytes,53,opt,name=close_to_addr,json=closeToAddr,proto3,oneof" json:"close_to_addr,omitempty"`
	IgnoreFeeLimits           *bool                                                  `protobuf:"varint,54,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
	Updates                   *ListpeerchannelsChannelsUpdates                       `protobuf:"bytes,55,opt,name=updates,proto3,oneof" json:"updates,omitempty"`
	LastStableConnection      *uint64                                                `protobuf:"varint,56,opt,name=last_stable_connection,json=lastStableConnection,proto3,oneof" json:"last_stable_connection,omitempty"`
	LostState                 *bool                                                  `protobuf:"varint,57,opt,name=lost_state,json=lostState,proto3,oneof" json:"lost_state,omitempty"`
	Reestablished             *bool                                                  `protobuf:"varint,58,opt,name=reestablished,proto3,oneof" json:"reestablished,omitempty"`
	LastTxFeeMsat             *Amount                                                `protobuf:"bytes,59,opt,name=last_tx_fee_msat,json=lastTxFeeMsat,proto3,oneof" json:"last_tx_fee_msat,omitempty"`
	Direction                 *uint32                                                `protobuf:"varint,60,opt,name=direction,proto3,oneof" json:"direction,omitempty"`
}

func (x *ListpeerchannelsChannels) Reset() {
	*x = ListpeerchannelsChannels{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[143]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannels) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannels) ProtoMessage() {}

func (x *ListpeerchannelsChannels) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[143]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannels.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannels) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{143}
}

func (x *ListpeerchannelsChannels) GetPeerId() []byte {
	if x != nil {
		return x.PeerId
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetPeerConnected() bool {
	if x != nil {
		return x.PeerConnected
	}
	return false
}

func (x *ListpeerchannelsChannels) GetState() ListpeerchannelsChannels_ListpeerchannelsChannelsState {
	if x != nil {
		return x.State
	}
	return ListpeerchannelsChannels_OPENINGD
}

func (x *ListpeerchannelsChannels) GetScratchTxid() []byte {
	if x != nil {
		return x.ScratchTxid
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetFeerate() *ListpeerchannelsChannelsFeerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetOwner() string {
	if x != nil && x.Owner != nil {
		return *x.Owner
	}
	return ""
}

func (x *ListpeerchannelsChannels) GetShortChannelId() string {
	if x != nil && x.ShortChannelId != nil {
		return *x.ShortChannelId
	}
	return ""
}

func (x *ListpeerchannelsChannels) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetFundingTxid() []byte {
	if x != nil {
		return x.FundingTxid
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetFundingOutnum() uint32 {
	if x != nil && x.FundingOutnum != nil {
		return *x.FundingOutnum
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetInitialFeerate() string {
	if x != nil && x.InitialFeerate != nil {
		return *x.InitialFeerate
	}
	return ""
}

func (x *ListpeerchannelsChannels) GetLastFeerate() string {
	if x != nil && x.LastFeerate != nil {
		return *x.LastFeerate
	}
	return ""
}

func (x *ListpeerchannelsChannels) GetNextFeerate() string {
	if x != nil && x.NextFeerate != nil {
		return *x.NextFeerate
	}
	return ""
}

func (x *ListpeerchannelsChannels) GetNextFeeStep() uint32 {
	if x != nil && x.NextFeeStep != nil {
		return *x.NextFeeStep
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetInflight() []*ListpeerchannelsChannelsInflight {
	if x != nil {
		return x.Inflight
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetCloseTo() []byte {
	if x != nil {
		return x.CloseTo
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetPrivate() bool {
	if x != nil && x.Private != nil {
		return *x.Private
	}
	return false
}

func (x *ListpeerchannelsChannels) GetOpener() ChannelSide {
	if x != nil {
		return x.Opener
	}
	return ChannelSide_LOCAL
}

func (x *ListpeerchannelsChannels) GetCloser() ChannelSide {
	if x != nil && x.Closer != nil {
		return *x.Closer
	}
	return ChannelSide_LOCAL
}

func (x *ListpeerchannelsChannels) GetFunding() *ListpeerchannelsChannelsFunding {
	if x != nil {
		return x.Funding
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetToUsMsat() *Amount {
	if x != nil {
		return x.ToUsMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetMinToUsMsat() *Amount {
	if x != nil {
		return x.MinToUsMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetMaxToUsMsat() *Amount {
	if x != nil {
		return x.MaxToUsMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetTotalMsat() *Amount {
	if x != nil {
		return x.TotalMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetFeeBaseMsat() *Amount {
	if x != nil {
		return x.FeeBaseMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetFeeProportionalMillionths() uint32 {
	if x != nil && x.FeeProportionalMillionths != nil {
		return *x.FeeProportionalMillionths
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetDustLimitMsat() *Amount {
	if x != nil {
		return x.DustLimitMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetMaxTotalHtlcInMsat() *Amount {
	if x != nil {
		return x.MaxTotalHtlcInMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetTheirReserveMsat() *Amount {
	if x != nil {
		return x.TheirReserveMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetOurReserveMsat() *Amount {
	if x != nil {
		return x.OurReserveMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetSpendableMsat() *Amount {
	if x != nil {
		return x.SpendableMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetReceivableMsat() *Amount {
	if x != nil {
		return x.ReceivableMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetMinimumHtlcInMsat() *Amount {
	if x != nil {
		return x.MinimumHtlcInMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetMinimumHtlcOutMsat() *Amount {
	if x != nil {
		return x.MinimumHtlcOutMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetMaximumHtlcOutMsat() *Amount {
	if x != nil {
		return x.MaximumHtlcOutMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetTheirToSelfDelay() uint32 {
	if x != nil && x.TheirToSelfDelay != nil {
		return *x.TheirToSelfDelay
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetOurToSelfDelay() uint32 {
	if x != nil && x.OurToSelfDelay != nil {
		return *x.OurToSelfDelay
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetMaxAcceptedHtlcs() uint32 {
	if x != nil && x.MaxAcceptedHtlcs != nil {
		return *x.MaxAcceptedHtlcs
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetAlias() *ListpeerchannelsChannelsAlias {
	if x != nil {
		return x.Alias
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetStatus() []string {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetInPaymentsOffered() uint64 {
	if x != nil && x.InPaymentsOffered != nil {
		return *x.InPaymentsOffered
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetInOfferedMsat() *Amount {
	if x != nil {
		return x.InOfferedMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetInPaymentsFulfilled() uint64 {
	if x != nil && x.InPaymentsFulfilled != nil {
		return *x.InPaymentsFulfilled
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetInFulfilledMsat() *Amount {
	if x != nil {
		return x.InFulfilledMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetOutPaymentsOffered() uint64 {
	if x != nil && x.OutPaymentsOffered != nil {
		return *x.OutPaymentsOffered
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetOutOfferedMsat() *Amount {
	if x != nil {
		return x.OutOfferedMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetOutPaymentsFulfilled() uint64 {
	if x != nil && x.OutPaymentsFulfilled != nil {
		return *x.OutPaymentsFulfilled
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetOutFulfilledMsat() *Amount {
	if x != nil {
		return x.OutFulfilledMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetHtlcs() []*ListpeerchannelsChannelsHtlcs {
	if x != nil {
		return x.Htlcs
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetCloseToAddr() string {
	if x != nil && x.CloseToAddr != nil {
		return *x.CloseToAddr
	}
	return ""
}

func (x *ListpeerchannelsChannels) GetIgnoreFeeLimits() bool {
	if x != nil && x.IgnoreFeeLimits != nil {
		return *x.IgnoreFeeLimits
	}
	return false
}

func (x *ListpeerchannelsChannels) GetUpdates() *ListpeerchannelsChannelsUpdates {
	if x != nil {
		return x.Updates
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetLastStableConnection() uint64 {
	if x != nil && x.LastStableConnection != nil {
		return *x.LastStableConnection
	}
	return 0
}

func (x *ListpeerchannelsChannels) GetLostState() bool {
	if x != nil && x.LostState != nil {
		return *x.LostState
	}
	return false
}

func (x *ListpeerchannelsChannels) GetReestablished() bool {
	if x != nil && x.Reestablished != nil {
		return *x.Reestablished
	}
	return false
}

func (x *ListpeerchannelsChannels) GetLastTxFeeMsat() *Amount {
	if x != nil {
		return x.LastTxFeeMsat
	}
	return nil
}

func (x *ListpeerchannelsChannels) GetDirection() uint32 {
	if x != nil && x.Direction != nil {
		return *x.Direction
	}
	return 0
}

type ListpeerchannelsChannelsUpdates struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Local  *ListpeerchannelsChannelsUpdatesLocal  `protobuf:"bytes,1,opt,name=local,proto3" json:"local,omitempty"`
	Remote *ListpeerchannelsChannelsUpdatesRemote `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
}

func (x *ListpeerchannelsChannelsUpdates) Reset() {
	*x = ListpeerchannelsChannelsUpdates{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[144]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannelsUpdates) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannelsUpdates) ProtoMessage() {}

func (x *ListpeerchannelsChannelsUpdates) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[144]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannelsUpdates.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannelsUpdates) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{144}
}

func (x *ListpeerchannelsChannelsUpdates) GetLocal() *ListpeerchannelsChannelsUpdatesLocal {
	if x != nil {
		return x.Local
	}
	return nil
}

func (x *ListpeerchannelsChannelsUpdates) GetRemote() *ListpeerchannelsChannelsUpdatesRemote {
	if x != nil {
		return x.Remote
	}
	return nil
}

type ListpeerchannelsChannelsUpdatesLocal struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	HtlcMinimumMsat           *Amount `protobuf:"bytes,1,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"`
	HtlcMaximumMsat           *Amount `protobuf:"bytes,2,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3" json:"htlc_maximum_msat,omitempty"`
	CltvExpiryDelta           uint32  `protobuf:"varint,3,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3" json:"cltv_expiry_delta,omitempty"`
	FeeBaseMsat               *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"`
	FeeProportionalMillionths uint32  `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"`
}

func (x *ListpeerchannelsChannelsUpdatesLocal) Reset() {
	*x = ListpeerchannelsChannelsUpdatesLocal{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[145]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannelsUpdatesLocal) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannelsUpdatesLocal) ProtoMessage() {}

func (x *ListpeerchannelsChannelsUpdatesLocal) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[145]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannelsUpdatesLocal.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannelsUpdatesLocal) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{145}
}

func (x *ListpeerchannelsChannelsUpdatesLocal) GetHtlcMinimumMsat() *Amount {
	if x != nil {
		return x.HtlcMinimumMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsUpdatesLocal) GetHtlcMaximumMsat() *Amount {
	if x != nil {
		return x.HtlcMaximumMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsUpdatesLocal) GetCltvExpiryDelta() uint32 {
	if x != nil {
		return x.CltvExpiryDelta
	}
	return 0
}

func (x *ListpeerchannelsChannelsUpdatesLocal) GetFeeBaseMsat() *Amount {
	if x != nil {
		return x.FeeBaseMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsUpdatesLocal) GetFeeProportionalMillionths() uint32 {
	if x != nil {
		return x.FeeProportionalMillionths
	}
	return 0
}

type ListpeerchannelsChannelsUpdatesRemote struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	HtlcMinimumMsat           *Amount `protobuf:"bytes,1,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"`
	HtlcMaximumMsat           *Amount `protobuf:"bytes,2,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3" json:"htlc_maximum_msat,omitempty"`
	CltvExpiryDelta           uint32  `protobuf:"varint,3,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3" json:"cltv_expiry_delta,omitempty"`
	FeeBaseMsat               *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"`
	FeeProportionalMillionths uint32  `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"`
}

func (x *ListpeerchannelsChannelsUpdatesRemote) Reset() {
	*x = ListpeerchannelsChannelsUpdatesRemote{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[146]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannelsUpdatesRemote) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannelsUpdatesRemote) ProtoMessage() {}

func (x *ListpeerchannelsChannelsUpdatesRemote) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[146]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannelsUpdatesRemote.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannelsUpdatesRemote) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{146}
}

func (x *ListpeerchannelsChannelsUpdatesRemote) GetHtlcMinimumMsat() *Amount {
	if x != nil {
		return x.HtlcMinimumMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsUpdatesRemote) GetHtlcMaximumMsat() *Amount {
	if x != nil {
		return x.HtlcMaximumMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsUpdatesRemote) GetCltvExpiryDelta() uint32 {
	if x != nil {
		return x.CltvExpiryDelta
	}
	return 0
}

func (x *ListpeerchannelsChannelsUpdatesRemote) GetFeeBaseMsat() *Amount {
	if x != nil {
		return x.FeeBaseMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsUpdatesRemote) GetFeeProportionalMillionths() uint32 {
	if x != nil {
		return x.FeeProportionalMillionths
	}
	return 0
}

type ListpeerchannelsChannelsFeerate struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Perkw uint32 `protobuf:"varint,1,opt,name=perkw,proto3" json:"perkw,omitempty"`
	Perkb uint32 `protobuf:"varint,2,opt,name=perkb,proto3" json:"perkb,omitempty"`
}

func (x *ListpeerchannelsChannelsFeerate) Reset() {
	*x = ListpeerchannelsChannelsFeerate{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[147]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannelsFeerate) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannelsFeerate) ProtoMessage() {}

func (x *ListpeerchannelsChannelsFeerate) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[147]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannelsFeerate.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannelsFeerate) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{147}
}

func (x *ListpeerchannelsChannelsFeerate) GetPerkw() uint32 {
	if x != nil {
		return x.Perkw
	}
	return 0
}

func (x *ListpeerchannelsChannelsFeerate) GetPerkb() uint32 {
	if x != nil {
		return x.Perkb
	}
	return 0
}

type ListpeerchannelsChannelsInflight struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FundingTxid      []byte  `protobuf:"bytes,1,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
	FundingOutnum    uint32  `protobuf:"varint,2,opt,name=funding_outnum,json=fundingOutnum,proto3" json:"funding_outnum,omitempty"`
	Feerate          string  `protobuf:"bytes,3,opt,name=feerate,proto3" json:"feerate,omitempty"`
	TotalFundingMsat *Amount `protobuf:"bytes,4,opt,name=total_funding_msat,json=totalFundingMsat,proto3" json:"total_funding_msat,omitempty"`
	OurFundingMsat   *Amount `protobuf:"bytes,5,opt,name=our_funding_msat,json=ourFundingMsat,proto3" json:"our_funding_msat,omitempty"`
	ScratchTxid      []byte  `protobuf:"bytes,6,opt,name=scratch_txid,json=scratchTxid,proto3,oneof" json:"scratch_txid,omitempty"`
	SpliceAmount     *int64  `protobuf:"zigzag64,7,opt,name=splice_amount,json=spliceAmount,proto3,oneof" json:"splice_amount,omitempty"`
}

func (x *ListpeerchannelsChannelsInflight) Reset() {
	*x = ListpeerchannelsChannelsInflight{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[148]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannelsInflight) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannelsInflight) ProtoMessage() {}

func (x *ListpeerchannelsChannelsInflight) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[148]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannelsInflight.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannelsInflight) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{148}
}

func (x *ListpeerchannelsChannelsInflight) GetFundingTxid() []byte {
	if x != nil {
		return x.FundingTxid
	}
	return nil
}

func (x *ListpeerchannelsChannelsInflight) GetFundingOutnum() uint32 {
	if x != nil {
		return x.FundingOutnum
	}
	return 0
}

func (x *ListpeerchannelsChannelsInflight) GetFeerate() string {
	if x != nil {
		return x.Feerate
	}
	return ""
}

func (x *ListpeerchannelsChannelsInflight) GetTotalFundingMsat() *Amount {
	if x != nil {
		return x.TotalFundingMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsInflight) GetOurFundingMsat() *Amount {
	if x != nil {
		return x.OurFundingMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsInflight) GetScratchTxid() []byte {
	if x != nil {
		return x.ScratchTxid
	}
	return nil
}

func (x *ListpeerchannelsChannelsInflight) GetSpliceAmount() int64 {
	if x != nil && x.SpliceAmount != nil {
		return *x.SpliceAmount
	}
	return 0
}

type ListpeerchannelsChannelsFunding struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PushedMsat      *Amount `protobuf:"bytes,1,opt,name=pushed_msat,json=pushedMsat,proto3,oneof" json:"pushed_msat,omitempty"`
	LocalFundsMsat  *Amount `protobuf:"bytes,2,opt,name=local_funds_msat,json=localFundsMsat,proto3" json:"local_funds_msat,omitempty"`
	RemoteFundsMsat *Amount `protobuf:"bytes,3,opt,name=remote_funds_msat,json=remoteFundsMsat,proto3" json:"remote_funds_msat,omitempty"`
	FeePaidMsat     *Amount `protobuf:"bytes,4,opt,name=fee_paid_msat,json=feePaidMsat,proto3,oneof" json:"fee_paid_msat,omitempty"`
	FeeRcvdMsat     *Amount `protobuf:"bytes,5,opt,name=fee_rcvd_msat,json=feeRcvdMsat,proto3,oneof" json:"fee_rcvd_msat,omitempty"`
}

func (x *ListpeerchannelsChannelsFunding) Reset() {
	*x = ListpeerchannelsChannelsFunding{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[149]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannelsFunding) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannelsFunding) ProtoMessage() {}

func (x *ListpeerchannelsChannelsFunding) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[149]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannelsFunding.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannelsFunding) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{149}
}

func (x *ListpeerchannelsChannelsFunding) GetPushedMsat() *Amount {
	if x != nil {
		return x.PushedMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsFunding) GetLocalFundsMsat() *Amount {
	if x != nil {
		return x.LocalFundsMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsFunding) GetRemoteFundsMsat() *Amount {
	if x != nil {
		return x.RemoteFundsMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsFunding) GetFeePaidMsat() *Amount {
	if x != nil {
		return x.FeePaidMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsFunding) GetFeeRcvdMsat() *Amount {
	if x != nil {
		return x.FeeRcvdMsat
	}
	return nil
}

type ListpeerchannelsChannelsAlias struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Local  *string `protobuf:"bytes,1,opt,name=local,proto3,oneof" json:"local,omitempty"`
	Remote *string `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
}

func (x *ListpeerchannelsChannelsAlias) Reset() {
	*x = ListpeerchannelsChannelsAlias{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[150]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannelsAlias) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannelsAlias) ProtoMessage() {}

func (x *ListpeerchannelsChannelsAlias) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[150]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannelsAlias.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannelsAlias) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{150}
}

func (x *ListpeerchannelsChannelsAlias) GetLocal() string {
	if x != nil && x.Local != nil {
		return *x.Local
	}
	return ""
}

func (x *ListpeerchannelsChannelsAlias) GetRemote() string {
	if x != nil && x.Remote != nil {
		return *x.Remote
	}
	return ""
}

type ListpeerchannelsChannelsHtlcs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Direction    ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection `protobuf:"varint,1,opt,name=direction,proto3,enum=cln.ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection" json:"direction,omitempty"`
	Id           uint64                                                               `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
	AmountMsat   *Amount                                                              `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	Expiry       uint32                                                               `protobuf:"varint,4,opt,name=expiry,proto3" json:"expiry,omitempty"`
	PaymentHash  []byte                                                               `protobuf:"bytes,5,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	LocalTrimmed *bool                                                                `protobuf:"varint,6,opt,name=local_trimmed,json=localTrimmed,proto3,oneof" json:"local_trimmed,omitempty"`
	Status       *string                                                              `protobuf:"bytes,7,opt,name=status,proto3,oneof" json:"status,omitempty"`
	State        HtlcState                                                            `protobuf:"varint,8,opt,name=state,proto3,enum=cln.HtlcState" json:"state,omitempty"`
}

func (x *ListpeerchannelsChannelsHtlcs) Reset() {
	*x = ListpeerchannelsChannelsHtlcs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[151]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpeerchannelsChannelsHtlcs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpeerchannelsChannelsHtlcs) ProtoMessage() {}

func (x *ListpeerchannelsChannelsHtlcs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[151]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpeerchannelsChannelsHtlcs.ProtoReflect.Descriptor instead.
func (*ListpeerchannelsChannelsHtlcs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{151}
}

func (x *ListpeerchannelsChannelsHtlcs) GetDirection() ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection {
	if x != nil {
		return x.Direction
	}
	return ListpeerchannelsChannelsHtlcs_IN
}

func (x *ListpeerchannelsChannelsHtlcs) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *ListpeerchannelsChannelsHtlcs) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *ListpeerchannelsChannelsHtlcs) GetExpiry() uint32 {
	if x != nil {
		return x.Expiry
	}
	return 0
}

func (x *ListpeerchannelsChannelsHtlcs) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *ListpeerchannelsChannelsHtlcs) GetLocalTrimmed() bool {
	if x != nil && x.LocalTrimmed != nil {
		return *x.LocalTrimmed
	}
	return false
}

func (x *ListpeerchannelsChannelsHtlcs) GetStatus() string {
	if x != nil && x.Status != nil {
		return *x.Status
	}
	return ""
}

func (x *ListpeerchannelsChannelsHtlcs) GetState() HtlcState {
	if x != nil {
		return x.State
	}
	return HtlcState_SentAddHtlc
}

type ListclosedchannelsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id []byte `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
}

func (x *ListclosedchannelsRequest) Reset() {
	*x = ListclosedchannelsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[152]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListclosedchannelsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListclosedchannelsRequest) ProtoMessage() {}

func (x *ListclosedchannelsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[152]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListclosedchannelsRequest.ProtoReflect.Descriptor instead.
func (*ListclosedchannelsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{152}
}

func (x *ListclosedchannelsRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

type ListclosedchannelsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Closedchannels []*ListclosedchannelsClosedchannels `protobuf:"bytes,1,rep,name=closedchannels,proto3" json:"closedchannels,omitempty"`
}

func (x *ListclosedchannelsResponse) Reset() {
	*x = ListclosedchannelsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[153]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListclosedchannelsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListclosedchannelsResponse) ProtoMessage() {}

func (x *ListclosedchannelsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[153]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListclosedchannelsResponse.ProtoReflect.Descriptor instead.
func (*ListclosedchannelsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{153}
}

func (x *ListclosedchannelsResponse) GetClosedchannels() []*ListclosedchannelsClosedchannels {
	if x != nil {
		return x.Closedchannels
	}
	return nil
}

type ListclosedchannelsClosedchannels struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PeerId                 []byte                                                                      `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3,oneof" json:"peer_id,omitempty"`
	ChannelId              []byte                                                                      `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	ShortChannelId         *string                                                                     `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
	Alias                  *ListclosedchannelsClosedchannelsAlias                                      `protobuf:"bytes,4,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	Opener                 ChannelSide                                                                 `protobuf:"varint,5,opt,name=opener,proto3,enum=cln.ChannelSide" json:"opener,omitempty"`
	Closer                 *ChannelSide                                                                `protobuf:"varint,6,opt,name=closer,proto3,enum=cln.ChannelSide,oneof" json:"closer,omitempty"`
	Private                bool                                                                        `protobuf:"varint,7,opt,name=private,proto3" json:"private,omitempty"`
	TotalLocalCommitments  uint64                                                                      `protobuf:"varint,9,opt,name=total_local_commitments,json=totalLocalCommitments,proto3" json:"total_local_commitments,omitempty"`
	TotalRemoteCommitments uint64                                                                      `protobuf:"varint,10,opt,name=total_remote_commitments,json=totalRemoteCommitments,proto3" json:"total_remote_commitments,omitempty"`
	TotalHtlcsSent         uint64                                                                      `protobuf:"varint,11,opt,name=total_htlcs_sent,json=totalHtlcsSent,proto3" json:"total_htlcs_sent,omitempty"`
	FundingTxid            []byte                                                                      `protobuf:"bytes,12,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
	FundingOutnum          uint32                                                                      `protobuf:"varint,13,opt,name=funding_outnum,json=fundingOutnum,proto3" json:"funding_outnum,omitempty"`
	Leased                 bool                                                                        `protobuf:"varint,14,opt,name=leased,proto3" json:"leased,omitempty"`
	FundingFeePaidMsat     *Amount                                                                     `protobuf:"bytes,15,opt,name=funding_fee_paid_msat,json=fundingFeePaidMsat,proto3,oneof" json:"funding_fee_paid_msat,omitempty"`
	FundingFeeRcvdMsat     *Amount                                                                     `protobuf:"bytes,16,opt,name=funding_fee_rcvd_msat,json=fundingFeeRcvdMsat,proto3,oneof" json:"funding_fee_rcvd_msat,omitempty"`
	FundingPushedMsat      *Amount                                                                     `protobuf:"bytes,17,opt,name=funding_pushed_msat,json=fundingPushedMsat,proto3,oneof" json:"funding_pushed_msat,omitempty"`
	TotalMsat              *Amount                                                                     `protobuf:"bytes,18,opt,name=total_msat,json=totalMsat,proto3" json:"total_msat,omitempty"`
	FinalToUsMsat          *Amount                                                                     `protobuf:"bytes,19,opt,name=final_to_us_msat,json=finalToUsMsat,proto3" json:"final_to_us_msat,omitempty"`
	MinToUsMsat            *Amount                                                                     `protobuf:"bytes,20,opt,name=min_to_us_msat,json=minToUsMsat,proto3" json:"min_to_us_msat,omitempty"`
	MaxToUsMsat            *Amount                                                                     `protobuf:"bytes,21,opt,name=max_to_us_msat,json=maxToUsMsat,proto3" json:"max_to_us_msat,omitempty"`
	LastCommitmentTxid     []byte                                                                      `protobuf:"bytes,22,opt,name=last_commitment_txid,json=lastCommitmentTxid,proto3,oneof" json:"last_commitment_txid,omitempty"`
	LastCommitmentFeeMsat  *Amount                                                                     `protobuf:"bytes,23,opt,name=last_commitment_fee_msat,json=lastCommitmentFeeMsat,proto3,oneof" json:"last_commitment_fee_msat,omitempty"`
	CloseCause             ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause `protobuf:"varint,24,opt,name=close_cause,json=closeCause,proto3,enum=cln.ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause" json:"close_cause,omitempty"`
	LastStableConnection   *uint64                                                                     `protobuf:"varint,25,opt,name=last_stable_connection,json=lastStableConnection,proto3,oneof" json:"last_stable_connection,omitempty"`
}

func (x *ListclosedchannelsClosedchannels) Reset() {
	*x = ListclosedchannelsClosedchannels{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[154]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListclosedchannelsClosedchannels) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListclosedchannelsClosedchannels) ProtoMessage() {}

func (x *ListclosedchannelsClosedchannels) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[154]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListclosedchannelsClosedchannels.ProtoReflect.Descriptor instead.
func (*ListclosedchannelsClosedchannels) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{154}
}

func (x *ListclosedchannelsClosedchannels) GetPeerId() []byte {
	if x != nil {
		return x.PeerId
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetShortChannelId() string {
	if x != nil && x.ShortChannelId != nil {
		return *x.ShortChannelId
	}
	return ""
}

func (x *ListclosedchannelsClosedchannels) GetAlias() *ListclosedchannelsClosedchannelsAlias {
	if x != nil {
		return x.Alias
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetOpener() ChannelSide {
	if x != nil {
		return x.Opener
	}
	return ChannelSide_LOCAL
}

func (x *ListclosedchannelsClosedchannels) GetCloser() ChannelSide {
	if x != nil && x.Closer != nil {
		return *x.Closer
	}
	return ChannelSide_LOCAL
}

func (x *ListclosedchannelsClosedchannels) GetPrivate() bool {
	if x != nil {
		return x.Private
	}
	return false
}

func (x *ListclosedchannelsClosedchannels) GetTotalLocalCommitments() uint64 {
	if x != nil {
		return x.TotalLocalCommitments
	}
	return 0
}

func (x *ListclosedchannelsClosedchannels) GetTotalRemoteCommitments() uint64 {
	if x != nil {
		return x.TotalRemoteCommitments
	}
	return 0
}

func (x *ListclosedchannelsClosedchannels) GetTotalHtlcsSent() uint64 {
	if x != nil {
		return x.TotalHtlcsSent
	}
	return 0
}

func (x *ListclosedchannelsClosedchannels) GetFundingTxid() []byte {
	if x != nil {
		return x.FundingTxid
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetFundingOutnum() uint32 {
	if x != nil {
		return x.FundingOutnum
	}
	return 0
}

func (x *ListclosedchannelsClosedchannels) GetLeased() bool {
	if x != nil {
		return x.Leased
	}
	return false
}

func (x *ListclosedchannelsClosedchannels) GetFundingFeePaidMsat() *Amount {
	if x != nil {
		return x.FundingFeePaidMsat
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetFundingFeeRcvdMsat() *Amount {
	if x != nil {
		return x.FundingFeeRcvdMsat
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetFundingPushedMsat() *Amount {
	if x != nil {
		return x.FundingPushedMsat
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetTotalMsat() *Amount {
	if x != nil {
		return x.TotalMsat
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetFinalToUsMsat() *Amount {
	if x != nil {
		return x.FinalToUsMsat
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetMinToUsMsat() *Amount {
	if x != nil {
		return x.MinToUsMsat
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetMaxToUsMsat() *Amount {
	if x != nil {
		return x.MaxToUsMsat
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetLastCommitmentTxid() []byte {
	if x != nil {
		return x.LastCommitmentTxid
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetLastCommitmentFeeMsat() *Amount {
	if x != nil {
		return x.LastCommitmentFeeMsat
	}
	return nil
}

func (x *ListclosedchannelsClosedchannels) GetCloseCause() ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause {
	if x != nil {
		return x.CloseCause
	}
	return ListclosedchannelsClosedchannels_UNKNOWN
}

func (x *ListclosedchannelsClosedchannels) GetLastStableConnection() uint64 {
	if x != nil && x.LastStableConnection != nil {
		return *x.LastStableConnection
	}
	return 0
}

type ListclosedchannelsClosedchannelsAlias struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Local  *string `protobuf:"bytes,1,opt,name=local,proto3,oneof" json:"local,omitempty"`
	Remote *string `protobuf:"bytes,2,opt,name=remote,proto3,oneof" json:"remote,omitempty"`
}

func (x *ListclosedchannelsClosedchannelsAlias) Reset() {
	*x = ListclosedchannelsClosedchannelsAlias{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[155]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListclosedchannelsClosedchannelsAlias) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListclosedchannelsClosedchannelsAlias) ProtoMessage() {}

func (x *ListclosedchannelsClosedchannelsAlias) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[155]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListclosedchannelsClosedchannelsAlias.ProtoReflect.Descriptor instead.
func (*ListclosedchannelsClosedchannelsAlias) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{155}
}

func (x *ListclosedchannelsClosedchannelsAlias) GetLocal() string {
	if x != nil && x.Local != nil {
		return *x.Local
	}
	return ""
}

func (x *ListclosedchannelsClosedchannelsAlias) GetRemote() string {
	if x != nil && x.Remote != nil {
		return *x.Remote
	}
	return ""
}

type DecodepayRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bolt11      string  `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
	Description *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
}

func (x *DecodepayRequest) Reset() {
	*x = DecodepayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[156]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodepayRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodepayRequest) ProtoMessage() {}

func (x *DecodepayRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[156]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodepayRequest.ProtoReflect.Descriptor instead.
func (*DecodepayRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{156}
}

func (x *DecodepayRequest) GetBolt11() string {
	if x != nil {
		return x.Bolt11
	}
	return ""
}

func (x *DecodepayRequest) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

type DecodepayResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Currency           string                `protobuf:"bytes,1,opt,name=currency,proto3" json:"currency,omitempty"`
	CreatedAt          uint64                `protobuf:"varint,2,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Expiry             uint64                `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
	Payee              []byte                `protobuf:"bytes,4,opt,name=payee,proto3" json:"payee,omitempty"`
	AmountMsat         *Amount               `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	PaymentHash        []byte                `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Signature          string                `protobuf:"bytes,7,opt,name=signature,proto3" json:"signature,omitempty"`
	Description        *string               `protobuf:"bytes,8,opt,name=description,proto3,oneof" json:"description,omitempty"`
	DescriptionHash    []byte                `protobuf:"bytes,9,opt,name=description_hash,json=descriptionHash,proto3,oneof" json:"description_hash,omitempty"`
	MinFinalCltvExpiry uint32                `protobuf:"varint,10,opt,name=min_final_cltv_expiry,json=minFinalCltvExpiry,proto3" json:"min_final_cltv_expiry,omitempty"`
	PaymentSecret      []byte                `protobuf:"bytes,11,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
	Features           []byte                `protobuf:"bytes,12,opt,name=features,proto3,oneof" json:"features,omitempty"`
	PaymentMetadata    []byte                `protobuf:"bytes,13,opt,name=payment_metadata,json=paymentMetadata,proto3,oneof" json:"payment_metadata,omitempty"`
	Fallbacks          []*DecodepayFallbacks `protobuf:"bytes,14,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
	Extra              []*DecodepayExtra     `protobuf:"bytes,16,rep,name=extra,proto3" json:"extra,omitempty"`
	Routes             *DecodeRoutehintList  `protobuf:"bytes,17,opt,name=routes,proto3,oneof" json:"routes,omitempty"`
}

func (x *DecodepayResponse) Reset() {
	*x = DecodepayResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[157]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodepayResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodepayResponse) ProtoMessage() {}

func (x *DecodepayResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[157]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodepayResponse.ProtoReflect.Descriptor instead.
func (*DecodepayResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{157}
}

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

func (x *DecodepayResponse) GetCreatedAt() uint64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *DecodepayResponse) GetExpiry() uint64 {
	if x != nil {
		return x.Expiry
	}
	return 0
}

func (x *DecodepayResponse) GetPayee() []byte {
	if x != nil {
		return x.Payee
	}
	return nil
}

func (x *DecodepayResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *DecodepayResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *DecodepayResponse) GetSignature() string {
	if x != nil {
		return x.Signature
	}
	return ""
}

func (x *DecodepayResponse) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *DecodepayResponse) GetDescriptionHash() []byte {
	if x != nil {
		return x.DescriptionHash
	}
	return nil
}

func (x *DecodepayResponse) GetMinFinalCltvExpiry() uint32 {
	if x != nil {
		return x.MinFinalCltvExpiry
	}
	return 0
}

func (x *DecodepayResponse) GetPaymentSecret() []byte {
	if x != nil {
		return x.PaymentSecret
	}
	return nil
}

func (x *DecodepayResponse) GetFeatures() []byte {
	if x != nil {
		return x.Features
	}
	return nil
}

func (x *DecodepayResponse) GetPaymentMetadata() []byte {
	if x != nil {
		return x.PaymentMetadata
	}
	return nil
}

func (x *DecodepayResponse) GetFallbacks() []*DecodepayFallbacks {
	if x != nil {
		return x.Fallbacks
	}
	return nil
}

func (x *DecodepayResponse) GetExtra() []*DecodepayExtra {
	if x != nil {
		return x.Extra
	}
	return nil
}

func (x *DecodepayResponse) GetRoutes() *DecodeRoutehintList {
	if x != nil {
		return x.Routes
	}
	return nil
}

type DecodepayFallbacks struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType DecodepayFallbacks_DecodepayFallbacksType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.DecodepayFallbacks_DecodepayFallbacksType" json:"item_type,omitempty"`
	Addr     *string                                   `protobuf:"bytes,2,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
	Hex      []byte                                    `protobuf:"bytes,3,opt,name=hex,proto3" json:"hex,omitempty"`
}

func (x *DecodepayFallbacks) Reset() {
	*x = DecodepayFallbacks{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[158]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodepayFallbacks) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodepayFallbacks) ProtoMessage() {}

func (x *DecodepayFallbacks) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[158]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodepayFallbacks.ProtoReflect.Descriptor instead.
func (*DecodepayFallbacks) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{158}
}

func (x *DecodepayFallbacks) GetItemType() DecodepayFallbacks_DecodepayFallbacksType {
	if x != nil {
		return x.ItemType
	}
	return DecodepayFallbacks_P2PKH
}

func (x *DecodepayFallbacks) GetAddr() string {
	if x != nil && x.Addr != nil {
		return *x.Addr
	}
	return ""
}

func (x *DecodepayFallbacks) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

type DecodepayExtra struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tag  string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
	Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
}

func (x *DecodepayExtra) Reset() {
	*x = DecodepayExtra{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[159]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodepayExtra) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodepayExtra) ProtoMessage() {}

func (x *DecodepayExtra) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[159]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodepayExtra.ProtoReflect.Descriptor instead.
func (*DecodepayExtra) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{159}
}

func (x *DecodepayExtra) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *DecodepayExtra) GetData() string {
	if x != nil {
		return x.Data
	}
	return ""
}

type DecodeRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	String_ string `protobuf:"bytes,1,opt,name=string,proto3" json:"string,omitempty"`
}

func (x *DecodeRequest) Reset() {
	*x = DecodeRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[160]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeRequest) ProtoMessage() {}

func (x *DecodeRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[160]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeRequest.ProtoReflect.Descriptor instead.
func (*DecodeRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{160}
}

func (x *DecodeRequest) GetString_() string {
	if x != nil {
		return x.String_
	}
	return ""
}

type DecodeResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType                                DecodeResponse_DecodeType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.DecodeResponse_DecodeType" json:"item_type,omitempty"`
	Valid                                   bool                      `protobuf:"varint,2,opt,name=valid,proto3" json:"valid,omitempty"`
	OfferId                                 []byte                    `protobuf:"bytes,3,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
	OfferChains                             [][]byte                  `protobuf:"bytes,4,rep,name=offer_chains,json=offerChains,proto3" json:"offer_chains,omitempty"`
	OfferMetadata                           []byte                    `protobuf:"bytes,5,opt,name=offer_metadata,json=offerMetadata,proto3,oneof" json:"offer_metadata,omitempty"`
	OfferCurrency                           *string                   `protobuf:"bytes,6,opt,name=offer_currency,json=offerCurrency,proto3,oneof" json:"offer_currency,omitempty"`
	WarningUnknownOfferCurrency             *string                   `protobuf:"bytes,7,opt,name=warning_unknown_offer_currency,json=warningUnknownOfferCurrency,proto3,oneof" json:"warning_unknown_offer_currency,omitempty"`
	CurrencyMinorUnit                       *uint32                   `protobuf:"varint,8,opt,name=currency_minor_unit,json=currencyMinorUnit,proto3,oneof" json:"currency_minor_unit,omitempty"`
	OfferAmount                             *uint64                   `protobuf:"varint,9,opt,name=offer_amount,json=offerAmount,proto3,oneof" json:"offer_amount,omitempty"`
	OfferAmountMsat                         *Amount                   `protobuf:"bytes,10,opt,name=offer_amount_msat,json=offerAmountMsat,proto3,oneof" json:"offer_amount_msat,omitempty"`
	OfferDescription                        *string                   `protobuf:"bytes,11,opt,name=offer_description,json=offerDescription,proto3,oneof" json:"offer_description,omitempty"`
	OfferIssuer                             *string                   `protobuf:"bytes,12,opt,name=offer_issuer,json=offerIssuer,proto3,oneof" json:"offer_issuer,omitempty"`
	OfferFeatures                           []byte                    `protobuf:"bytes,13,opt,name=offer_features,json=offerFeatures,proto3,oneof" json:"offer_features,omitempty"`
	OfferAbsoluteExpiry                     *uint64                   `protobuf:"varint,14,opt,name=offer_absolute_expiry,json=offerAbsoluteExpiry,proto3,oneof" json:"offer_absolute_expiry,omitempty"`
	OfferQuantityMax                        *uint64                   `protobuf:"varint,15,opt,name=offer_quantity_max,json=offerQuantityMax,proto3,oneof" json:"offer_quantity_max,omitempty"`
	OfferPaths                              []*DecodeOfferPaths       `protobuf:"bytes,16,rep,name=offer_paths,json=offerPaths,proto3" json:"offer_paths,omitempty"`
	OfferNodeId                             []byte                    `protobuf:"bytes,17,opt,name=offer_node_id,json=offerNodeId,proto3,oneof" json:"offer_node_id,omitempty"`
	WarningMissingOfferNodeId               *string                   `protobuf:"bytes,20,opt,name=warning_missing_offer_node_id,json=warningMissingOfferNodeId,proto3,oneof" json:"warning_missing_offer_node_id,omitempty"`
	WarningInvalidOfferDescription          *string                   `protobuf:"bytes,21,opt,name=warning_invalid_offer_description,json=warningInvalidOfferDescription,proto3,oneof" json:"warning_invalid_offer_description,omitempty"`
	WarningMissingOfferDescription          *string                   `protobuf:"bytes,22,opt,name=warning_missing_offer_description,json=warningMissingOfferDescription,proto3,oneof" json:"warning_missing_offer_description,omitempty"`
	WarningInvalidOfferCurrency             *string                   `protobuf:"bytes,23,opt,name=warning_invalid_offer_currency,json=warningInvalidOfferCurrency,proto3,oneof" json:"warning_invalid_offer_currency,omitempty"`
	WarningInvalidOfferIssuer               *string                   `protobuf:"bytes,24,opt,name=warning_invalid_offer_issuer,json=warningInvalidOfferIssuer,proto3,oneof" json:"warning_invalid_offer_issuer,omitempty"`
	InvreqMetadata                          []byte                    `protobuf:"bytes,25,opt,name=invreq_metadata,json=invreqMetadata,proto3,oneof" json:"invreq_metadata,omitempty"`
	InvreqPayerId                           []byte                    `protobuf:"bytes,26,opt,name=invreq_payer_id,json=invreqPayerId,proto3,oneof" json:"invreq_payer_id,omitempty"`
	InvreqChain                             []byte                    `protobuf:"bytes,27,opt,name=invreq_chain,json=invreqChain,proto3,oneof" json:"invreq_chain,omitempty"`
	InvreqAmountMsat                        *Amount                   `protobuf:"bytes,28,opt,name=invreq_amount_msat,json=invreqAmountMsat,proto3,oneof" json:"invreq_amount_msat,omitempty"`
	InvreqFeatures                          []byte                    `protobuf:"bytes,29,opt,name=invreq_features,json=invreqFeatures,proto3,oneof" json:"invreq_features,omitempty"`
	InvreqQuantity                          *uint64                   `protobuf:"varint,30,opt,name=invreq_quantity,json=invreqQuantity,proto3,oneof" json:"invreq_quantity,omitempty"`
	InvreqPayerNote                         *string                   `protobuf:"bytes,31,opt,name=invreq_payer_note,json=invreqPayerNote,proto3,oneof" json:"invreq_payer_note,omitempty"`
	InvreqRecurrenceCounter                 *uint32                   `protobuf:"varint,32,opt,name=invreq_recurrence_counter,json=invreqRecurrenceCounter,proto3,oneof" json:"invreq_recurrence_counter,omitempty"`
	InvreqRecurrenceStart                   *uint32                   `protobuf:"varint,33,opt,name=invreq_recurrence_start,json=invreqRecurrenceStart,proto3,oneof" json:"invreq_recurrence_start,omitempty"`
	WarningMissingInvreqMetadata            *string                   `protobuf:"bytes,35,opt,name=warning_missing_invreq_metadata,json=warningMissingInvreqMetadata,proto3,oneof" json:"warning_missing_invreq_metadata,omitempty"`
	WarningMissingInvreqPayerId             *string                   `protobuf:"bytes,36,opt,name=warning_missing_invreq_payer_id,json=warningMissingInvreqPayerId,proto3,oneof" json:"warning_missing_invreq_payer_id,omitempty"`
	WarningInvalidInvreqPayerNote           *string                   `protobuf:"bytes,37,opt,name=warning_invalid_invreq_payer_note,json=warningInvalidInvreqPayerNote,proto3,oneof" json:"warning_invalid_invreq_payer_note,omitempty"`
	WarningMissingInvoiceRequestSignature   *string                   `protobuf:"bytes,38,opt,name=warning_missing_invoice_request_signature,json=warningMissingInvoiceRequestSignature,proto3,oneof" json:"warning_missing_invoice_request_signature,omitempty"`
	WarningInvalidInvoiceRequestSignature   *string                   `protobuf:"bytes,39,opt,name=warning_invalid_invoice_request_signature,json=warningInvalidInvoiceRequestSignature,proto3,oneof" json:"warning_invalid_invoice_request_signature,omitempty"`
	InvoiceCreatedAt                        *uint64                   `protobuf:"varint,41,opt,name=invoice_created_at,json=invoiceCreatedAt,proto3,oneof" json:"invoice_created_at,omitempty"`
	InvoiceRelativeExpiry                   *uint32                   `protobuf:"varint,42,opt,name=invoice_relative_expiry,json=invoiceRelativeExpiry,proto3,oneof" json:"invoice_relative_expiry,omitempty"`
	InvoicePaymentHash                      []byte                    `protobuf:"bytes,43,opt,name=invoice_payment_hash,json=invoicePaymentHash,proto3,oneof" json:"invoice_payment_hash,omitempty"`
	InvoiceAmountMsat                       *Amount                   `protobuf:"bytes,44,opt,name=invoice_amount_msat,json=invoiceAmountMsat,proto3,oneof" json:"invoice_amount_msat,omitempty"`
	InvoiceFallbacks                        []*DecodeInvoiceFallbacks `protobuf:"bytes,45,rep,name=invoice_fallbacks,json=invoiceFallbacks,proto3" json:"invoice_fallbacks,omitempty"`
	InvoiceFeatures                         []byte                    `protobuf:"bytes,46,opt,name=invoice_features,json=invoiceFeatures,proto3,oneof" json:"invoice_features,omitempty"`
	InvoiceNodeId                           []byte                    `protobuf:"bytes,47,opt,name=invoice_node_id,json=invoiceNodeId,proto3,oneof" json:"invoice_node_id,omitempty"`
	InvoiceRecurrenceBasetime               *uint64                   `protobuf:"varint,48,opt,name=invoice_recurrence_basetime,json=invoiceRecurrenceBasetime,proto3,oneof" json:"invoice_recurrence_basetime,omitempty"`
	WarningMissingInvoicePaths              *string                   `protobuf:"bytes,50,opt,name=warning_missing_invoice_paths,json=warningMissingInvoicePaths,proto3,oneof" json:"warning_missing_invoice_paths,omitempty"`
	WarningMissingInvoiceBlindedpay         *string                   `protobuf:"bytes,51,opt,name=warning_missing_invoice_blindedpay,json=warningMissingInvoiceBlindedpay,proto3,oneof" json:"warning_missing_invoice_blindedpay,omitempty"`
	WarningMissingInvoiceCreatedAt          *string                   `protobuf:"bytes,52,opt,name=warning_missing_invoice_created_at,json=warningMissingInvoiceCreatedAt,proto3,oneof" json:"warning_missing_invoice_created_at,omitempty"`
	WarningMissingInvoicePaymentHash        *string                   `protobuf:"bytes,53,opt,name=warning_missing_invoice_payment_hash,json=warningMissingInvoicePaymentHash,proto3,oneof" json:"warning_missing_invoice_payment_hash,omitempty"`
	WarningMissingInvoiceAmount             *string                   `protobuf:"bytes,54,opt,name=warning_missing_invoice_amount,json=warningMissingInvoiceAmount,proto3,oneof" json:"warning_missing_invoice_amount,omitempty"`
	WarningMissingInvoiceRecurrenceBasetime *string                   `protobuf:"bytes,55,opt,name=warning_missing_invoice_recurrence_basetime,json=warningMissingInvoiceRecurrenceBasetime,proto3,oneof" json:"warning_missing_invoice_recurrence_basetime,omitempty"`
	WarningMissingInvoiceNodeId             *string                   `protobuf:"bytes,56,opt,name=warning_missing_invoice_node_id,json=warningMissingInvoiceNodeId,proto3,oneof" json:"warning_missing_invoice_node_id,omitempty"`
	WarningMissingInvoiceSignature          *string                   `protobuf:"bytes,57,opt,name=warning_missing_invoice_signature,json=warningMissingInvoiceSignature,proto3,oneof" json:"warning_missing_invoice_signature,omitempty"`
	WarningInvalidInvoiceSignature          *string                   `protobuf:"bytes,58,opt,name=warning_invalid_invoice_signature,json=warningInvalidInvoiceSignature,proto3,oneof" json:"warning_invalid_invoice_signature,omitempty"`
	Fallbacks                               []*DecodeFallbacks        `protobuf:"bytes,59,rep,name=fallbacks,proto3" json:"fallbacks,omitempty"`
	CreatedAt                               *uint64                   `protobuf:"varint,60,opt,name=created_at,json=createdAt,proto3,oneof" json:"created_at,omitempty"`
	Expiry                                  *uint64                   `protobuf:"varint,61,opt,name=expiry,proto3,oneof" json:"expiry,omitempty"`
	Payee                                   []byte                    `protobuf:"bytes,62,opt,name=payee,proto3,oneof" json:"payee,omitempty"`
	PaymentHash                             []byte                    `protobuf:"bytes,63,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
	DescriptionHash                         []byte                    `protobuf:"bytes,64,opt,name=description_hash,json=descriptionHash,proto3,oneof" json:"description_hash,omitempty"`
	MinFinalCltvExpiry                      *uint32                   `protobuf:"varint,65,opt,name=min_final_cltv_expiry,json=minFinalCltvExpiry,proto3,oneof" json:"min_final_cltv_expiry,omitempty"`
	PaymentSecret                           []byte                    `protobuf:"bytes,66,opt,name=payment_secret,json=paymentSecret,proto3,oneof" json:"payment_secret,omitempty"`
	PaymentMetadata                         []byte                    `protobuf:"bytes,67,opt,name=payment_metadata,json=paymentMetadata,proto3,oneof" json:"payment_metadata,omitempty"`
	Extra                                   []*DecodeExtra            `protobuf:"bytes,69,rep,name=extra,proto3" json:"extra,omitempty"`
	UniqueId                                *string                   `protobuf:"bytes,70,opt,name=unique_id,json=uniqueId,proto3,oneof" json:"unique_id,omitempty"`
	Version                                 *string                   `protobuf:"bytes,71,opt,name=version,proto3,oneof" json:"version,omitempty"`
	String_                                 *string                   `protobuf:"bytes,72,opt,name=string,proto3,oneof" json:"string,omitempty"`
	Restrictions                            []*DecodeRestrictions     `protobuf:"bytes,73,rep,name=restrictions,proto3" json:"restrictions,omitempty"`
	WarningRuneInvalidUtf8                  *string                   `protobuf:"bytes,74,opt,name=warning_rune_invalid_utf8,json=warningRuneInvalidUtf8,proto3,oneof" json:"warning_rune_invalid_utf8,omitempty"`
	Hex                                     []byte                    `protobuf:"bytes,75,opt,name=hex,proto3,oneof" json:"hex,omitempty"`
	Decrypted                               []byte                    `protobuf:"bytes,76,opt,name=decrypted,proto3,oneof" json:"decrypted,omitempty"`
	Signature                               *string                   `protobuf:"bytes,77,opt,name=signature,proto3,oneof" json:"signature,omitempty"`
	Currency                                *string                   `protobuf:"bytes,78,opt,name=currency,proto3,oneof" json:"currency,omitempty"`
	AmountMsat                              *Amount                   `protobuf:"bytes,79,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Description                             *string                   `protobuf:"bytes,80,opt,name=description,proto3,oneof" json:"description,omitempty"`
	Features                                []byte                    `protobuf:"bytes,81,opt,name=features,proto3,oneof" json:"features,omitempty"`
	Routes                                  *DecodeRoutehintList      `protobuf:"bytes,82,opt,name=routes,proto3,oneof" json:"routes,omitempty"`
	OfferIssuerId                           []byte                    `protobuf:"bytes,83,opt,name=offer_issuer_id,json=offerIssuerId,proto3,oneof" json:"offer_issuer_id,omitempty"`
	WarningMissingOfferIssuerId             *string                   `protobuf:"bytes,84,opt,name=warning_missing_offer_issuer_id,json=warningMissingOfferIssuerId,proto3,oneof" json:"warning_missing_offer_issuer_id,omitempty"`
	InvreqPaths                             []*DecodeInvreqPaths      `protobuf:"bytes,85,rep,name=invreq_paths,json=invreqPaths,proto3" json:"invreq_paths,omitempty"`
	WarningEmptyBlindedPath                 *string                   `protobuf:"bytes,86,opt,name=warning_empty_blinded_path,json=warningEmptyBlindedPath,proto3,oneof" json:"warning_empty_blinded_path,omitempty"`
}

func (x *DecodeResponse) Reset() {
	*x = DecodeResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[161]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeResponse) ProtoMessage() {}

func (x *DecodeResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[161]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeResponse.ProtoReflect.Descriptor instead.
func (*DecodeResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{161}
}

func (x *DecodeResponse) GetItemType() DecodeResponse_DecodeType {
	if x != nil {
		return x.ItemType
	}
	return DecodeResponse_BOLT12_OFFER
}

func (x *DecodeResponse) GetValid() bool {
	if x != nil {
		return x.Valid
	}
	return false
}

func (x *DecodeResponse) GetOfferId() []byte {
	if x != nil {
		return x.OfferId
	}
	return nil
}

func (x *DecodeResponse) GetOfferChains() [][]byte {
	if x != nil {
		return x.OfferChains
	}
	return nil
}

func (x *DecodeResponse) GetOfferMetadata() []byte {
	if x != nil {
		return x.OfferMetadata
	}
	return nil
}

func (x *DecodeResponse) GetOfferCurrency() string {
	if x != nil && x.OfferCurrency != nil {
		return *x.OfferCurrency
	}
	return ""
}

func (x *DecodeResponse) GetWarningUnknownOfferCurrency() string {
	if x != nil && x.WarningUnknownOfferCurrency != nil {
		return *x.WarningUnknownOfferCurrency
	}
	return ""
}

func (x *DecodeResponse) GetCurrencyMinorUnit() uint32 {
	if x != nil && x.CurrencyMinorUnit != nil {
		return *x.CurrencyMinorUnit
	}
	return 0
}

func (x *DecodeResponse) GetOfferAmount() uint64 {
	if x != nil && x.OfferAmount != nil {
		return *x.OfferAmount
	}
	return 0
}

func (x *DecodeResponse) GetOfferAmountMsat() *Amount {
	if x != nil {
		return x.OfferAmountMsat
	}
	return nil
}

func (x *DecodeResponse) GetOfferDescription() string {
	if x != nil && x.OfferDescription != nil {
		return *x.OfferDescription
	}
	return ""
}

func (x *DecodeResponse) GetOfferIssuer() string {
	if x != nil && x.OfferIssuer != nil {
		return *x.OfferIssuer
	}
	return ""
}

func (x *DecodeResponse) GetOfferFeatures() []byte {
	if x != nil {
		return x.OfferFeatures
	}
	return nil
}

func (x *DecodeResponse) GetOfferAbsoluteExpiry() uint64 {
	if x != nil && x.OfferAbsoluteExpiry != nil {
		return *x.OfferAbsoluteExpiry
	}
	return 0
}

func (x *DecodeResponse) GetOfferQuantityMax() uint64 {
	if x != nil && x.OfferQuantityMax != nil {
		return *x.OfferQuantityMax
	}
	return 0
}

func (x *DecodeResponse) GetOfferPaths() []*DecodeOfferPaths {
	if x != nil {
		return x.OfferPaths
	}
	return nil
}

func (x *DecodeResponse) GetOfferNodeId() []byte {
	if x != nil {
		return x.OfferNodeId
	}
	return nil
}

func (x *DecodeResponse) GetWarningMissingOfferNodeId() string {
	if x != nil && x.WarningMissingOfferNodeId != nil {
		return *x.WarningMissingOfferNodeId
	}
	return ""
}

func (x *DecodeResponse) GetWarningInvalidOfferDescription() string {
	if x != nil && x.WarningInvalidOfferDescription != nil {
		return *x.WarningInvalidOfferDescription
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingOfferDescription() string {
	if x != nil && x.WarningMissingOfferDescription != nil {
		return *x.WarningMissingOfferDescription
	}
	return ""
}

func (x *DecodeResponse) GetWarningInvalidOfferCurrency() string {
	if x != nil && x.WarningInvalidOfferCurrency != nil {
		return *x.WarningInvalidOfferCurrency
	}
	return ""
}

func (x *DecodeResponse) GetWarningInvalidOfferIssuer() string {
	if x != nil && x.WarningInvalidOfferIssuer != nil {
		return *x.WarningInvalidOfferIssuer
	}
	return ""
}

func (x *DecodeResponse) GetInvreqMetadata() []byte {
	if x != nil {
		return x.InvreqMetadata
	}
	return nil
}

func (x *DecodeResponse) GetInvreqPayerId() []byte {
	if x != nil {
		return x.InvreqPayerId
	}
	return nil
}

func (x *DecodeResponse) GetInvreqChain() []byte {
	if x != nil {
		return x.InvreqChain
	}
	return nil
}

func (x *DecodeResponse) GetInvreqAmountMsat() *Amount {
	if x != nil {
		return x.InvreqAmountMsat
	}
	return nil
}

func (x *DecodeResponse) GetInvreqFeatures() []byte {
	if x != nil {
		return x.InvreqFeatures
	}
	return nil
}

func (x *DecodeResponse) GetInvreqQuantity() uint64 {
	if x != nil && x.InvreqQuantity != nil {
		return *x.InvreqQuantity
	}
	return 0
}

func (x *DecodeResponse) GetInvreqPayerNote() string {
	if x != nil && x.InvreqPayerNote != nil {
		return *x.InvreqPayerNote
	}
	return ""
}

func (x *DecodeResponse) GetInvreqRecurrenceCounter() uint32 {
	if x != nil && x.InvreqRecurrenceCounter != nil {
		return *x.InvreqRecurrenceCounter
	}
	return 0
}

func (x *DecodeResponse) GetInvreqRecurrenceStart() uint32 {
	if x != nil && x.InvreqRecurrenceStart != nil {
		return *x.InvreqRecurrenceStart
	}
	return 0
}

func (x *DecodeResponse) GetWarningMissingInvreqMetadata() string {
	if x != nil && x.WarningMissingInvreqMetadata != nil {
		return *x.WarningMissingInvreqMetadata
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvreqPayerId() string {
	if x != nil && x.WarningMissingInvreqPayerId != nil {
		return *x.WarningMissingInvreqPayerId
	}
	return ""
}

func (x *DecodeResponse) GetWarningInvalidInvreqPayerNote() string {
	if x != nil && x.WarningInvalidInvreqPayerNote != nil {
		return *x.WarningInvalidInvreqPayerNote
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvoiceRequestSignature() string {
	if x != nil && x.WarningMissingInvoiceRequestSignature != nil {
		return *x.WarningMissingInvoiceRequestSignature
	}
	return ""
}

func (x *DecodeResponse) GetWarningInvalidInvoiceRequestSignature() string {
	if x != nil && x.WarningInvalidInvoiceRequestSignature != nil {
		return *x.WarningInvalidInvoiceRequestSignature
	}
	return ""
}

func (x *DecodeResponse) GetInvoiceCreatedAt() uint64 {
	if x != nil && x.InvoiceCreatedAt != nil {
		return *x.InvoiceCreatedAt
	}
	return 0
}

func (x *DecodeResponse) GetInvoiceRelativeExpiry() uint32 {
	if x != nil && x.InvoiceRelativeExpiry != nil {
		return *x.InvoiceRelativeExpiry
	}
	return 0
}

func (x *DecodeResponse) GetInvoicePaymentHash() []byte {
	if x != nil {
		return x.InvoicePaymentHash
	}
	return nil
}

func (x *DecodeResponse) GetInvoiceAmountMsat() *Amount {
	if x != nil {
		return x.InvoiceAmountMsat
	}
	return nil
}

func (x *DecodeResponse) GetInvoiceFallbacks() []*DecodeInvoiceFallbacks {
	if x != nil {
		return x.InvoiceFallbacks
	}
	return nil
}

func (x *DecodeResponse) GetInvoiceFeatures() []byte {
	if x != nil {
		return x.InvoiceFeatures
	}
	return nil
}

func (x *DecodeResponse) GetInvoiceNodeId() []byte {
	if x != nil {
		return x.InvoiceNodeId
	}
	return nil
}

func (x *DecodeResponse) GetInvoiceRecurrenceBasetime() uint64 {
	if x != nil && x.InvoiceRecurrenceBasetime != nil {
		return *x.InvoiceRecurrenceBasetime
	}
	return 0
}

func (x *DecodeResponse) GetWarningMissingInvoicePaths() string {
	if x != nil && x.WarningMissingInvoicePaths != nil {
		return *x.WarningMissingInvoicePaths
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvoiceBlindedpay() string {
	if x != nil && x.WarningMissingInvoiceBlindedpay != nil {
		return *x.WarningMissingInvoiceBlindedpay
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvoiceCreatedAt() string {
	if x != nil && x.WarningMissingInvoiceCreatedAt != nil {
		return *x.WarningMissingInvoiceCreatedAt
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvoicePaymentHash() string {
	if x != nil && x.WarningMissingInvoicePaymentHash != nil {
		return *x.WarningMissingInvoicePaymentHash
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvoiceAmount() string {
	if x != nil && x.WarningMissingInvoiceAmount != nil {
		return *x.WarningMissingInvoiceAmount
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvoiceRecurrenceBasetime() string {
	if x != nil && x.WarningMissingInvoiceRecurrenceBasetime != nil {
		return *x.WarningMissingInvoiceRecurrenceBasetime
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvoiceNodeId() string {
	if x != nil && x.WarningMissingInvoiceNodeId != nil {
		return *x.WarningMissingInvoiceNodeId
	}
	return ""
}

func (x *DecodeResponse) GetWarningMissingInvoiceSignature() string {
	if x != nil && x.WarningMissingInvoiceSignature != nil {
		return *x.WarningMissingInvoiceSignature
	}
	return ""
}

func (x *DecodeResponse) GetWarningInvalidInvoiceSignature() string {
	if x != nil && x.WarningInvalidInvoiceSignature != nil {
		return *x.WarningInvalidInvoiceSignature
	}
	return ""
}

func (x *DecodeResponse) GetFallbacks() []*DecodeFallbacks {
	if x != nil {
		return x.Fallbacks
	}
	return nil
}

func (x *DecodeResponse) GetCreatedAt() uint64 {
	if x != nil && x.CreatedAt != nil {
		return *x.CreatedAt
	}
	return 0
}

func (x *DecodeResponse) GetExpiry() uint64 {
	if x != nil && x.Expiry != nil {
		return *x.Expiry
	}
	return 0
}

func (x *DecodeResponse) GetPayee() []byte {
	if x != nil {
		return x.Payee
	}
	return nil
}

func (x *DecodeResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *DecodeResponse) GetDescriptionHash() []byte {
	if x != nil {
		return x.DescriptionHash
	}
	return nil
}

func (x *DecodeResponse) GetMinFinalCltvExpiry() uint32 {
	if x != nil && x.MinFinalCltvExpiry != nil {
		return *x.MinFinalCltvExpiry
	}
	return 0
}

func (x *DecodeResponse) GetPaymentSecret() []byte {
	if x != nil {
		return x.PaymentSecret
	}
	return nil
}

func (x *DecodeResponse) GetPaymentMetadata() []byte {
	if x != nil {
		return x.PaymentMetadata
	}
	return nil
}

func (x *DecodeResponse) GetExtra() []*DecodeExtra {
	if x != nil {
		return x.Extra
	}
	return nil
}

func (x *DecodeResponse) GetUniqueId() string {
	if x != nil && x.UniqueId != nil {
		return *x.UniqueId
	}
	return ""
}

func (x *DecodeResponse) GetVersion() string {
	if x != nil && x.Version != nil {
		return *x.Version
	}
	return ""
}

func (x *DecodeResponse) GetString_() string {
	if x != nil && x.String_ != nil {
		return *x.String_
	}
	return ""
}

func (x *DecodeResponse) GetRestrictions() []*DecodeRestrictions {
	if x != nil {
		return x.Restrictions
	}
	return nil
}

func (x *DecodeResponse) GetWarningRuneInvalidUtf8() string {
	if x != nil && x.WarningRuneInvalidUtf8 != nil {
		return *x.WarningRuneInvalidUtf8
	}
	return ""
}

func (x *DecodeResponse) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

func (x *DecodeResponse) GetDecrypted() []byte {
	if x != nil {
		return x.Decrypted
	}
	return nil
}

func (x *DecodeResponse) GetSignature() string {
	if x != nil && x.Signature != nil {
		return *x.Signature
	}
	return ""
}

func (x *DecodeResponse) GetCurrency() string {
	if x != nil && x.Currency != nil {
		return *x.Currency
	}
	return ""
}

func (x *DecodeResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *DecodeResponse) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *DecodeResponse) GetFeatures() []byte {
	if x != nil {
		return x.Features
	}
	return nil
}

func (x *DecodeResponse) GetRoutes() *DecodeRoutehintList {
	if x != nil {
		return x.Routes
	}
	return nil
}

func (x *DecodeResponse) GetOfferIssuerId() []byte {
	if x != nil {
		return x.OfferIssuerId
	}
	return nil
}

func (x *DecodeResponse) GetWarningMissingOfferIssuerId() string {
	if x != nil && x.WarningMissingOfferIssuerId != nil {
		return *x.WarningMissingOfferIssuerId
	}
	return ""
}

func (x *DecodeResponse) GetInvreqPaths() []*DecodeInvreqPaths {
	if x != nil {
		return x.InvreqPaths
	}
	return nil
}

func (x *DecodeResponse) GetWarningEmptyBlindedPath() string {
	if x != nil && x.WarningEmptyBlindedPath != nil {
		return *x.WarningEmptyBlindedPath
	}
	return ""
}

type DecodeOfferPaths struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FirstNodeId  []byte  `protobuf:"bytes,1,opt,name=first_node_id,json=firstNodeId,proto3,oneof" json:"first_node_id,omitempty"`
	Blinding     []byte  `protobuf:"bytes,2,opt,name=blinding,proto3,oneof" json:"blinding,omitempty"`
	FirstScidDir *uint32 `protobuf:"varint,4,opt,name=first_scid_dir,json=firstScidDir,proto3,oneof" json:"first_scid_dir,omitempty"`
	FirstScid    *string `protobuf:"bytes,5,opt,name=first_scid,json=firstScid,proto3,oneof" json:"first_scid,omitempty"`
	FirstPathKey []byte  `protobuf:"bytes,6,opt,name=first_path_key,json=firstPathKey,proto3,oneof" json:"first_path_key,omitempty"`
}

func (x *DecodeOfferPaths) Reset() {
	*x = DecodeOfferPaths{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[162]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeOfferPaths) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeOfferPaths) ProtoMessage() {}

func (x *DecodeOfferPaths) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[162]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeOfferPaths.ProtoReflect.Descriptor instead.
func (*DecodeOfferPaths) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{162}
}

func (x *DecodeOfferPaths) GetFirstNodeId() []byte {
	if x != nil {
		return x.FirstNodeId
	}
	return nil
}

func (x *DecodeOfferPaths) GetBlinding() []byte {
	if x != nil {
		return x.Blinding
	}
	return nil
}

func (x *DecodeOfferPaths) GetFirstScidDir() uint32 {
	if x != nil && x.FirstScidDir != nil {
		return *x.FirstScidDir
	}
	return 0
}

func (x *DecodeOfferPaths) GetFirstScid() string {
	if x != nil && x.FirstScid != nil {
		return *x.FirstScid
	}
	return ""
}

func (x *DecodeOfferPaths) GetFirstPathKey() []byte {
	if x != nil {
		return x.FirstPathKey
	}
	return nil
}

type DecodeOfferRecurrencePaywindow struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	SecondsBefore      uint32 `protobuf:"varint,1,opt,name=seconds_before,json=secondsBefore,proto3" json:"seconds_before,omitempty"`
	SecondsAfter       uint32 `protobuf:"varint,2,opt,name=seconds_after,json=secondsAfter,proto3" json:"seconds_after,omitempty"`
	ProportionalAmount *bool  `protobuf:"varint,3,opt,name=proportional_amount,json=proportionalAmount,proto3,oneof" json:"proportional_amount,omitempty"`
}

func (x *DecodeOfferRecurrencePaywindow) Reset() {
	*x = DecodeOfferRecurrencePaywindow{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[163]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeOfferRecurrencePaywindow) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeOfferRecurrencePaywindow) ProtoMessage() {}

func (x *DecodeOfferRecurrencePaywindow) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[163]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeOfferRecurrencePaywindow.ProtoReflect.Descriptor instead.
func (*DecodeOfferRecurrencePaywindow) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{163}
}

func (x *DecodeOfferRecurrencePaywindow) GetSecondsBefore() uint32 {
	if x != nil {
		return x.SecondsBefore
	}
	return 0
}

func (x *DecodeOfferRecurrencePaywindow) GetSecondsAfter() uint32 {
	if x != nil {
		return x.SecondsAfter
	}
	return 0
}

func (x *DecodeOfferRecurrencePaywindow) GetProportionalAmount() bool {
	if x != nil && x.ProportionalAmount != nil {
		return *x.ProportionalAmount
	}
	return false
}

type DecodeInvreqPaths struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FirstScidDir *uint32                  `protobuf:"varint,1,opt,name=first_scid_dir,json=firstScidDir,proto3,oneof" json:"first_scid_dir,omitempty"`
	Blinding     []byte                   `protobuf:"bytes,2,opt,name=blinding,proto3,oneof" json:"blinding,omitempty"`
	FirstNodeId  []byte                   `protobuf:"bytes,3,opt,name=first_node_id,json=firstNodeId,proto3,oneof" json:"first_node_id,omitempty"`
	FirstScid    *string                  `protobuf:"bytes,4,opt,name=first_scid,json=firstScid,proto3,oneof" json:"first_scid,omitempty"`
	Path         []*DecodeInvreqPathsPath `protobuf:"bytes,5,rep,name=path,proto3" json:"path,omitempty"`
	FirstPathKey []byte                   `protobuf:"bytes,6,opt,name=first_path_key,json=firstPathKey,proto3,oneof" json:"first_path_key,omitempty"`
}

func (x *DecodeInvreqPaths) Reset() {
	*x = DecodeInvreqPaths{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[164]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeInvreqPaths) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeInvreqPaths) ProtoMessage() {}

func (x *DecodeInvreqPaths) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[164]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeInvreqPaths.ProtoReflect.Descriptor instead.
func (*DecodeInvreqPaths) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{164}
}

func (x *DecodeInvreqPaths) GetFirstScidDir() uint32 {
	if x != nil && x.FirstScidDir != nil {
		return *x.FirstScidDir
	}
	return 0
}

func (x *DecodeInvreqPaths) GetBlinding() []byte {
	if x != nil {
		return x.Blinding
	}
	return nil
}

func (x *DecodeInvreqPaths) GetFirstNodeId() []byte {
	if x != nil {
		return x.FirstNodeId
	}
	return nil
}

func (x *DecodeInvreqPaths) GetFirstScid() string {
	if x != nil && x.FirstScid != nil {
		return *x.FirstScid
	}
	return ""
}

func (x *DecodeInvreqPaths) GetPath() []*DecodeInvreqPathsPath {
	if x != nil {
		return x.Path
	}
	return nil
}

func (x *DecodeInvreqPaths) GetFirstPathKey() []byte {
	if x != nil {
		return x.FirstPathKey
	}
	return nil
}

type DecodeInvreqPathsPath struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	BlindedNodeId          []byte `protobuf:"bytes,1,opt,name=blinded_node_id,json=blindedNodeId,proto3" json:"blinded_node_id,omitempty"`
	EncryptedRecipientData []byte `protobuf:"bytes,2,opt,name=encrypted_recipient_data,json=encryptedRecipientData,proto3" json:"encrypted_recipient_data,omitempty"`
}

func (x *DecodeInvreqPathsPath) Reset() {
	*x = DecodeInvreqPathsPath{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[165]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeInvreqPathsPath) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeInvreqPathsPath) ProtoMessage() {}

func (x *DecodeInvreqPathsPath) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[165]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeInvreqPathsPath.ProtoReflect.Descriptor instead.
func (*DecodeInvreqPathsPath) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{165}
}

func (x *DecodeInvreqPathsPath) GetBlindedNodeId() []byte {
	if x != nil {
		return x.BlindedNodeId
	}
	return nil
}

func (x *DecodeInvreqPathsPath) GetEncryptedRecipientData() []byte {
	if x != nil {
		return x.EncryptedRecipientData
	}
	return nil
}

type DecodeInvoicePathsPath struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	BlindedNodeId          []byte `protobuf:"bytes,1,opt,name=blinded_node_id,json=blindedNodeId,proto3" json:"blinded_node_id,omitempty"`
	EncryptedRecipientData []byte `protobuf:"bytes,2,opt,name=encrypted_recipient_data,json=encryptedRecipientData,proto3" json:"encrypted_recipient_data,omitempty"`
}

func (x *DecodeInvoicePathsPath) Reset() {
	*x = DecodeInvoicePathsPath{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[166]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeInvoicePathsPath) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeInvoicePathsPath) ProtoMessage() {}

func (x *DecodeInvoicePathsPath) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[166]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeInvoicePathsPath.ProtoReflect.Descriptor instead.
func (*DecodeInvoicePathsPath) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{166}
}

func (x *DecodeInvoicePathsPath) GetBlindedNodeId() []byte {
	if x != nil {
		return x.BlindedNodeId
	}
	return nil
}

func (x *DecodeInvoicePathsPath) GetEncryptedRecipientData() []byte {
	if x != nil {
		return x.EncryptedRecipientData
	}
	return nil
}

type DecodeInvoiceFallbacks struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Version uint32  `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
	Hex     []byte  `protobuf:"bytes,2,opt,name=hex,proto3" json:"hex,omitempty"`
	Address *string `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
}

func (x *DecodeInvoiceFallbacks) Reset() {
	*x = DecodeInvoiceFallbacks{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[167]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeInvoiceFallbacks) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeInvoiceFallbacks) ProtoMessage() {}

func (x *DecodeInvoiceFallbacks) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[167]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeInvoiceFallbacks.ProtoReflect.Descriptor instead.
func (*DecodeInvoiceFallbacks) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{167}
}

func (x *DecodeInvoiceFallbacks) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *DecodeInvoiceFallbacks) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

func (x *DecodeInvoiceFallbacks) GetAddress() string {
	if x != nil && x.Address != nil {
		return *x.Address
	}
	return ""
}

type DecodeFallbacks struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	WarningInvoiceFallbacksVersionInvalid *string                             `protobuf:"bytes,1,opt,name=warning_invoice_fallbacks_version_invalid,json=warningInvoiceFallbacksVersionInvalid,proto3,oneof" json:"warning_invoice_fallbacks_version_invalid,omitempty"`
	ItemType                              DecodeFallbacks_DecodeFallbacksType `protobuf:"varint,2,opt,name=item_type,json=itemType,proto3,enum=cln.DecodeFallbacks_DecodeFallbacksType" json:"item_type,omitempty"`
	Addr                                  *string                             `protobuf:"bytes,3,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
	Hex                                   []byte                              `protobuf:"bytes,4,opt,name=hex,proto3" json:"hex,omitempty"`
}

func (x *DecodeFallbacks) Reset() {
	*x = DecodeFallbacks{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[168]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeFallbacks) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeFallbacks) ProtoMessage() {}

func (x *DecodeFallbacks) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[168]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeFallbacks.ProtoReflect.Descriptor instead.
func (*DecodeFallbacks) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{168}
}

func (x *DecodeFallbacks) GetWarningInvoiceFallbacksVersionInvalid() string {
	if x != nil && x.WarningInvoiceFallbacksVersionInvalid != nil {
		return *x.WarningInvoiceFallbacksVersionInvalid
	}
	return ""
}

func (x *DecodeFallbacks) GetItemType() DecodeFallbacks_DecodeFallbacksType {
	if x != nil {
		return x.ItemType
	}
	return DecodeFallbacks_P2PKH
}

func (x *DecodeFallbacks) GetAddr() string {
	if x != nil && x.Addr != nil {
		return *x.Addr
	}
	return ""
}

func (x *DecodeFallbacks) GetHex() []byte {
	if x != nil {
		return x.Hex
	}
	return nil
}

type DecodeExtra struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tag  string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
	Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
}

func (x *DecodeExtra) Reset() {
	*x = DecodeExtra{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[169]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeExtra) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeExtra) ProtoMessage() {}

func (x *DecodeExtra) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[169]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeExtra.ProtoReflect.Descriptor instead.
func (*DecodeExtra) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{169}
}

func (x *DecodeExtra) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *DecodeExtra) GetData() string {
	if x != nil {
		return x.Data
	}
	return ""
}

type DecodeRestrictions struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Alternatives []string `protobuf:"bytes,1,rep,name=alternatives,proto3" json:"alternatives,omitempty"`
	Summary      string   `protobuf:"bytes,2,opt,name=summary,proto3" json:"summary,omitempty"`
}

func (x *DecodeRestrictions) Reset() {
	*x = DecodeRestrictions{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[170]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DecodeRestrictions) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DecodeRestrictions) ProtoMessage() {}

func (x *DecodeRestrictions) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[170]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DecodeRestrictions.ProtoReflect.Descriptor instead.
func (*DecodeRestrictions) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{170}
}

func (x *DecodeRestrictions) GetAlternatives() []string {
	if x != nil {
		return x.Alternatives
	}
	return nil
}

func (x *DecodeRestrictions) GetSummary() string {
	if x != nil {
		return x.Summary
	}
	return ""
}

type DelpayRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PaymentHash []byte                     `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status      DelpayRequest_DelpayStatus `protobuf:"varint,2,opt,name=status,proto3,enum=cln.DelpayRequest_DelpayStatus" json:"status,omitempty"`
	Partid      *uint64                    `protobuf:"varint,3,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	Groupid     *uint64                    `protobuf:"varint,4,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
}

func (x *DelpayRequest) Reset() {
	*x = DelpayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[171]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DelpayRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DelpayRequest) ProtoMessage() {}

func (x *DelpayRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[171]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DelpayRequest.ProtoReflect.Descriptor instead.
func (*DelpayRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{171}
}

func (x *DelpayRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *DelpayRequest) GetStatus() DelpayRequest_DelpayStatus {
	if x != nil {
		return x.Status
	}
	return DelpayRequest_COMPLETE
}

func (x *DelpayRequest) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *DelpayRequest) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

type DelpayResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Payments []*DelpayPayments `protobuf:"bytes,1,rep,name=payments,proto3" json:"payments,omitempty"`
}

func (x *DelpayResponse) Reset() {
	*x = DelpayResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[172]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DelpayResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DelpayResponse) ProtoMessage() {}

func (x *DelpayResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[172]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DelpayResponse.ProtoReflect.Descriptor instead.
func (*DelpayResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{172}
}

func (x *DelpayResponse) GetPayments() []*DelpayPayments {
	if x != nil {
		return x.Payments
	}
	return nil
}

type DelpayPayments struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CreatedIndex    *uint64                             `protobuf:"varint,1,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	Id              uint64                              `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
	PaymentHash     []byte                              `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status          DelpayPayments_DelpayPaymentsStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.DelpayPayments_DelpayPaymentsStatus" json:"status,omitempty"`
	AmountSentMsat  *Amount                             `protobuf:"bytes,5,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
	Partid          *uint64                             `protobuf:"varint,6,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	Destination     []byte                              `protobuf:"bytes,7,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	AmountMsat      *Amount                             `protobuf:"bytes,8,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	CreatedAt       uint64                              `protobuf:"varint,9,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedIndex    *uint64                             `protobuf:"varint,10,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
	CompletedAt     *uint64                             `protobuf:"varint,11,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
	Groupid         *uint64                             `protobuf:"varint,12,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
	PaymentPreimage []byte                              `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	Label           *string                             `protobuf:"bytes,14,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Bolt11          *string                             `protobuf:"bytes,15,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12          *string                             `protobuf:"bytes,16,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	Erroronion      []byte                              `protobuf:"bytes,17,opt,name=erroronion,proto3,oneof" json:"erroronion,omitempty"`
}

func (x *DelpayPayments) Reset() {
	*x = DelpayPayments{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[173]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DelpayPayments) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DelpayPayments) ProtoMessage() {}

func (x *DelpayPayments) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[173]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DelpayPayments.ProtoReflect.Descriptor instead.
func (*DelpayPayments) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{173}
}

func (x *DelpayPayments) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *DelpayPayments) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *DelpayPayments) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *DelpayPayments) GetStatus() DelpayPayments_DelpayPaymentsStatus {
	if x != nil {
		return x.Status
	}
	return DelpayPayments_PENDING
}

func (x *DelpayPayments) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *DelpayPayments) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *DelpayPayments) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *DelpayPayments) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *DelpayPayments) GetCreatedAt() uint64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *DelpayPayments) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

func (x *DelpayPayments) GetCompletedAt() uint64 {
	if x != nil && x.CompletedAt != nil {
		return *x.CompletedAt
	}
	return 0
}

func (x *DelpayPayments) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

func (x *DelpayPayments) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *DelpayPayments) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *DelpayPayments) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *DelpayPayments) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *DelpayPayments) GetErroronion() []byte {
	if x != nil {
		return x.Erroronion
	}
	return nil
}

type DelforwardRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InChannel string                             `protobuf:"bytes,1,opt,name=in_channel,json=inChannel,proto3" json:"in_channel,omitempty"`
	InHtlcId  uint64                             `protobuf:"varint,2,opt,name=in_htlc_id,json=inHtlcId,proto3" json:"in_htlc_id,omitempty"`
	Status    DelforwardRequest_DelforwardStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.DelforwardRequest_DelforwardStatus" json:"status,omitempty"`
}

func (x *DelforwardRequest) Reset() {
	*x = DelforwardRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[174]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DelforwardRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DelforwardRequest) ProtoMessage() {}

func (x *DelforwardRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[174]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DelforwardRequest.ProtoReflect.Descriptor instead.
func (*DelforwardRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{174}
}

func (x *DelforwardRequest) GetInChannel() string {
	if x != nil {
		return x.InChannel
	}
	return ""
}

func (x *DelforwardRequest) GetInHtlcId() uint64 {
	if x != nil {
		return x.InHtlcId
	}
	return 0
}

func (x *DelforwardRequest) GetStatus() DelforwardRequest_DelforwardStatus {
	if x != nil {
		return x.Status
	}
	return DelforwardRequest_SETTLED
}

type DelforwardResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DelforwardResponse) Reset() {
	*x = DelforwardResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[175]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DelforwardResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DelforwardResponse) ProtoMessage() {}

func (x *DelforwardResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[175]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DelforwardResponse.ProtoReflect.Descriptor instead.
func (*DelforwardResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{175}
}

type DisableofferRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
}

func (x *DisableofferRequest) Reset() {
	*x = DisableofferRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[176]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DisableofferRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DisableofferRequest) ProtoMessage() {}

func (x *DisableofferRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[176]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DisableofferRequest.ProtoReflect.Descriptor instead.
func (*DisableofferRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{176}
}

func (x *DisableofferRequest) GetOfferId() []byte {
	if x != nil {
		return x.OfferId
	}
	return nil
}

type DisableofferResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OfferId   []byte  `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
	Active    bool    `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
	SingleUse bool    `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	Bolt12    string  `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
	Used      bool    `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
	Label     *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}

func (x *DisableofferResponse) Reset() {
	*x = DisableofferResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[177]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DisableofferResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DisableofferResponse) ProtoMessage() {}

func (x *DisableofferResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[177]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DisableofferResponse.ProtoReflect.Descriptor instead.
func (*DisableofferResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{177}
}

func (x *DisableofferResponse) GetOfferId() []byte {
	if x != nil {
		return x.OfferId
	}
	return nil
}

func (x *DisableofferResponse) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *DisableofferResponse) GetSingleUse() bool {
	if x != nil {
		return x.SingleUse
	}
	return false
}

func (x *DisableofferResponse) GetBolt12() string {
	if x != nil {
		return x.Bolt12
	}
	return ""
}

func (x *DisableofferResponse) GetUsed() bool {
	if x != nil {
		return x.Used
	}
	return false
}

func (x *DisableofferResponse) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

type EnableofferRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OfferId []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
}

func (x *EnableofferRequest) Reset() {
	*x = EnableofferRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[178]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *EnableofferRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EnableofferRequest) ProtoMessage() {}

func (x *EnableofferRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[178]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EnableofferRequest.ProtoReflect.Descriptor instead.
func (*EnableofferRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{178}
}

func (x *EnableofferRequest) GetOfferId() []byte {
	if x != nil {
		return x.OfferId
	}
	return nil
}

type EnableofferResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OfferId   []byte  `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
	Active    bool    `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
	SingleUse bool    `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	Bolt12    string  `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
	Used      bool    `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
	Label     *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}

func (x *EnableofferResponse) Reset() {
	*x = EnableofferResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[179]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *EnableofferResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EnableofferResponse) ProtoMessage() {}

func (x *EnableofferResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[179]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EnableofferResponse.ProtoReflect.Descriptor instead.
func (*EnableofferResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{179}
}

func (x *EnableofferResponse) GetOfferId() []byte {
	if x != nil {
		return x.OfferId
	}
	return nil
}

func (x *EnableofferResponse) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *EnableofferResponse) GetSingleUse() bool {
	if x != nil {
		return x.SingleUse
	}
	return false
}

func (x *EnableofferResponse) GetBolt12() string {
	if x != nil {
		return x.Bolt12
	}
	return ""
}

func (x *EnableofferResponse) GetUsed() bool {
	if x != nil {
		return x.Used
	}
	return false
}

func (x *EnableofferResponse) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

type DisconnectRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id    []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Force *bool  `protobuf:"varint,2,opt,name=force,proto3,oneof" json:"force,omitempty"`
}

func (x *DisconnectRequest) Reset() {
	*x = DisconnectRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[180]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DisconnectRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DisconnectRequest) ProtoMessage() {}

func (x *DisconnectRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[180]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DisconnectRequest.ProtoReflect.Descriptor instead.
func (*DisconnectRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{180}
}

func (x *DisconnectRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *DisconnectRequest) GetForce() bool {
	if x != nil && x.Force != nil {
		return *x.Force
	}
	return false
}

type DisconnectResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *DisconnectResponse) Reset() {
	*x = DisconnectResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[181]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DisconnectResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DisconnectResponse) ProtoMessage() {}

func (x *DisconnectResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[181]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DisconnectResponse.ProtoReflect.Descriptor instead.
func (*DisconnectResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{181}
}

type FeeratesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Style FeeratesRequest_FeeratesStyle `protobuf:"varint,1,opt,name=style,proto3,enum=cln.FeeratesRequest_FeeratesStyle" json:"style,omitempty"`
}

func (x *FeeratesRequest) Reset() {
	*x = FeeratesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[182]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FeeratesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FeeratesRequest) ProtoMessage() {}

func (x *FeeratesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[182]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FeeratesRequest.ProtoReflect.Descriptor instead.
func (*FeeratesRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{182}
}

func (x *FeeratesRequest) GetStyle() FeeratesRequest_FeeratesStyle {
	if x != nil {
		return x.Style
	}
	return FeeratesRequest_PERKB
}

type FeeratesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	WarningMissingFeerates *string                      `protobuf:"bytes,1,opt,name=warning_missing_feerates,json=warningMissingFeerates,proto3,oneof" json:"warning_missing_feerates,omitempty"`
	Perkb                  *FeeratesPerkb               `protobuf:"bytes,2,opt,name=perkb,proto3,oneof" json:"perkb,omitempty"`
	Perkw                  *FeeratesPerkw               `protobuf:"bytes,3,opt,name=perkw,proto3,oneof" json:"perkw,omitempty"`
	OnchainFeeEstimates    *FeeratesOnchainFeeEstimates `protobuf:"bytes,4,opt,name=onchain_fee_estimates,json=onchainFeeEstimates,proto3,oneof" json:"onchain_fee_estimates,omitempty"`
}

func (x *FeeratesResponse) Reset() {
	*x = FeeratesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[183]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FeeratesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FeeratesResponse) ProtoMessage() {}

func (x *FeeratesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[183]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FeeratesResponse.ProtoReflect.Descriptor instead.
func (*FeeratesResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{183}
}

func (x *FeeratesResponse) GetWarningMissingFeerates() string {
	if x != nil && x.WarningMissingFeerates != nil {
		return *x.WarningMissingFeerates
	}
	return ""
}

func (x *FeeratesResponse) GetPerkb() *FeeratesPerkb {
	if x != nil {
		return x.Perkb
	}
	return nil
}

func (x *FeeratesResponse) GetPerkw() *FeeratesPerkw {
	if x != nil {
		return x.Perkw
	}
	return nil
}

func (x *FeeratesResponse) GetOnchainFeeEstimates() *FeeratesOnchainFeeEstimates {
	if x != nil {
		return x.OnchainFeeEstimates
	}
	return nil
}

type FeeratesPerkb struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	MinAcceptable         uint32                    `protobuf:"varint,1,opt,name=min_acceptable,json=minAcceptable,proto3" json:"min_acceptable,omitempty"`
	MaxAcceptable         uint32                    `protobuf:"varint,2,opt,name=max_acceptable,json=maxAcceptable,proto3" json:"max_acceptable,omitempty"`
	Opening               *uint32                   `protobuf:"varint,3,opt,name=opening,proto3,oneof" json:"opening,omitempty"`
	MutualClose           *uint32                   `protobuf:"varint,4,opt,name=mutual_close,json=mutualClose,proto3,oneof" json:"mutual_close,omitempty"`
	UnilateralClose       *uint32                   `protobuf:"varint,5,opt,name=unilateral_close,json=unilateralClose,proto3,oneof" json:"unilateral_close,omitempty"`
	DelayedToUs           *uint32                   `protobuf:"varint,6,opt,name=delayed_to_us,json=delayedToUs,proto3,oneof" json:"delayed_to_us,omitempty"`
	HtlcResolution        *uint32                   `protobuf:"varint,7,opt,name=htlc_resolution,json=htlcResolution,proto3,oneof" json:"htlc_resolution,omitempty"`
	Penalty               *uint32                   `protobuf:"varint,8,opt,name=penalty,proto3,oneof" json:"penalty,omitempty"`
	Estimates             []*FeeratesPerkbEstimates `protobuf:"bytes,9,rep,name=estimates,proto3" json:"estimates,omitempty"`
	Floor                 *uint32                   `protobuf:"varint,10,opt,name=floor,proto3,oneof" json:"floor,omitempty"`
	UnilateralAnchorClose *uint32                   `protobuf:"varint,11,opt,name=unilateral_anchor_close,json=unilateralAnchorClose,proto3,oneof" json:"unilateral_anchor_close,omitempty"`
}

func (x *FeeratesPerkb) Reset() {
	*x = FeeratesPerkb{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[184]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FeeratesPerkb) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FeeratesPerkb) ProtoMessage() {}

func (x *FeeratesPerkb) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[184]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FeeratesPerkb.ProtoReflect.Descriptor instead.
func (*FeeratesPerkb) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{184}
}

func (x *FeeratesPerkb) GetMinAcceptable() uint32 {
	if x != nil {
		return x.MinAcceptable
	}
	return 0
}

func (x *FeeratesPerkb) GetMaxAcceptable() uint32 {
	if x != nil {
		return x.MaxAcceptable
	}
	return 0
}

func (x *FeeratesPerkb) GetOpening() uint32 {
	if x != nil && x.Opening != nil {
		return *x.Opening
	}
	return 0
}

func (x *FeeratesPerkb) GetMutualClose() uint32 {
	if x != nil && x.MutualClose != nil {
		return *x.MutualClose
	}
	return 0
}

func (x *FeeratesPerkb) GetUnilateralClose() uint32 {
	if x != nil && x.UnilateralClose != nil {
		return *x.UnilateralClose
	}
	return 0
}

func (x *FeeratesPerkb) GetDelayedToUs() uint32 {
	if x != nil && x.DelayedToUs != nil {
		return *x.DelayedToUs
	}
	return 0
}

func (x *FeeratesPerkb) GetHtlcResolution() uint32 {
	if x != nil && x.HtlcResolution != nil {
		return *x.HtlcResolution
	}
	return 0
}

func (x *FeeratesPerkb) GetPenalty() uint32 {
	if x != nil && x.Penalty != nil {
		return *x.Penalty
	}
	return 0
}

func (x *FeeratesPerkb) GetEstimates() []*FeeratesPerkbEstimates {
	if x != nil {
		return x.Estimates
	}
	return nil
}

func (x *FeeratesPerkb) GetFloor() uint32 {
	if x != nil && x.Floor != nil {
		return *x.Floor
	}
	return 0
}

func (x *FeeratesPerkb) GetUnilateralAnchorClose() uint32 {
	if x != nil && x.UnilateralAnchorClose != nil {
		return *x.UnilateralAnchorClose
	}
	return 0
}

type FeeratesPerkbEstimates struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Blockcount      uint32 `protobuf:"varint,1,opt,name=blockcount,proto3" json:"blockcount,omitempty"`
	Feerate         uint32 `protobuf:"varint,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
	SmoothedFeerate uint32 `protobuf:"varint,3,opt,name=smoothed_feerate,json=smoothedFeerate,proto3" json:"smoothed_feerate,omitempty"`
}

func (x *FeeratesPerkbEstimates) Reset() {
	*x = FeeratesPerkbEstimates{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[185]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FeeratesPerkbEstimates) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FeeratesPerkbEstimates) ProtoMessage() {}

func (x *FeeratesPerkbEstimates) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[185]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FeeratesPerkbEstimates.ProtoReflect.Descriptor instead.
func (*FeeratesPerkbEstimates) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{185}
}

func (x *FeeratesPerkbEstimates) GetBlockcount() uint32 {
	if x != nil {
		return x.Blockcount
	}
	return 0
}

func (x *FeeratesPerkbEstimates) GetFeerate() uint32 {
	if x != nil {
		return x.Feerate
	}
	return 0
}

func (x *FeeratesPerkbEstimates) GetSmoothedFeerate() uint32 {
	if x != nil {
		return x.SmoothedFeerate
	}
	return 0
}

type FeeratesPerkw struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	MinAcceptable         uint32                    `protobuf:"varint,1,opt,name=min_acceptable,json=minAcceptable,proto3" json:"min_acceptable,omitempty"`
	MaxAcceptable         uint32                    `protobuf:"varint,2,opt,name=max_acceptable,json=maxAcceptable,proto3" json:"max_acceptable,omitempty"`
	Opening               *uint32                   `protobuf:"varint,3,opt,name=opening,proto3,oneof" json:"opening,omitempty"`
	MutualClose           *uint32                   `protobuf:"varint,4,opt,name=mutual_close,json=mutualClose,proto3,oneof" json:"mutual_close,omitempty"`
	UnilateralClose       *uint32                   `protobuf:"varint,5,opt,name=unilateral_close,json=unilateralClose,proto3,oneof" json:"unilateral_close,omitempty"`
	DelayedToUs           *uint32                   `protobuf:"varint,6,opt,name=delayed_to_us,json=delayedToUs,proto3,oneof" json:"delayed_to_us,omitempty"`
	HtlcResolution        *uint32                   `protobuf:"varint,7,opt,name=htlc_resolution,json=htlcResolution,proto3,oneof" json:"htlc_resolution,omitempty"`
	Penalty               *uint32                   `protobuf:"varint,8,opt,name=penalty,proto3,oneof" json:"penalty,omitempty"`
	Estimates             []*FeeratesPerkwEstimates `protobuf:"bytes,9,rep,name=estimates,proto3" json:"estimates,omitempty"`
	Floor                 *uint32                   `protobuf:"varint,10,opt,name=floor,proto3,oneof" json:"floor,omitempty"`
	UnilateralAnchorClose *uint32                   `protobuf:"varint,11,opt,name=unilateral_anchor_close,json=unilateralAnchorClose,proto3,oneof" json:"unilateral_anchor_close,omitempty"`
}

func (x *FeeratesPerkw) Reset() {
	*x = FeeratesPerkw{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[186]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FeeratesPerkw) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FeeratesPerkw) ProtoMessage() {}

func (x *FeeratesPerkw) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[186]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FeeratesPerkw.ProtoReflect.Descriptor instead.
func (*FeeratesPerkw) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{186}
}

func (x *FeeratesPerkw) GetMinAcceptable() uint32 {
	if x != nil {
		return x.MinAcceptable
	}
	return 0
}

func (x *FeeratesPerkw) GetMaxAcceptable() uint32 {
	if x != nil {
		return x.MaxAcceptable
	}
	return 0
}

func (x *FeeratesPerkw) GetOpening() uint32 {
	if x != nil && x.Opening != nil {
		return *x.Opening
	}
	return 0
}

func (x *FeeratesPerkw) GetMutualClose() uint32 {
	if x != nil && x.MutualClose != nil {
		return *x.MutualClose
	}
	return 0
}

func (x *FeeratesPerkw) GetUnilateralClose() uint32 {
	if x != nil && x.UnilateralClose != nil {
		return *x.UnilateralClose
	}
	return 0
}

func (x *FeeratesPerkw) GetDelayedToUs() uint32 {
	if x != nil && x.DelayedToUs != nil {
		return *x.DelayedToUs
	}
	return 0
}

func (x *FeeratesPerkw) GetHtlcResolution() uint32 {
	if x != nil && x.HtlcResolution != nil {
		return *x.HtlcResolution
	}
	return 0
}

func (x *FeeratesPerkw) GetPenalty() uint32 {
	if x != nil && x.Penalty != nil {
		return *x.Penalty
	}
	return 0
}

func (x *FeeratesPerkw) GetEstimates() []*FeeratesPerkwEstimates {
	if x != nil {
		return x.Estimates
	}
	return nil
}

func (x *FeeratesPerkw) GetFloor() uint32 {
	if x != nil && x.Floor != nil {
		return *x.Floor
	}
	return 0
}

func (x *FeeratesPerkw) GetUnilateralAnchorClose() uint32 {
	if x != nil && x.UnilateralAnchorClose != nil {
		return *x.UnilateralAnchorClose
	}
	return 0
}

type FeeratesPerkwEstimates struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Blockcount      uint32 `protobuf:"varint,1,opt,name=blockcount,proto3" json:"blockcount,omitempty"`
	Feerate         uint32 `protobuf:"varint,2,opt,name=feerate,proto3" json:"feerate,omitempty"`
	SmoothedFeerate uint32 `protobuf:"varint,3,opt,name=smoothed_feerate,json=smoothedFeerate,proto3" json:"smoothed_feerate,omitempty"`
}

func (x *FeeratesPerkwEstimates) Reset() {
	*x = FeeratesPerkwEstimates{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[187]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FeeratesPerkwEstimates) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FeeratesPerkwEstimates) ProtoMessage() {}

func (x *FeeratesPerkwEstimates) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[187]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FeeratesPerkwEstimates.ProtoReflect.Descriptor instead.
func (*FeeratesPerkwEstimates) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{187}
}

func (x *FeeratesPerkwEstimates) GetBlockcount() uint32 {
	if x != nil {
		return x.Blockcount
	}
	return 0
}

func (x *FeeratesPerkwEstimates) GetFeerate() uint32 {
	if x != nil {
		return x.Feerate
	}
	return 0
}

func (x *FeeratesPerkwEstimates) GetSmoothedFeerate() uint32 {
	if x != nil {
		return x.SmoothedFeerate
	}
	return 0
}

type FeeratesOnchainFeeEstimates struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OpeningChannelSatoshis           uint64  `protobuf:"varint,1,opt,name=opening_channel_satoshis,json=openingChannelSatoshis,proto3" json:"opening_channel_satoshis,omitempty"`
	MutualCloseSatoshis              uint64  `protobuf:"varint,2,opt,name=mutual_close_satoshis,json=mutualCloseSatoshis,proto3" json:"mutual_close_satoshis,omitempty"`
	UnilateralCloseSatoshis          uint64  `protobuf:"varint,3,opt,name=unilateral_close_satoshis,json=unilateralCloseSatoshis,proto3" json:"unilateral_close_satoshis,omitempty"`
	HtlcTimeoutSatoshis              uint64  `protobuf:"varint,4,opt,name=htlc_timeout_satoshis,json=htlcTimeoutSatoshis,proto3" json:"htlc_timeout_satoshis,omitempty"`
	HtlcSuccessSatoshis              uint64  `protobuf:"varint,5,opt,name=htlc_success_satoshis,json=htlcSuccessSatoshis,proto3" json:"htlc_success_satoshis,omitempty"`
	UnilateralCloseNonanchorSatoshis *uint64 `protobuf:"varint,6,opt,name=unilateral_close_nonanchor_satoshis,json=unilateralCloseNonanchorSatoshis,proto3,oneof" json:"unilateral_close_nonanchor_satoshis,omitempty"`
}

func (x *FeeratesOnchainFeeEstimates) Reset() {
	*x = FeeratesOnchainFeeEstimates{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[188]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FeeratesOnchainFeeEstimates) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FeeratesOnchainFeeEstimates) ProtoMessage() {}

func (x *FeeratesOnchainFeeEstimates) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[188]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FeeratesOnchainFeeEstimates.ProtoReflect.Descriptor instead.
func (*FeeratesOnchainFeeEstimates) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{188}
}

func (x *FeeratesOnchainFeeEstimates) GetOpeningChannelSatoshis() uint64 {
	if x != nil {
		return x.OpeningChannelSatoshis
	}
	return 0
}

func (x *FeeratesOnchainFeeEstimates) GetMutualCloseSatoshis() uint64 {
	if x != nil {
		return x.MutualCloseSatoshis
	}
	return 0
}

func (x *FeeratesOnchainFeeEstimates) GetUnilateralCloseSatoshis() uint64 {
	if x != nil {
		return x.UnilateralCloseSatoshis
	}
	return 0
}

func (x *FeeratesOnchainFeeEstimates) GetHtlcTimeoutSatoshis() uint64 {
	if x != nil {
		return x.HtlcTimeoutSatoshis
	}
	return 0
}

func (x *FeeratesOnchainFeeEstimates) GetHtlcSuccessSatoshis() uint64 {
	if x != nil {
		return x.HtlcSuccessSatoshis
	}
	return 0
}

func (x *FeeratesOnchainFeeEstimates) GetUnilateralCloseNonanchorSatoshis() uint64 {
	if x != nil && x.UnilateralCloseNonanchorSatoshis != nil {
		return *x.UnilateralCloseNonanchorSatoshis
	}
	return 0
}

type FetchinvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Offer             string   `protobuf:"bytes,1,opt,name=offer,proto3" json:"offer,omitempty"`
	AmountMsat        *Amount  `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Quantity          *uint64  `protobuf:"varint,3,opt,name=quantity,proto3,oneof" json:"quantity,omitempty"`
	RecurrenceCounter *uint64  `protobuf:"varint,4,opt,name=recurrence_counter,json=recurrenceCounter,proto3,oneof" json:"recurrence_counter,omitempty"`
	RecurrenceStart   *float64 `protobuf:"fixed64,5,opt,name=recurrence_start,json=recurrenceStart,proto3,oneof" json:"recurrence_start,omitempty"`
	RecurrenceLabel   *string  `protobuf:"bytes,6,opt,name=recurrence_label,json=recurrenceLabel,proto3,oneof" json:"recurrence_label,omitempty"`
	Timeout           *float64 `protobuf:"fixed64,7,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
	PayerNote         *string  `protobuf:"bytes,8,opt,name=payer_note,json=payerNote,proto3,oneof" json:"payer_note,omitempty"`
	PayerMetadata     *string  `protobuf:"bytes,9,opt,name=payer_metadata,json=payerMetadata,proto3,oneof" json:"payer_metadata,omitempty"`
}

func (x *FetchinvoiceRequest) Reset() {
	*x = FetchinvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[189]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FetchinvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FetchinvoiceRequest) ProtoMessage() {}

func (x *FetchinvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[189]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FetchinvoiceRequest.ProtoReflect.Descriptor instead.
func (*FetchinvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{189}
}

func (x *FetchinvoiceRequest) GetOffer() string {
	if x != nil {
		return x.Offer
	}
	return ""
}

func (x *FetchinvoiceRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *FetchinvoiceRequest) GetQuantity() uint64 {
	if x != nil && x.Quantity != nil {
		return *x.Quantity
	}
	return 0
}

func (x *FetchinvoiceRequest) GetRecurrenceCounter() uint64 {
	if x != nil && x.RecurrenceCounter != nil {
		return *x.RecurrenceCounter
	}
	return 0
}

func (x *FetchinvoiceRequest) GetRecurrenceStart() float64 {
	if x != nil && x.RecurrenceStart != nil {
		return *x.RecurrenceStart
	}
	return 0
}

func (x *FetchinvoiceRequest) GetRecurrenceLabel() string {
	if x != nil && x.RecurrenceLabel != nil {
		return *x.RecurrenceLabel
	}
	return ""
}

func (x *FetchinvoiceRequest) GetTimeout() float64 {
	if x != nil && x.Timeout != nil {
		return *x.Timeout
	}
	return 0
}

func (x *FetchinvoiceRequest) GetPayerNote() string {
	if x != nil && x.PayerNote != nil {
		return *x.PayerNote
	}
	return ""
}

func (x *FetchinvoiceRequest) GetPayerMetadata() string {
	if x != nil && x.PayerMetadata != nil {
		return *x.PayerMetadata
	}
	return ""
}

type FetchinvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invoice    string                  `protobuf:"bytes,1,opt,name=invoice,proto3" json:"invoice,omitempty"`
	Changes    *FetchinvoiceChanges    `protobuf:"bytes,2,opt,name=changes,proto3" json:"changes,omitempty"`
	NextPeriod *FetchinvoiceNextPeriod `protobuf:"bytes,3,opt,name=next_period,json=nextPeriod,proto3,oneof" json:"next_period,omitempty"`
}

func (x *FetchinvoiceResponse) Reset() {
	*x = FetchinvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[190]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FetchinvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FetchinvoiceResponse) ProtoMessage() {}

func (x *FetchinvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[190]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FetchinvoiceResponse.ProtoReflect.Descriptor instead.
func (*FetchinvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{190}
}

func (x *FetchinvoiceResponse) GetInvoice() string {
	if x != nil {
		return x.Invoice
	}
	return ""
}

func (x *FetchinvoiceResponse) GetChanges() *FetchinvoiceChanges {
	if x != nil {
		return x.Changes
	}
	return nil
}

func (x *FetchinvoiceResponse) GetNextPeriod() *FetchinvoiceNextPeriod {
	if x != nil {
		return x.NextPeriod
	}
	return nil
}

type FetchinvoiceChanges struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	DescriptionAppended *string `protobuf:"bytes,1,opt,name=description_appended,json=descriptionAppended,proto3,oneof" json:"description_appended,omitempty"`
	Description         *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
	VendorRemoved       *string `protobuf:"bytes,3,opt,name=vendor_removed,json=vendorRemoved,proto3,oneof" json:"vendor_removed,omitempty"`
	Vendor              *string `protobuf:"bytes,4,opt,name=vendor,proto3,oneof" json:"vendor,omitempty"`
	AmountMsat          *Amount `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
}

func (x *FetchinvoiceChanges) Reset() {
	*x = FetchinvoiceChanges{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[191]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FetchinvoiceChanges) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FetchinvoiceChanges) ProtoMessage() {}

func (x *FetchinvoiceChanges) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[191]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FetchinvoiceChanges.ProtoReflect.Descriptor instead.
func (*FetchinvoiceChanges) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{191}
}

func (x *FetchinvoiceChanges) GetDescriptionAppended() string {
	if x != nil && x.DescriptionAppended != nil {
		return *x.DescriptionAppended
	}
	return ""
}

func (x *FetchinvoiceChanges) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *FetchinvoiceChanges) GetVendorRemoved() string {
	if x != nil && x.VendorRemoved != nil {
		return *x.VendorRemoved
	}
	return ""
}

func (x *FetchinvoiceChanges) GetVendor() string {
	if x != nil && x.Vendor != nil {
		return *x.Vendor
	}
	return ""
}

func (x *FetchinvoiceChanges) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

type FetchinvoiceNextPeriod struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Counter        uint64 `protobuf:"varint,1,opt,name=counter,proto3" json:"counter,omitempty"`
	Starttime      uint64 `protobuf:"varint,2,opt,name=starttime,proto3" json:"starttime,omitempty"`
	Endtime        uint64 `protobuf:"varint,3,opt,name=endtime,proto3" json:"endtime,omitempty"`
	PaywindowStart uint64 `protobuf:"varint,4,opt,name=paywindow_start,json=paywindowStart,proto3" json:"paywindow_start,omitempty"`
	PaywindowEnd   uint64 `protobuf:"varint,5,opt,name=paywindow_end,json=paywindowEnd,proto3" json:"paywindow_end,omitempty"`
}

func (x *FetchinvoiceNextPeriod) Reset() {
	*x = FetchinvoiceNextPeriod{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[192]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FetchinvoiceNextPeriod) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FetchinvoiceNextPeriod) ProtoMessage() {}

func (x *FetchinvoiceNextPeriod) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[192]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FetchinvoiceNextPeriod.ProtoReflect.Descriptor instead.
func (*FetchinvoiceNextPeriod) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{192}
}

func (x *FetchinvoiceNextPeriod) GetCounter() uint64 {
	if x != nil {
		return x.Counter
	}
	return 0
}

func (x *FetchinvoiceNextPeriod) GetStarttime() uint64 {
	if x != nil {
		return x.Starttime
	}
	return 0
}

func (x *FetchinvoiceNextPeriod) GetEndtime() uint64 {
	if x != nil {
		return x.Endtime
	}
	return 0
}

func (x *FetchinvoiceNextPeriod) GetPaywindowStart() uint64 {
	if x != nil {
		return x.PaywindowStart
	}
	return 0
}

func (x *FetchinvoiceNextPeriod) GetPaywindowEnd() uint64 {
	if x != nil {
		return x.PaywindowEnd
	}
	return 0
}

type FundchannelCancelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
}

func (x *FundchannelCancelRequest) Reset() {
	*x = FundchannelCancelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[193]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelCancelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelCancelRequest) ProtoMessage() {}

func (x *FundchannelCancelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[193]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelCancelRequest.ProtoReflect.Descriptor instead.
func (*FundchannelCancelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{193}
}

func (x *FundchannelCancelRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

type FundchannelCancelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Cancelled string `protobuf:"bytes,1,opt,name=cancelled,proto3" json:"cancelled,omitempty"`
}

func (x *FundchannelCancelResponse) Reset() {
	*x = FundchannelCancelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[194]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelCancelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelCancelResponse) ProtoMessage() {}

func (x *FundchannelCancelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[194]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelCancelResponse.ProtoReflect.Descriptor instead.
func (*FundchannelCancelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{194}
}

func (x *FundchannelCancelResponse) GetCancelled() string {
	if x != nil {
		return x.Cancelled
	}
	return ""
}

type FundchannelCompleteRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id   []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Psbt string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
}

func (x *FundchannelCompleteRequest) Reset() {
	*x = FundchannelCompleteRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[195]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelCompleteRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelCompleteRequest) ProtoMessage() {}

func (x *FundchannelCompleteRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[195]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelCompleteRequest.ProtoReflect.Descriptor instead.
func (*FundchannelCompleteRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{195}
}

func (x *FundchannelCompleteRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *FundchannelCompleteRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

type FundchannelCompleteResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId          []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	CommitmentsSecured bool   `protobuf:"varint,2,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
}

func (x *FundchannelCompleteResponse) Reset() {
	*x = FundchannelCompleteResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[196]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelCompleteResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelCompleteResponse) ProtoMessage() {}

func (x *FundchannelCompleteResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[196]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelCompleteResponse.ProtoReflect.Descriptor instead.
func (*FundchannelCompleteResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{196}
}

func (x *FundchannelCompleteResponse) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *FundchannelCompleteResponse) GetCommitmentsSecured() bool {
	if x != nil {
		return x.CommitmentsSecured
	}
	return false
}

type FundchannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Amount       *AmountOrAll `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
	Feerate      *Feerate     `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
	Announce     *bool        `protobuf:"varint,3,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
	PushMsat     *Amount      `protobuf:"bytes,5,opt,name=push_msat,json=pushMsat,proto3,oneof" json:"push_msat,omitempty"`
	CloseTo      *string      `protobuf:"bytes,6,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
	RequestAmt   *Amount      `protobuf:"bytes,7,opt,name=request_amt,json=requestAmt,proto3,oneof" json:"request_amt,omitempty"`
	CompactLease *string      `protobuf:"bytes,8,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
	Id           []byte       `protobuf:"bytes,9,opt,name=id,proto3" json:"id,omitempty"`
	Minconf      *uint32      `protobuf:"varint,10,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
	Utxos        []*Outpoint  `protobuf:"bytes,11,rep,name=utxos,proto3" json:"utxos,omitempty"`
	Mindepth     *uint32      `protobuf:"varint,12,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
	Reserve      *Amount      `protobuf:"bytes,13,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
	ChannelType  []uint32     `protobuf:"varint,14,rep,packed,name=channel_type,json=channelType,proto3" json:"channel_type,omitempty"`
}

func (x *FundchannelRequest) Reset() {
	*x = FundchannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[197]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelRequest) ProtoMessage() {}

func (x *FundchannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[197]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelRequest.ProtoReflect.Descriptor instead.
func (*FundchannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{197}
}

func (x *FundchannelRequest) GetAmount() *AmountOrAll {
	if x != nil {
		return x.Amount
	}
	return nil
}

func (x *FundchannelRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *FundchannelRequest) GetAnnounce() bool {
	if x != nil && x.Announce != nil {
		return *x.Announce
	}
	return false
}

func (x *FundchannelRequest) GetPushMsat() *Amount {
	if x != nil {
		return x.PushMsat
	}
	return nil
}

func (x *FundchannelRequest) GetCloseTo() string {
	if x != nil && x.CloseTo != nil {
		return *x.CloseTo
	}
	return ""
}

func (x *FundchannelRequest) GetRequestAmt() *Amount {
	if x != nil {
		return x.RequestAmt
	}
	return nil
}

func (x *FundchannelRequest) GetCompactLease() string {
	if x != nil && x.CompactLease != nil {
		return *x.CompactLease
	}
	return ""
}

func (x *FundchannelRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *FundchannelRequest) GetMinconf() uint32 {
	if x != nil && x.Minconf != nil {
		return *x.Minconf
	}
	return 0
}

func (x *FundchannelRequest) GetUtxos() []*Outpoint {
	if x != nil {
		return x.Utxos
	}
	return nil
}

func (x *FundchannelRequest) GetMindepth() uint32 {
	if x != nil && x.Mindepth != nil {
		return *x.Mindepth
	}
	return 0
}

func (x *FundchannelRequest) GetReserve() *Amount {
	if x != nil {
		return x.Reserve
	}
	return nil
}

func (x *FundchannelRequest) GetChannelType() []uint32 {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

type FundchannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tx          []byte                  `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
	Txid        []byte                  `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
	Outnum      uint32                  `protobuf:"varint,3,opt,name=outnum,proto3" json:"outnum,omitempty"`
	ChannelId   []byte                  `protobuf:"bytes,4,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	CloseTo     []byte                  `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
	Mindepth    *uint32                 `protobuf:"varint,6,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
	ChannelType *FundchannelChannelType `protobuf:"bytes,7,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
}

func (x *FundchannelResponse) Reset() {
	*x = FundchannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[198]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelResponse) ProtoMessage() {}

func (x *FundchannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[198]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelResponse.ProtoReflect.Descriptor instead.
func (*FundchannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{198}
}

func (x *FundchannelResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *FundchannelResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *FundchannelResponse) GetOutnum() uint32 {
	if x != nil {
		return x.Outnum
	}
	return 0
}

func (x *FundchannelResponse) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *FundchannelResponse) GetCloseTo() []byte {
	if x != nil {
		return x.CloseTo
	}
	return nil
}

func (x *FundchannelResponse) GetMindepth() uint32 {
	if x != nil && x.Mindepth != nil {
		return *x.Mindepth
	}
	return 0
}

func (x *FundchannelResponse) GetChannelType() *FundchannelChannelType {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

type FundchannelChannelType struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bits  []uint32          `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
	Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
}

func (x *FundchannelChannelType) Reset() {
	*x = FundchannelChannelType{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[199]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelChannelType) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelChannelType) ProtoMessage() {}

func (x *FundchannelChannelType) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[199]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelChannelType.ProtoReflect.Descriptor instead.
func (*FundchannelChannelType) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{199}
}

func (x *FundchannelChannelType) GetBits() []uint32 {
	if x != nil {
		return x.Bits
	}
	return nil
}

func (x *FundchannelChannelType) GetNames() []ChannelTypeName {
	if x != nil {
		return x.Names
	}
	return nil
}

type FundchannelStartRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id          []byte   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Amount      *Amount  `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"`
	Feerate     *Feerate `protobuf:"bytes,3,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
	Announce    *bool    `protobuf:"varint,4,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
	CloseTo     *string  `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
	PushMsat    *Amount  `protobuf:"bytes,6,opt,name=push_msat,json=pushMsat,proto3,oneof" json:"push_msat,omitempty"`
	Mindepth    *uint32  `protobuf:"varint,7,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
	Reserve     *Amount  `protobuf:"bytes,8,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
	ChannelType []uint32 `protobuf:"varint,9,rep,packed,name=channel_type,json=channelType,proto3" json:"channel_type,omitempty"`
}

func (x *FundchannelStartRequest) Reset() {
	*x = FundchannelStartRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[200]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelStartRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelStartRequest) ProtoMessage() {}

func (x *FundchannelStartRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[200]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelStartRequest.ProtoReflect.Descriptor instead.
func (*FundchannelStartRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{200}
}

func (x *FundchannelStartRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *FundchannelStartRequest) GetAmount() *Amount {
	if x != nil {
		return x.Amount
	}
	return nil
}

func (x *FundchannelStartRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *FundchannelStartRequest) GetAnnounce() bool {
	if x != nil && x.Announce != nil {
		return *x.Announce
	}
	return false
}

func (x *FundchannelStartRequest) GetCloseTo() string {
	if x != nil && x.CloseTo != nil {
		return *x.CloseTo
	}
	return ""
}

func (x *FundchannelStartRequest) GetPushMsat() *Amount {
	if x != nil {
		return x.PushMsat
	}
	return nil
}

func (x *FundchannelStartRequest) GetMindepth() uint32 {
	if x != nil && x.Mindepth != nil {
		return *x.Mindepth
	}
	return 0
}

func (x *FundchannelStartRequest) GetReserve() *Amount {
	if x != nil {
		return x.Reserve
	}
	return nil
}

func (x *FundchannelStartRequest) GetChannelType() []uint32 {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

type FundchannelStartResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FundingAddress string                       `protobuf:"bytes,1,opt,name=funding_address,json=fundingAddress,proto3" json:"funding_address,omitempty"`
	Scriptpubkey   []byte                       `protobuf:"bytes,2,opt,name=scriptpubkey,proto3" json:"scriptpubkey,omitempty"`
	ChannelType    *FundchannelStartChannelType `protobuf:"bytes,3,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
	CloseTo        []byte                       `protobuf:"bytes,4,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
	WarningUsage   string                       `protobuf:"bytes,5,opt,name=warning_usage,json=warningUsage,proto3" json:"warning_usage,omitempty"`
	Mindepth       *uint32                      `protobuf:"varint,6,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
}

func (x *FundchannelStartResponse) Reset() {
	*x = FundchannelStartResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[201]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelStartResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelStartResponse) ProtoMessage() {}

func (x *FundchannelStartResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[201]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelStartResponse.ProtoReflect.Descriptor instead.
func (*FundchannelStartResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{201}
}

func (x *FundchannelStartResponse) GetFundingAddress() string {
	if x != nil {
		return x.FundingAddress
	}
	return ""
}

func (x *FundchannelStartResponse) GetScriptpubkey() []byte {
	if x != nil {
		return x.Scriptpubkey
	}
	return nil
}

func (x *FundchannelStartResponse) GetChannelType() *FundchannelStartChannelType {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

func (x *FundchannelStartResponse) GetCloseTo() []byte {
	if x != nil {
		return x.CloseTo
	}
	return nil
}

func (x *FundchannelStartResponse) GetWarningUsage() string {
	if x != nil {
		return x.WarningUsage
	}
	return ""
}

func (x *FundchannelStartResponse) GetMindepth() uint32 {
	if x != nil && x.Mindepth != nil {
		return *x.Mindepth
	}
	return 0
}

type FundchannelStartChannelType struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bits  []uint32          `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
	Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
}

func (x *FundchannelStartChannelType) Reset() {
	*x = FundchannelStartChannelType{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[202]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FundchannelStartChannelType) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FundchannelStartChannelType) ProtoMessage() {}

func (x *FundchannelStartChannelType) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[202]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FundchannelStartChannelType.ProtoReflect.Descriptor instead.
func (*FundchannelStartChannelType) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{202}
}

func (x *FundchannelStartChannelType) GetBits() []uint32 {
	if x != nil {
		return x.Bits
	}
	return nil
}

func (x *FundchannelStartChannelType) GetNames() []ChannelTypeName {
	if x != nil {
		return x.Names
	}
	return nil
}

type GetlogRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Level *GetlogRequest_GetlogLevel `protobuf:"varint,1,opt,name=level,proto3,enum=cln.GetlogRequest_GetlogLevel,oneof" json:"level,omitempty"`
}

func (x *GetlogRequest) Reset() {
	*x = GetlogRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[203]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetlogRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetlogRequest) ProtoMessage() {}

func (x *GetlogRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[203]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetlogRequest.ProtoReflect.Descriptor instead.
func (*GetlogRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{203}
}

func (x *GetlogRequest) GetLevel() GetlogRequest_GetlogLevel {
	if x != nil && x.Level != nil {
		return *x.Level
	}
	return GetlogRequest_BROKEN
}

type GetlogResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CreatedAt string       `protobuf:"bytes,1,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	BytesUsed uint32       `protobuf:"varint,2,opt,name=bytes_used,json=bytesUsed,proto3" json:"bytes_used,omitempty"`
	BytesMax  uint32       `protobuf:"varint,3,opt,name=bytes_max,json=bytesMax,proto3" json:"bytes_max,omitempty"`
	Log       []*GetlogLog `protobuf:"bytes,4,rep,name=log,proto3" json:"log,omitempty"`
}

func (x *GetlogResponse) Reset() {
	*x = GetlogResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[204]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetlogResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetlogResponse) ProtoMessage() {}

func (x *GetlogResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[204]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetlogResponse.ProtoReflect.Descriptor instead.
func (*GetlogResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{204}
}

func (x *GetlogResponse) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *GetlogResponse) GetBytesUsed() uint32 {
	if x != nil {
		return x.BytesUsed
	}
	return 0
}

func (x *GetlogResponse) GetBytesMax() uint32 {
	if x != nil {
		return x.BytesMax
	}
	return 0
}

func (x *GetlogResponse) GetLog() []*GetlogLog {
	if x != nil {
		return x.Log
	}
	return nil
}

type GetlogLog struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType   GetlogLog_GetlogLogType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.GetlogLog_GetlogLogType" json:"item_type,omitempty"`
	NumSkipped *uint32                 `protobuf:"varint,2,opt,name=num_skipped,json=numSkipped,proto3,oneof" json:"num_skipped,omitempty"`
	Time       *string                 `protobuf:"bytes,3,opt,name=time,proto3,oneof" json:"time,omitempty"`
	Source     *string                 `protobuf:"bytes,4,opt,name=source,proto3,oneof" json:"source,omitempty"`
	Log        *string                 `protobuf:"bytes,5,opt,name=log,proto3,oneof" json:"log,omitempty"`
	NodeId     []byte                  `protobuf:"bytes,6,opt,name=node_id,json=nodeId,proto3,oneof" json:"node_id,omitempty"`
	Data       []byte                  `protobuf:"bytes,7,opt,name=data,proto3,oneof" json:"data,omitempty"`
}

func (x *GetlogLog) Reset() {
	*x = GetlogLog{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[205]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetlogLog) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetlogLog) ProtoMessage() {}

func (x *GetlogLog) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[205]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetlogLog.ProtoReflect.Descriptor instead.
func (*GetlogLog) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{205}
}

func (x *GetlogLog) GetItemType() GetlogLog_GetlogLogType {
	if x != nil {
		return x.ItemType
	}
	return GetlogLog_SKIPPED
}

func (x *GetlogLog) GetNumSkipped() uint32 {
	if x != nil && x.NumSkipped != nil {
		return *x.NumSkipped
	}
	return 0
}

func (x *GetlogLog) GetTime() string {
	if x != nil && x.Time != nil {
		return *x.Time
	}
	return ""
}

func (x *GetlogLog) GetSource() string {
	if x != nil && x.Source != nil {
		return *x.Source
	}
	return ""
}

func (x *GetlogLog) GetLog() string {
	if x != nil && x.Log != nil {
		return *x.Log
	}
	return ""
}

func (x *GetlogLog) GetNodeId() []byte {
	if x != nil {
		return x.NodeId
	}
	return nil
}

func (x *GetlogLog) GetData() []byte {
	if x != nil {
		return x.Data
	}
	return nil
}

type FunderupdateRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Policy                               *FunderupdateRequest_FunderupdatePolicy `protobuf:"varint,1,opt,name=policy,proto3,enum=cln.FunderupdateRequest_FunderupdatePolicy,oneof" json:"policy,omitempty"`
	PolicyMod                            *Amount                                 `protobuf:"bytes,2,opt,name=policy_mod,json=policyMod,proto3,oneof" json:"policy_mod,omitempty"`
	LeasesOnly                           *bool                                   `protobuf:"varint,3,opt,name=leases_only,json=leasesOnly,proto3,oneof" json:"leases_only,omitempty"`
	MinTheirFundingMsat                  *Amount                                 `protobuf:"bytes,4,opt,name=min_their_funding_msat,json=minTheirFundingMsat,proto3,oneof" json:"min_their_funding_msat,omitempty"`
	MaxTheirFundingMsat                  *Amount                                 `protobuf:"bytes,5,opt,name=max_their_funding_msat,json=maxTheirFundingMsat,proto3,oneof" json:"max_their_funding_msat,omitempty"`
	PerChannelMinMsat                    *Amount                                 `protobuf:"bytes,6,opt,name=per_channel_min_msat,json=perChannelMinMsat,proto3,oneof" json:"per_channel_min_msat,omitempty"`
	PerChannelMaxMsat                    *Amount                                 `protobuf:"bytes,7,opt,name=per_channel_max_msat,json=perChannelMaxMsat,proto3,oneof" json:"per_channel_max_msat,omitempty"`
	ReserveTankMsat                      *Amount                                 `protobuf:"bytes,8,opt,name=reserve_tank_msat,json=reserveTankMsat,proto3,oneof" json:"reserve_tank_msat,omitempty"`
	FuzzPercent                          *uint32                                 `protobuf:"varint,9,opt,name=fuzz_percent,json=fuzzPercent,proto3,oneof" json:"fuzz_percent,omitempty"`
	FundProbability                      *uint32                                 `protobuf:"varint,10,opt,name=fund_probability,json=fundProbability,proto3,oneof" json:"fund_probability,omitempty"`
	LeaseFeeBaseMsat                     *Amount                                 `protobuf:"bytes,11,opt,name=lease_fee_base_msat,json=leaseFeeBaseMsat,proto3,oneof" json:"lease_fee_base_msat,omitempty"`
	LeaseFeeBasis                        *uint32                                 `protobuf:"varint,12,opt,name=lease_fee_basis,json=leaseFeeBasis,proto3,oneof" json:"lease_fee_basis,omitempty"`
	FundingWeight                        *uint32                                 `protobuf:"varint,13,opt,name=funding_weight,json=fundingWeight,proto3,oneof" json:"funding_weight,omitempty"`
	ChannelFeeMaxBaseMsat                *Amount                                 `protobuf:"bytes,14,opt,name=channel_fee_max_base_msat,json=channelFeeMaxBaseMsat,proto3,oneof" json:"channel_fee_max_base_msat,omitempty"`
	ChannelFeeMaxProportionalThousandths *uint32                                 `protobuf:"varint,15,opt,name=channel_fee_max_proportional_thousandths,json=channelFeeMaxProportionalThousandths,proto3,oneof" json:"channel_fee_max_proportional_thousandths,omitempty"`
	CompactLease                         []byte                                  `protobuf:"bytes,16,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
}

func (x *FunderupdateRequest) Reset() {
	*x = FunderupdateRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[206]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FunderupdateRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FunderupdateRequest) ProtoMessage() {}

func (x *FunderupdateRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[206]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FunderupdateRequest.ProtoReflect.Descriptor instead.
func (*FunderupdateRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{206}
}

func (x *FunderupdateRequest) GetPolicy() FunderupdateRequest_FunderupdatePolicy {
	if x != nil && x.Policy != nil {
		return *x.Policy
	}
	return FunderupdateRequest_MATCH
}

func (x *FunderupdateRequest) GetPolicyMod() *Amount {
	if x != nil {
		return x.PolicyMod
	}
	return nil
}

func (x *FunderupdateRequest) GetLeasesOnly() bool {
	if x != nil && x.LeasesOnly != nil {
		return *x.LeasesOnly
	}
	return false
}

func (x *FunderupdateRequest) GetMinTheirFundingMsat() *Amount {
	if x != nil {
		return x.MinTheirFundingMsat
	}
	return nil
}

func (x *FunderupdateRequest) GetMaxTheirFundingMsat() *Amount {
	if x != nil {
		return x.MaxTheirFundingMsat
	}
	return nil
}

func (x *FunderupdateRequest) GetPerChannelMinMsat() *Amount {
	if x != nil {
		return x.PerChannelMinMsat
	}
	return nil
}

func (x *FunderupdateRequest) GetPerChannelMaxMsat() *Amount {
	if x != nil {
		return x.PerChannelMaxMsat
	}
	return nil
}

func (x *FunderupdateRequest) GetReserveTankMsat() *Amount {
	if x != nil {
		return x.ReserveTankMsat
	}
	return nil
}

func (x *FunderupdateRequest) GetFuzzPercent() uint32 {
	if x != nil && x.FuzzPercent != nil {
		return *x.FuzzPercent
	}
	return 0
}

func (x *FunderupdateRequest) GetFundProbability() uint32 {
	if x != nil && x.FundProbability != nil {
		return *x.FundProbability
	}
	return 0
}

func (x *FunderupdateRequest) GetLeaseFeeBaseMsat() *Amount {
	if x != nil {
		return x.LeaseFeeBaseMsat
	}
	return nil
}

func (x *FunderupdateRequest) GetLeaseFeeBasis() uint32 {
	if x != nil && x.LeaseFeeBasis != nil {
		return *x.LeaseFeeBasis
	}
	return 0
}

func (x *FunderupdateRequest) GetFundingWeight() uint32 {
	if x != nil && x.FundingWeight != nil {
		return *x.FundingWeight
	}
	return 0
}

func (x *FunderupdateRequest) GetChannelFeeMaxBaseMsat() *Amount {
	if x != nil {
		return x.ChannelFeeMaxBaseMsat
	}
	return nil
}

func (x *FunderupdateRequest) GetChannelFeeMaxProportionalThousandths() uint32 {
	if x != nil && x.ChannelFeeMaxProportionalThousandths != nil {
		return *x.ChannelFeeMaxProportionalThousandths
	}
	return 0
}

func (x *FunderupdateRequest) GetCompactLease() []byte {
	if x != nil {
		return x.CompactLease
	}
	return nil
}

type FunderupdateResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Summary                              string                                  `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"`
	Policy                               FunderupdateResponse_FunderupdatePolicy `protobuf:"varint,2,opt,name=policy,proto3,enum=cln.FunderupdateResponse_FunderupdatePolicy" json:"policy,omitempty"`
	PolicyMod                            uint32                                  `protobuf:"varint,3,opt,name=policy_mod,json=policyMod,proto3" json:"policy_mod,omitempty"`
	LeasesOnly                           bool                                    `protobuf:"varint,4,opt,name=leases_only,json=leasesOnly,proto3" json:"leases_only,omitempty"`
	MinTheirFundingMsat                  *Amount                                 `protobuf:"bytes,5,opt,name=min_their_funding_msat,json=minTheirFundingMsat,proto3" json:"min_their_funding_msat,omitempty"`
	MaxTheirFundingMsat                  *Amount                                 `protobuf:"bytes,6,opt,name=max_their_funding_msat,json=maxTheirFundingMsat,proto3" json:"max_their_funding_msat,omitempty"`
	PerChannelMinMsat                    *Amount                                 `protobuf:"bytes,7,opt,name=per_channel_min_msat,json=perChannelMinMsat,proto3" json:"per_channel_min_msat,omitempty"`
	PerChannelMaxMsat                    *Amount                                 `protobuf:"bytes,8,opt,name=per_channel_max_msat,json=perChannelMaxMsat,proto3" json:"per_channel_max_msat,omitempty"`
	ReserveTankMsat                      *Amount                                 `protobuf:"bytes,9,opt,name=reserve_tank_msat,json=reserveTankMsat,proto3" json:"reserve_tank_msat,omitempty"`
	FuzzPercent                          uint32                                  `protobuf:"varint,10,opt,name=fuzz_percent,json=fuzzPercent,proto3" json:"fuzz_percent,omitempty"`
	FundProbability                      uint32                                  `protobuf:"varint,11,opt,name=fund_probability,json=fundProbability,proto3" json:"fund_probability,omitempty"`
	LeaseFeeBaseMsat                     *Amount                                 `protobuf:"bytes,12,opt,name=lease_fee_base_msat,json=leaseFeeBaseMsat,proto3,oneof" json:"lease_fee_base_msat,omitempty"`
	LeaseFeeBasis                        *uint32                                 `protobuf:"varint,13,opt,name=lease_fee_basis,json=leaseFeeBasis,proto3,oneof" json:"lease_fee_basis,omitempty"`
	FundingWeight                        *uint32                                 `protobuf:"varint,14,opt,name=funding_weight,json=fundingWeight,proto3,oneof" json:"funding_weight,omitempty"`
	ChannelFeeMaxBaseMsat                *Amount                                 `protobuf:"bytes,15,opt,name=channel_fee_max_base_msat,json=channelFeeMaxBaseMsat,proto3,oneof" json:"channel_fee_max_base_msat,omitempty"`
	ChannelFeeMaxProportionalThousandths *uint32                                 `protobuf:"varint,16,opt,name=channel_fee_max_proportional_thousandths,json=channelFeeMaxProportionalThousandths,proto3,oneof" json:"channel_fee_max_proportional_thousandths,omitempty"`
	CompactLease                         []byte                                  `protobuf:"bytes,17,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
}

func (x *FunderupdateResponse) Reset() {
	*x = FunderupdateResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[207]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FunderupdateResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FunderupdateResponse) ProtoMessage() {}

func (x *FunderupdateResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[207]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FunderupdateResponse.ProtoReflect.Descriptor instead.
func (*FunderupdateResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{207}
}

func (x *FunderupdateResponse) GetSummary() string {
	if x != nil {
		return x.Summary
	}
	return ""
}

func (x *FunderupdateResponse) GetPolicy() FunderupdateResponse_FunderupdatePolicy {
	if x != nil {
		return x.Policy
	}
	return FunderupdateResponse_MATCH
}

func (x *FunderupdateResponse) GetPolicyMod() uint32 {
	if x != nil {
		return x.PolicyMod
	}
	return 0
}

func (x *FunderupdateResponse) GetLeasesOnly() bool {
	if x != nil {
		return x.LeasesOnly
	}
	return false
}

func (x *FunderupdateResponse) GetMinTheirFundingMsat() *Amount {
	if x != nil {
		return x.MinTheirFundingMsat
	}
	return nil
}

func (x *FunderupdateResponse) GetMaxTheirFundingMsat() *Amount {
	if x != nil {
		return x.MaxTheirFundingMsat
	}
	return nil
}

func (x *FunderupdateResponse) GetPerChannelMinMsat() *Amount {
	if x != nil {
		return x.PerChannelMinMsat
	}
	return nil
}

func (x *FunderupdateResponse) GetPerChannelMaxMsat() *Amount {
	if x != nil {
		return x.PerChannelMaxMsat
	}
	return nil
}

func (x *FunderupdateResponse) GetReserveTankMsat() *Amount {
	if x != nil {
		return x.ReserveTankMsat
	}
	return nil
}

func (x *FunderupdateResponse) GetFuzzPercent() uint32 {
	if x != nil {
		return x.FuzzPercent
	}
	return 0
}

func (x *FunderupdateResponse) GetFundProbability() uint32 {
	if x != nil {
		return x.FundProbability
	}
	return 0
}

func (x *FunderupdateResponse) GetLeaseFeeBaseMsat() *Amount {
	if x != nil {
		return x.LeaseFeeBaseMsat
	}
	return nil
}

func (x *FunderupdateResponse) GetLeaseFeeBasis() uint32 {
	if x != nil && x.LeaseFeeBasis != nil {
		return *x.LeaseFeeBasis
	}
	return 0
}

func (x *FunderupdateResponse) GetFundingWeight() uint32 {
	if x != nil && x.FundingWeight != nil {
		return *x.FundingWeight
	}
	return 0
}

func (x *FunderupdateResponse) GetChannelFeeMaxBaseMsat() *Amount {
	if x != nil {
		return x.ChannelFeeMaxBaseMsat
	}
	return nil
}

func (x *FunderupdateResponse) GetChannelFeeMaxProportionalThousandths() uint32 {
	if x != nil && x.ChannelFeeMaxProportionalThousandths != nil {
		return *x.ChannelFeeMaxProportionalThousandths
	}
	return 0
}

func (x *FunderupdateResponse) GetCompactLease() []byte {
	if x != nil {
		return x.CompactLease
	}
	return nil
}

type GetrouteRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id          []byte   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Riskfactor  uint64   `protobuf:"varint,3,opt,name=riskfactor,proto3" json:"riskfactor,omitempty"`
	Cltv        *uint32  `protobuf:"varint,4,opt,name=cltv,proto3,oneof" json:"cltv,omitempty"`
	Fromid      []byte   `protobuf:"bytes,5,opt,name=fromid,proto3,oneof" json:"fromid,omitempty"`
	Fuzzpercent *uint32  `protobuf:"varint,6,opt,name=fuzzpercent,proto3,oneof" json:"fuzzpercent,omitempty"`
	Exclude     []string `protobuf:"bytes,7,rep,name=exclude,proto3" json:"exclude,omitempty"`
	Maxhops     *uint32  `protobuf:"varint,8,opt,name=maxhops,proto3,oneof" json:"maxhops,omitempty"`
	AmountMsat  *Amount  `protobuf:"bytes,9,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}

func (x *GetrouteRequest) Reset() {
	*x = GetrouteRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[208]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetrouteRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetrouteRequest) ProtoMessage() {}

func (x *GetrouteRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[208]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetrouteRequest.ProtoReflect.Descriptor instead.
func (*GetrouteRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{208}
}

func (x *GetrouteRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *GetrouteRequest) GetRiskfactor() uint64 {
	if x != nil {
		return x.Riskfactor
	}
	return 0
}

func (x *GetrouteRequest) GetCltv() uint32 {
	if x != nil && x.Cltv != nil {
		return *x.Cltv
	}
	return 0
}

func (x *GetrouteRequest) GetFromid() []byte {
	if x != nil {
		return x.Fromid
	}
	return nil
}

func (x *GetrouteRequest) GetFuzzpercent() uint32 {
	if x != nil && x.Fuzzpercent != nil {
		return *x.Fuzzpercent
	}
	return 0
}

func (x *GetrouteRequest) GetExclude() []string {
	if x != nil {
		return x.Exclude
	}
	return nil
}

func (x *GetrouteRequest) GetMaxhops() uint32 {
	if x != nil && x.Maxhops != nil {
		return *x.Maxhops
	}
	return 0
}

func (x *GetrouteRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

type GetrouteResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Route []*GetrouteRoute `protobuf:"bytes,1,rep,name=route,proto3" json:"route,omitempty"`
}

func (x *GetrouteResponse) Reset() {
	*x = GetrouteResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[209]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetrouteResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetrouteResponse) ProtoMessage() {}

func (x *GetrouteResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[209]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetrouteResponse.ProtoReflect.Descriptor instead.
func (*GetrouteResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{209}
}

func (x *GetrouteResponse) GetRoute() []*GetrouteRoute {
	if x != nil {
		return x.Route
	}
	return nil
}

type GetrouteRoute struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id         []byte                           `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Channel    string                           `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"`
	Direction  uint32                           `protobuf:"varint,3,opt,name=direction,proto3" json:"direction,omitempty"`
	AmountMsat *Amount                          `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	Delay      uint32                           `protobuf:"varint,5,opt,name=delay,proto3" json:"delay,omitempty"`
	Style      GetrouteRoute_GetrouteRouteStyle `protobuf:"varint,6,opt,name=style,proto3,enum=cln.GetrouteRoute_GetrouteRouteStyle" json:"style,omitempty"`
}

func (x *GetrouteRoute) Reset() {
	*x = GetrouteRoute{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[210]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetrouteRoute) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetrouteRoute) ProtoMessage() {}

func (x *GetrouteRoute) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[210]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetrouteRoute.ProtoReflect.Descriptor instead.
func (*GetrouteRoute) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{210}
}

func (x *GetrouteRoute) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *GetrouteRoute) GetChannel() string {
	if x != nil {
		return x.Channel
	}
	return ""
}

func (x *GetrouteRoute) GetDirection() uint32 {
	if x != nil {
		return x.Direction
	}
	return 0
}

func (x *GetrouteRoute) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *GetrouteRoute) GetDelay() uint32 {
	if x != nil {
		return x.Delay
	}
	return 0
}

func (x *GetrouteRoute) GetStyle() GetrouteRoute_GetrouteRouteStyle {
	if x != nil {
		return x.Style
	}
	return GetrouteRoute_TLV
}

type ListaddressesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Address *string `protobuf:"bytes,1,opt,name=address,proto3,oneof" json:"address,omitempty"`
	Start   *uint64 `protobuf:"varint,2,opt,name=start,proto3,oneof" json:"start,omitempty"`
	Limit   *uint32 `protobuf:"varint,3,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
}

func (x *ListaddressesRequest) Reset() {
	*x = ListaddressesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[211]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListaddressesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListaddressesRequest) ProtoMessage() {}

func (x *ListaddressesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[211]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListaddressesRequest.ProtoReflect.Descriptor instead.
func (*ListaddressesRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{211}
}

func (x *ListaddressesRequest) GetAddress() string {
	if x != nil && x.Address != nil {
		return *x.Address
	}
	return ""
}

func (x *ListaddressesRequest) GetStart() uint64 {
	if x != nil && x.Start != nil {
		return *x.Start
	}
	return 0
}

func (x *ListaddressesRequest) GetLimit() uint32 {
	if x != nil && x.Limit != nil {
		return *x.Limit
	}
	return 0
}

type ListaddressesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Addresses []*ListaddressesAddresses `protobuf:"bytes,1,rep,name=addresses,proto3" json:"addresses,omitempty"`
}

func (x *ListaddressesResponse) Reset() {
	*x = ListaddressesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[212]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListaddressesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListaddressesResponse) ProtoMessage() {}

func (x *ListaddressesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[212]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListaddressesResponse.ProtoReflect.Descriptor instead.
func (*ListaddressesResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{212}
}

func (x *ListaddressesResponse) GetAddresses() []*ListaddressesAddresses {
	if x != nil {
		return x.Addresses
	}
	return nil
}

type ListaddressesAddresses struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Keyidx uint64  `protobuf:"varint,1,opt,name=keyidx,proto3" json:"keyidx,omitempty"`
	Bech32 *string `protobuf:"bytes,2,opt,name=bech32,proto3,oneof" json:"bech32,omitempty"`
	P2Tr   *string `protobuf:"bytes,3,opt,name=p2tr,proto3,oneof" json:"p2tr,omitempty"`
}

func (x *ListaddressesAddresses) Reset() {
	*x = ListaddressesAddresses{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[213]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListaddressesAddresses) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListaddressesAddresses) ProtoMessage() {}

func (x *ListaddressesAddresses) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[213]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListaddressesAddresses.ProtoReflect.Descriptor instead.
func (*ListaddressesAddresses) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{213}
}

func (x *ListaddressesAddresses) GetKeyidx() uint64 {
	if x != nil {
		return x.Keyidx
	}
	return 0
}

func (x *ListaddressesAddresses) GetBech32() string {
	if x != nil && x.Bech32 != nil {
		return *x.Bech32
	}
	return ""
}

func (x *ListaddressesAddresses) GetP2Tr() string {
	if x != nil && x.P2Tr != nil {
		return *x.P2Tr
	}
	return ""
}

type ListforwardsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Status     *ListforwardsRequest_ListforwardsStatus `protobuf:"varint,1,opt,name=status,proto3,enum=cln.ListforwardsRequest_ListforwardsStatus,oneof" json:"status,omitempty"`
	InChannel  *string                                 `protobuf:"bytes,2,opt,name=in_channel,json=inChannel,proto3,oneof" json:"in_channel,omitempty"`
	OutChannel *string                                 `protobuf:"bytes,3,opt,name=out_channel,json=outChannel,proto3,oneof" json:"out_channel,omitempty"`
	Index      *ListforwardsRequest_ListforwardsIndex  `protobuf:"varint,4,opt,name=index,proto3,enum=cln.ListforwardsRequest_ListforwardsIndex,oneof" json:"index,omitempty"`
	Start      *uint64                                 `protobuf:"varint,5,opt,name=start,proto3,oneof" json:"start,omitempty"`
	Limit      *uint32                                 `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
}

func (x *ListforwardsRequest) Reset() {
	*x = ListforwardsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[214]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListforwardsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListforwardsRequest) ProtoMessage() {}

func (x *ListforwardsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[214]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListforwardsRequest.ProtoReflect.Descriptor instead.
func (*ListforwardsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{214}
}

func (x *ListforwardsRequest) GetStatus() ListforwardsRequest_ListforwardsStatus {
	if x != nil && x.Status != nil {
		return *x.Status
	}
	return ListforwardsRequest_OFFERED
}

func (x *ListforwardsRequest) GetInChannel() string {
	if x != nil && x.InChannel != nil {
		return *x.InChannel
	}
	return ""
}

func (x *ListforwardsRequest) GetOutChannel() string {
	if x != nil && x.OutChannel != nil {
		return *x.OutChannel
	}
	return ""
}

func (x *ListforwardsRequest) GetIndex() ListforwardsRequest_ListforwardsIndex {
	if x != nil && x.Index != nil {
		return *x.Index
	}
	return ListforwardsRequest_CREATED
}

func (x *ListforwardsRequest) GetStart() uint64 {
	if x != nil && x.Start != nil {
		return *x.Start
	}
	return 0
}

func (x *ListforwardsRequest) GetLimit() uint32 {
	if x != nil && x.Limit != nil {
		return *x.Limit
	}
	return 0
}

type ListforwardsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Forwards []*ListforwardsForwards `protobuf:"bytes,1,rep,name=forwards,proto3" json:"forwards,omitempty"`
}

func (x *ListforwardsResponse) Reset() {
	*x = ListforwardsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[215]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListforwardsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListforwardsResponse) ProtoMessage() {}

func (x *ListforwardsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[215]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListforwardsResponse.ProtoReflect.Descriptor instead.
func (*ListforwardsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{215}
}

func (x *ListforwardsResponse) GetForwards() []*ListforwardsForwards {
	if x != nil {
		return x.Forwards
	}
	return nil
}

type ListforwardsForwards struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InChannel    string                                          `protobuf:"bytes,1,opt,name=in_channel,json=inChannel,proto3" json:"in_channel,omitempty"`
	InMsat       *Amount                                         `protobuf:"bytes,2,opt,name=in_msat,json=inMsat,proto3" json:"in_msat,omitempty"`
	Status       ListforwardsForwards_ListforwardsForwardsStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListforwardsForwards_ListforwardsForwardsStatus" json:"status,omitempty"`
	ReceivedTime float64                                         `protobuf:"fixed64,4,opt,name=received_time,json=receivedTime,proto3" json:"received_time,omitempty"`
	OutChannel   *string                                         `protobuf:"bytes,5,opt,name=out_channel,json=outChannel,proto3,oneof" json:"out_channel,omitempty"`
	FeeMsat      *Amount                                         `protobuf:"bytes,7,opt,name=fee_msat,json=feeMsat,proto3,oneof" json:"fee_msat,omitempty"`
	OutMsat      *Amount                                         `protobuf:"bytes,8,opt,name=out_msat,json=outMsat,proto3,oneof" json:"out_msat,omitempty"`
	Style        *ListforwardsForwards_ListforwardsForwardsStyle `protobuf:"varint,9,opt,name=style,proto3,enum=cln.ListforwardsForwards_ListforwardsForwardsStyle,oneof" json:"style,omitempty"`
	InHtlcId     *uint64                                         `protobuf:"varint,10,opt,name=in_htlc_id,json=inHtlcId,proto3,oneof" json:"in_htlc_id,omitempty"`
	OutHtlcId    *uint64                                         `protobuf:"varint,11,opt,name=out_htlc_id,json=outHtlcId,proto3,oneof" json:"out_htlc_id,omitempty"`
	CreatedIndex *uint64                                         `protobuf:"varint,12,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex *uint64                                         `protobuf:"varint,13,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
	ResolvedTime *float64                                        `protobuf:"fixed64,14,opt,name=resolved_time,json=resolvedTime,proto3,oneof" json:"resolved_time,omitempty"`
	Failcode     *uint32                                         `protobuf:"varint,15,opt,name=failcode,proto3,oneof" json:"failcode,omitempty"`
	Failreason   *string                                         `protobuf:"bytes,16,opt,name=failreason,proto3,oneof" json:"failreason,omitempty"`
}

func (x *ListforwardsForwards) Reset() {
	*x = ListforwardsForwards{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[216]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListforwardsForwards) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListforwardsForwards) ProtoMessage() {}

func (x *ListforwardsForwards) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[216]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListforwardsForwards.ProtoReflect.Descriptor instead.
func (*ListforwardsForwards) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{216}
}

func (x *ListforwardsForwards) GetInChannel() string {
	if x != nil {
		return x.InChannel
	}
	return ""
}

func (x *ListforwardsForwards) GetInMsat() *Amount {
	if x != nil {
		return x.InMsat
	}
	return nil
}

func (x *ListforwardsForwards) GetStatus() ListforwardsForwards_ListforwardsForwardsStatus {
	if x != nil {
		return x.Status
	}
	return ListforwardsForwards_OFFERED
}

func (x *ListforwardsForwards) GetReceivedTime() float64 {
	if x != nil {
		return x.ReceivedTime
	}
	return 0
}

func (x *ListforwardsForwards) GetOutChannel() string {
	if x != nil && x.OutChannel != nil {
		return *x.OutChannel
	}
	return ""
}

func (x *ListforwardsForwards) GetFeeMsat() *Amount {
	if x != nil {
		return x.FeeMsat
	}
	return nil
}

func (x *ListforwardsForwards) GetOutMsat() *Amount {
	if x != nil {
		return x.OutMsat
	}
	return nil
}

func (x *ListforwardsForwards) GetStyle() ListforwardsForwards_ListforwardsForwardsStyle {
	if x != nil && x.Style != nil {
		return *x.Style
	}
	return ListforwardsForwards_LEGACY
}

func (x *ListforwardsForwards) GetInHtlcId() uint64 {
	if x != nil && x.InHtlcId != nil {
		return *x.InHtlcId
	}
	return 0
}

func (x *ListforwardsForwards) GetOutHtlcId() uint64 {
	if x != nil && x.OutHtlcId != nil {
		return *x.OutHtlcId
	}
	return 0
}

func (x *ListforwardsForwards) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *ListforwardsForwards) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

func (x *ListforwardsForwards) GetResolvedTime() float64 {
	if x != nil && x.ResolvedTime != nil {
		return *x.ResolvedTime
	}
	return 0
}

func (x *ListforwardsForwards) GetFailcode() uint32 {
	if x != nil && x.Failcode != nil {
		return *x.Failcode
	}
	return 0
}

func (x *ListforwardsForwards) GetFailreason() string {
	if x != nil && x.Failreason != nil {
		return *x.Failreason
	}
	return ""
}

type ListoffersRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OfferId    []byte `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3,oneof" json:"offer_id,omitempty"`
	ActiveOnly *bool  `protobuf:"varint,2,opt,name=active_only,json=activeOnly,proto3,oneof" json:"active_only,omitempty"`
}

func (x *ListoffersRequest) Reset() {
	*x = ListoffersRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[217]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListoffersRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListoffersRequest) ProtoMessage() {}

func (x *ListoffersRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[217]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListoffersRequest.ProtoReflect.Descriptor instead.
func (*ListoffersRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{217}
}

func (x *ListoffersRequest) GetOfferId() []byte {
	if x != nil {
		return x.OfferId
	}
	return nil
}

func (x *ListoffersRequest) GetActiveOnly() bool {
	if x != nil && x.ActiveOnly != nil {
		return *x.ActiveOnly
	}
	return false
}

type ListoffersResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Offers []*ListoffersOffers `protobuf:"bytes,1,rep,name=offers,proto3" json:"offers,omitempty"`
}

func (x *ListoffersResponse) Reset() {
	*x = ListoffersResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[218]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListoffersResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListoffersResponse) ProtoMessage() {}

func (x *ListoffersResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[218]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListoffersResponse.ProtoReflect.Descriptor instead.
func (*ListoffersResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{218}
}

func (x *ListoffersResponse) GetOffers() []*ListoffersOffers {
	if x != nil {
		return x.Offers
	}
	return nil
}

type ListoffersOffers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OfferId   []byte  `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
	Active    bool    `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
	SingleUse bool    `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	Bolt12    string  `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
	Used      bool    `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
	Label     *string `protobuf:"bytes,6,opt,name=label,proto3,oneof" json:"label,omitempty"`
}

func (x *ListoffersOffers) Reset() {
	*x = ListoffersOffers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[219]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListoffersOffers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListoffersOffers) ProtoMessage() {}

func (x *ListoffersOffers) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[219]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListoffersOffers.ProtoReflect.Descriptor instead.
func (*ListoffersOffers) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{219}
}

func (x *ListoffersOffers) GetOfferId() []byte {
	if x != nil {
		return x.OfferId
	}
	return nil
}

func (x *ListoffersOffers) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *ListoffersOffers) GetSingleUse() bool {
	if x != nil {
		return x.SingleUse
	}
	return false
}

func (x *ListoffersOffers) GetBolt12() string {
	if x != nil {
		return x.Bolt12
	}
	return ""
}

func (x *ListoffersOffers) GetUsed() bool {
	if x != nil {
		return x.Used
	}
	return false
}

func (x *ListoffersOffers) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

type ListpaysRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bolt11      *string                         `protobuf:"bytes,1,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	PaymentHash []byte                          `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
	Status      *ListpaysRequest_ListpaysStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cln.ListpaysRequest_ListpaysStatus,oneof" json:"status,omitempty"`
	Index       *ListpaysRequest_ListpaysIndex  `protobuf:"varint,4,opt,name=index,proto3,enum=cln.ListpaysRequest_ListpaysIndex,oneof" json:"index,omitempty"`
	Start       *uint64                         `protobuf:"varint,5,opt,name=start,proto3,oneof" json:"start,omitempty"`
	Limit       *uint32                         `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
}

func (x *ListpaysRequest) Reset() {
	*x = ListpaysRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[220]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpaysRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpaysRequest) ProtoMessage() {}

func (x *ListpaysRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[220]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpaysRequest.ProtoReflect.Descriptor instead.
func (*ListpaysRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{220}
}

func (x *ListpaysRequest) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *ListpaysRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *ListpaysRequest) GetStatus() ListpaysRequest_ListpaysStatus {
	if x != nil && x.Status != nil {
		return *x.Status
	}
	return ListpaysRequest_PENDING
}

func (x *ListpaysRequest) GetIndex() ListpaysRequest_ListpaysIndex {
	if x != nil && x.Index != nil {
		return *x.Index
	}
	return ListpaysRequest_CREATED
}

func (x *ListpaysRequest) GetStart() uint64 {
	if x != nil && x.Start != nil {
		return *x.Start
	}
	return 0
}

func (x *ListpaysRequest) GetLimit() uint32 {
	if x != nil && x.Limit != nil {
		return *x.Limit
	}
	return 0
}

type ListpaysResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Pays []*ListpaysPays `protobuf:"bytes,1,rep,name=pays,proto3" json:"pays,omitempty"`
}

func (x *ListpaysResponse) Reset() {
	*x = ListpaysResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[221]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpaysResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpaysResponse) ProtoMessage() {}

func (x *ListpaysResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[221]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpaysResponse.ProtoReflect.Descriptor instead.
func (*ListpaysResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{221}
}

func (x *ListpaysResponse) GetPays() []*ListpaysPays {
	if x != nil {
		return x.Pays
	}
	return nil
}

type ListpaysPays struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PaymentHash    []byte                          `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status         ListpaysPays_ListpaysPaysStatus `protobuf:"varint,2,opt,name=status,proto3,enum=cln.ListpaysPays_ListpaysPaysStatus" json:"status,omitempty"`
	Destination    []byte                          `protobuf:"bytes,3,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	CreatedAt      uint64                          `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Label          *string                         `protobuf:"bytes,5,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Bolt11         *string                         `protobuf:"bytes,6,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12         *string                         `protobuf:"bytes,7,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	AmountMsat     *Amount                         `protobuf:"bytes,8,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	AmountSentMsat *Amount                         `protobuf:"bytes,9,opt,name=amount_sent_msat,json=amountSentMsat,proto3,oneof" json:"amount_sent_msat,omitempty"`
	Erroronion     []byte                          `protobuf:"bytes,10,opt,name=erroronion,proto3,oneof" json:"erroronion,omitempty"`
	Description    *string                         `protobuf:"bytes,11,opt,name=description,proto3,oneof" json:"description,omitempty"`
	CompletedAt    *uint64                         `protobuf:"varint,12,opt,name=completed_at,json=completedAt,proto3,oneof" json:"completed_at,omitempty"`
	Preimage       []byte                          `protobuf:"bytes,13,opt,name=preimage,proto3,oneof" json:"preimage,omitempty"`
	NumberOfParts  *uint64                         `protobuf:"varint,14,opt,name=number_of_parts,json=numberOfParts,proto3,oneof" json:"number_of_parts,omitempty"`
	CreatedIndex   *uint64                         `protobuf:"varint,15,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex   *uint64                         `protobuf:"varint,16,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
}

func (x *ListpaysPays) Reset() {
	*x = ListpaysPays{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[222]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListpaysPays) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListpaysPays) ProtoMessage() {}

func (x *ListpaysPays) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[222]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListpaysPays.ProtoReflect.Descriptor instead.
func (*ListpaysPays) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{222}
}

func (x *ListpaysPays) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *ListpaysPays) GetStatus() ListpaysPays_ListpaysPaysStatus {
	if x != nil {
		return x.Status
	}
	return ListpaysPays_PENDING
}

func (x *ListpaysPays) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *ListpaysPays) GetCreatedAt() uint64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *ListpaysPays) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *ListpaysPays) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *ListpaysPays) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *ListpaysPays) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *ListpaysPays) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *ListpaysPays) GetErroronion() []byte {
	if x != nil {
		return x.Erroronion
	}
	return nil
}

func (x *ListpaysPays) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *ListpaysPays) GetCompletedAt() uint64 {
	if x != nil && x.CompletedAt != nil {
		return *x.CompletedAt
	}
	return 0
}

func (x *ListpaysPays) GetPreimage() []byte {
	if x != nil {
		return x.Preimage
	}
	return nil
}

func (x *ListpaysPays) GetNumberOfParts() uint64 {
	if x != nil && x.NumberOfParts != nil {
		return *x.NumberOfParts
	}
	return 0
}

func (x *ListpaysPays) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *ListpaysPays) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

type ListhtlcsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id *string `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
}

func (x *ListhtlcsRequest) Reset() {
	*x = ListhtlcsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[223]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListhtlcsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListhtlcsRequest) ProtoMessage() {}

func (x *ListhtlcsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[223]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListhtlcsRequest.ProtoReflect.Descriptor instead.
func (*ListhtlcsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{223}
}

func (x *ListhtlcsRequest) GetId() string {
	if x != nil && x.Id != nil {
		return *x.Id
	}
	return ""
}

type ListhtlcsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Htlcs []*ListhtlcsHtlcs `protobuf:"bytes,1,rep,name=htlcs,proto3" json:"htlcs,omitempty"`
}

func (x *ListhtlcsResponse) Reset() {
	*x = ListhtlcsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[224]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListhtlcsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListhtlcsResponse) ProtoMessage() {}

func (x *ListhtlcsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[224]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListhtlcsResponse.ProtoReflect.Descriptor instead.
func (*ListhtlcsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{224}
}

func (x *ListhtlcsResponse) GetHtlcs() []*ListhtlcsHtlcs {
	if x != nil {
		return x.Htlcs
	}
	return nil
}

type ListhtlcsHtlcs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ShortChannelId string                                 `protobuf:"bytes,1,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
	Id             uint64                                 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
	Expiry         uint32                                 `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
	AmountMsat     *Amount                                `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	Direction      ListhtlcsHtlcs_ListhtlcsHtlcsDirection `protobuf:"varint,5,opt,name=direction,proto3,enum=cln.ListhtlcsHtlcs_ListhtlcsHtlcsDirection" json:"direction,omitempty"`
	PaymentHash    []byte                                 `protobuf:"bytes,6,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	State          HtlcState                              `protobuf:"varint,7,opt,name=state,proto3,enum=cln.HtlcState" json:"state,omitempty"`
}

func (x *ListhtlcsHtlcs) Reset() {
	*x = ListhtlcsHtlcs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[225]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListhtlcsHtlcs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListhtlcsHtlcs) ProtoMessage() {}

func (x *ListhtlcsHtlcs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[225]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListhtlcsHtlcs.ProtoReflect.Descriptor instead.
func (*ListhtlcsHtlcs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{225}
}

func (x *ListhtlcsHtlcs) GetShortChannelId() string {
	if x != nil {
		return x.ShortChannelId
	}
	return ""
}

func (x *ListhtlcsHtlcs) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *ListhtlcsHtlcs) GetExpiry() uint32 {
	if x != nil {
		return x.Expiry
	}
	return 0
}

func (x *ListhtlcsHtlcs) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *ListhtlcsHtlcs) GetDirection() ListhtlcsHtlcs_ListhtlcsHtlcsDirection {
	if x != nil {
		return x.Direction
	}
	return ListhtlcsHtlcs_OUT
}

func (x *ListhtlcsHtlcs) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *ListhtlcsHtlcs) GetState() HtlcState {
	if x != nil {
		return x.State
	}
	return HtlcState_SentAddHtlc
}

type MultifundchannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destinations      []*MultifundchannelDestinations `protobuf:"bytes,1,rep,name=destinations,proto3" json:"destinations,omitempty"`
	Feerate           *Feerate                        `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
	Minconf           *int64                          `protobuf:"zigzag64,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
	Utxos             []*Outpoint                     `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
	Minchannels       *int64                          `protobuf:"zigzag64,5,opt,name=minchannels,proto3,oneof" json:"minchannels,omitempty"`
	CommitmentFeerate *Feerate                        `protobuf:"bytes,6,opt,name=commitment_feerate,json=commitmentFeerate,proto3,oneof" json:"commitment_feerate,omitempty"`
}

func (x *MultifundchannelRequest) Reset() {
	*x = MultifundchannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[226]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultifundchannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultifundchannelRequest) ProtoMessage() {}

func (x *MultifundchannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[226]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultifundchannelRequest.ProtoReflect.Descriptor instead.
func (*MultifundchannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{226}
}

func (x *MultifundchannelRequest) GetDestinations() []*MultifundchannelDestinations {
	if x != nil {
		return x.Destinations
	}
	return nil
}

func (x *MultifundchannelRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *MultifundchannelRequest) GetMinconf() int64 {
	if x != nil && x.Minconf != nil {
		return *x.Minconf
	}
	return 0
}

func (x *MultifundchannelRequest) GetUtxos() []*Outpoint {
	if x != nil {
		return x.Utxos
	}
	return nil
}

func (x *MultifundchannelRequest) GetMinchannels() int64 {
	if x != nil && x.Minchannels != nil {
		return *x.Minchannels
	}
	return 0
}

func (x *MultifundchannelRequest) GetCommitmentFeerate() *Feerate {
	if x != nil {
		return x.CommitmentFeerate
	}
	return nil
}

type MultifundchannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tx         []byte                        `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
	Txid       []byte                        `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
	ChannelIds []*MultifundchannelChannelIds `protobuf:"bytes,3,rep,name=channel_ids,json=channelIds,proto3" json:"channel_ids,omitempty"`
	Failed     []*MultifundchannelFailed     `protobuf:"bytes,4,rep,name=failed,proto3" json:"failed,omitempty"`
}

func (x *MultifundchannelResponse) Reset() {
	*x = MultifundchannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[227]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultifundchannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultifundchannelResponse) ProtoMessage() {}

func (x *MultifundchannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[227]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultifundchannelResponse.ProtoReflect.Descriptor instead.
func (*MultifundchannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{227}
}

func (x *MultifundchannelResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *MultifundchannelResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *MultifundchannelResponse) GetChannelIds() []*MultifundchannelChannelIds {
	if x != nil {
		return x.ChannelIds
	}
	return nil
}

func (x *MultifundchannelResponse) GetFailed() []*MultifundchannelFailed {
	if x != nil {
		return x.Failed
	}
	return nil
}

type MultifundchannelDestinations struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id           string       `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Amount       *AmountOrAll `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"`
	Announce     *bool        `protobuf:"varint,3,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
	PushMsat     *Amount      `protobuf:"bytes,4,opt,name=push_msat,json=pushMsat,proto3,oneof" json:"push_msat,omitempty"`
	CloseTo      *string      `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
	RequestAmt   *Amount      `protobuf:"bytes,6,opt,name=request_amt,json=requestAmt,proto3,oneof" json:"request_amt,omitempty"`
	CompactLease *string      `protobuf:"bytes,7,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
	Mindepth     *uint32      `protobuf:"varint,8,opt,name=mindepth,proto3,oneof" json:"mindepth,omitempty"`
	Reserve      *Amount      `protobuf:"bytes,9,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
}

func (x *MultifundchannelDestinations) Reset() {
	*x = MultifundchannelDestinations{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[228]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultifundchannelDestinations) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultifundchannelDestinations) ProtoMessage() {}

func (x *MultifundchannelDestinations) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[228]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultifundchannelDestinations.ProtoReflect.Descriptor instead.
func (*MultifundchannelDestinations) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{228}
}

func (x *MultifundchannelDestinations) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *MultifundchannelDestinations) GetAmount() *AmountOrAll {
	if x != nil {
		return x.Amount
	}
	return nil
}

func (x *MultifundchannelDestinations) GetAnnounce() bool {
	if x != nil && x.Announce != nil {
		return *x.Announce
	}
	return false
}

func (x *MultifundchannelDestinations) GetPushMsat() *Amount {
	if x != nil {
		return x.PushMsat
	}
	return nil
}

func (x *MultifundchannelDestinations) GetCloseTo() string {
	if x != nil && x.CloseTo != nil {
		return *x.CloseTo
	}
	return ""
}

func (x *MultifundchannelDestinations) GetRequestAmt() *Amount {
	if x != nil {
		return x.RequestAmt
	}
	return nil
}

func (x *MultifundchannelDestinations) GetCompactLease() string {
	if x != nil && x.CompactLease != nil {
		return *x.CompactLease
	}
	return ""
}

func (x *MultifundchannelDestinations) GetMindepth() uint32 {
	if x != nil && x.Mindepth != nil {
		return *x.Mindepth
	}
	return 0
}

func (x *MultifundchannelDestinations) GetReserve() *Amount {
	if x != nil {
		return x.Reserve
	}
	return nil
}

type MultifundchannelChannelIds struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id          []byte                                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Outnum      uint32                                 `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
	ChannelId   []byte                                 `protobuf:"bytes,3,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	ChannelType *MultifundchannelChannelIdsChannelType `protobuf:"bytes,4,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
	CloseTo     []byte                                 `protobuf:"bytes,5,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
}

func (x *MultifundchannelChannelIds) Reset() {
	*x = MultifundchannelChannelIds{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[229]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultifundchannelChannelIds) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultifundchannelChannelIds) ProtoMessage() {}

func (x *MultifundchannelChannelIds) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[229]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultifundchannelChannelIds.ProtoReflect.Descriptor instead.
func (*MultifundchannelChannelIds) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{229}
}

func (x *MultifundchannelChannelIds) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *MultifundchannelChannelIds) GetOutnum() uint32 {
	if x != nil {
		return x.Outnum
	}
	return 0
}

func (x *MultifundchannelChannelIds) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *MultifundchannelChannelIds) GetChannelType() *MultifundchannelChannelIdsChannelType {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

func (x *MultifundchannelChannelIds) GetCloseTo() []byte {
	if x != nil {
		return x.CloseTo
	}
	return nil
}

type MultifundchannelChannelIdsChannelType struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bits  []uint32          `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
	Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
}

func (x *MultifundchannelChannelIdsChannelType) Reset() {
	*x = MultifundchannelChannelIdsChannelType{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[230]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultifundchannelChannelIdsChannelType) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultifundchannelChannelIdsChannelType) ProtoMessage() {}

func (x *MultifundchannelChannelIdsChannelType) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[230]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultifundchannelChannelIdsChannelType.ProtoReflect.Descriptor instead.
func (*MultifundchannelChannelIdsChannelType) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{230}
}

func (x *MultifundchannelChannelIdsChannelType) GetBits() []uint32 {
	if x != nil {
		return x.Bits
	}
	return nil
}

func (x *MultifundchannelChannelIdsChannelType) GetNames() []ChannelTypeName {
	if x != nil {
		return x.Names
	}
	return nil
}

type MultifundchannelFailed struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id     []byte                                              `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Method MultifundchannelFailed_MultifundchannelFailedMethod `protobuf:"varint,2,opt,name=method,proto3,enum=cln.MultifundchannelFailed_MultifundchannelFailedMethod" json:"method,omitempty"`
	Error  *MultifundchannelFailedError                        `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"`
}

func (x *MultifundchannelFailed) Reset() {
	*x = MultifundchannelFailed{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[231]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultifundchannelFailed) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultifundchannelFailed) ProtoMessage() {}

func (x *MultifundchannelFailed) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[231]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultifundchannelFailed.ProtoReflect.Descriptor instead.
func (*MultifundchannelFailed) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{231}
}

func (x *MultifundchannelFailed) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *MultifundchannelFailed) GetMethod() MultifundchannelFailed_MultifundchannelFailedMethod {
	if x != nil {
		return x.Method
	}
	return MultifundchannelFailed_CONNECT
}

func (x *MultifundchannelFailed) GetError() *MultifundchannelFailedError {
	if x != nil {
		return x.Error
	}
	return nil
}

type MultifundchannelFailedError struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Code    int64  `protobuf:"zigzag64,1,opt,name=code,proto3" json:"code,omitempty"`
	Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
}

func (x *MultifundchannelFailedError) Reset() {
	*x = MultifundchannelFailedError{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[232]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultifundchannelFailedError) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultifundchannelFailedError) ProtoMessage() {}

func (x *MultifundchannelFailedError) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[232]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultifundchannelFailedError.ProtoReflect.Descriptor instead.
func (*MultifundchannelFailedError) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{232}
}

func (x *MultifundchannelFailedError) GetCode() int64 {
	if x != nil {
		return x.Code
	}
	return 0
}

func (x *MultifundchannelFailedError) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type MultiwithdrawRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Outputs []*OutputDesc `protobuf:"bytes,1,rep,name=outputs,proto3" json:"outputs,omitempty"`
	Feerate *Feerate      `protobuf:"bytes,2,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
	Minconf *uint32       `protobuf:"varint,3,opt,name=minconf,proto3,oneof" json:"minconf,omitempty"`
	Utxos   []*Outpoint   `protobuf:"bytes,4,rep,name=utxos,proto3" json:"utxos,omitempty"`
}

func (x *MultiwithdrawRequest) Reset() {
	*x = MultiwithdrawRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[233]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultiwithdrawRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultiwithdrawRequest) ProtoMessage() {}

func (x *MultiwithdrawRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[233]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultiwithdrawRequest.ProtoReflect.Descriptor instead.
func (*MultiwithdrawRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{233}
}

func (x *MultiwithdrawRequest) GetOutputs() []*OutputDesc {
	if x != nil {
		return x.Outputs
	}
	return nil
}

func (x *MultiwithdrawRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *MultiwithdrawRequest) GetMinconf() uint32 {
	if x != nil && x.Minconf != nil {
		return *x.Minconf
	}
	return 0
}

func (x *MultiwithdrawRequest) GetUtxos() []*Outpoint {
	if x != nil {
		return x.Utxos
	}
	return nil
}

type MultiwithdrawResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tx   []byte `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
	Txid []byte `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *MultiwithdrawResponse) Reset() {
	*x = MultiwithdrawResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[234]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *MultiwithdrawResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*MultiwithdrawResponse) ProtoMessage() {}

func (x *MultiwithdrawResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[234]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use MultiwithdrawResponse.ProtoReflect.Descriptor instead.
func (*MultiwithdrawResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{234}
}

func (x *MultiwithdrawResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *MultiwithdrawResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type OfferRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Amount                   string  `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
	Description              *string `protobuf:"bytes,2,opt,name=description,proto3,oneof" json:"description,omitempty"`
	Issuer                   *string `protobuf:"bytes,3,opt,name=issuer,proto3,oneof" json:"issuer,omitempty"`
	Label                    *string `protobuf:"bytes,4,opt,name=label,proto3,oneof" json:"label,omitempty"`
	QuantityMax              *uint64 `protobuf:"varint,5,opt,name=quantity_max,json=quantityMax,proto3,oneof" json:"quantity_max,omitempty"`
	AbsoluteExpiry           *uint64 `protobuf:"varint,6,opt,name=absolute_expiry,json=absoluteExpiry,proto3,oneof" json:"absolute_expiry,omitempty"`
	Recurrence               *string `protobuf:"bytes,7,opt,name=recurrence,proto3,oneof" json:"recurrence,omitempty"`
	RecurrenceBase           *string `protobuf:"bytes,8,opt,name=recurrence_base,json=recurrenceBase,proto3,oneof" json:"recurrence_base,omitempty"`
	RecurrencePaywindow      *string `protobuf:"bytes,9,opt,name=recurrence_paywindow,json=recurrencePaywindow,proto3,oneof" json:"recurrence_paywindow,omitempty"`
	RecurrenceLimit          *uint32 `protobuf:"varint,10,opt,name=recurrence_limit,json=recurrenceLimit,proto3,oneof" json:"recurrence_limit,omitempty"`
	SingleUse                *bool   `protobuf:"varint,11,opt,name=single_use,json=singleUse,proto3,oneof" json:"single_use,omitempty"`
	RecurrenceStartAnyPeriod *bool   `protobuf:"varint,12,opt,name=recurrence_start_any_period,json=recurrenceStartAnyPeriod,proto3,oneof" json:"recurrence_start_any_period,omitempty"`
}

func (x *OfferRequest) Reset() {
	*x = OfferRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[235]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OfferRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OfferRequest) ProtoMessage() {}

func (x *OfferRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[235]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OfferRequest.ProtoReflect.Descriptor instead.
func (*OfferRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{235}
}

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

func (x *OfferRequest) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *OfferRequest) GetIssuer() string {
	if x != nil && x.Issuer != nil {
		return *x.Issuer
	}
	return ""
}

func (x *OfferRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *OfferRequest) GetQuantityMax() uint64 {
	if x != nil && x.QuantityMax != nil {
		return *x.QuantityMax
	}
	return 0
}

func (x *OfferRequest) GetAbsoluteExpiry() uint64 {
	if x != nil && x.AbsoluteExpiry != nil {
		return *x.AbsoluteExpiry
	}
	return 0
}

func (x *OfferRequest) GetRecurrence() string {
	if x != nil && x.Recurrence != nil {
		return *x.Recurrence
	}
	return ""
}

func (x *OfferRequest) GetRecurrenceBase() string {
	if x != nil && x.RecurrenceBase != nil {
		return *x.RecurrenceBase
	}
	return ""
}

func (x *OfferRequest) GetRecurrencePaywindow() string {
	if x != nil && x.RecurrencePaywindow != nil {
		return *x.RecurrencePaywindow
	}
	return ""
}

func (x *OfferRequest) GetRecurrenceLimit() uint32 {
	if x != nil && x.RecurrenceLimit != nil {
		return *x.RecurrenceLimit
	}
	return 0
}

func (x *OfferRequest) GetSingleUse() bool {
	if x != nil && x.SingleUse != nil {
		return *x.SingleUse
	}
	return false
}

func (x *OfferRequest) GetRecurrenceStartAnyPeriod() bool {
	if x != nil && x.RecurrenceStartAnyPeriod != nil {
		return *x.RecurrenceStartAnyPeriod
	}
	return false
}

type OfferResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OfferId   []byte  `protobuf:"bytes,1,opt,name=offer_id,json=offerId,proto3" json:"offer_id,omitempty"`
	Active    bool    `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
	SingleUse bool    `protobuf:"varint,3,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	Bolt12    string  `protobuf:"bytes,4,opt,name=bolt12,proto3" json:"bolt12,omitempty"`
	Used      bool    `protobuf:"varint,5,opt,name=used,proto3" json:"used,omitempty"`
	Created   bool    `protobuf:"varint,6,opt,name=created,proto3" json:"created,omitempty"`
	Label     *string `protobuf:"bytes,7,opt,name=label,proto3,oneof" json:"label,omitempty"`
}

func (x *OfferResponse) Reset() {
	*x = OfferResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[236]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OfferResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OfferResponse) ProtoMessage() {}

func (x *OfferResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[236]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OfferResponse.ProtoReflect.Descriptor instead.
func (*OfferResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{236}
}

func (x *OfferResponse) GetOfferId() []byte {
	if x != nil {
		return x.OfferId
	}
	return nil
}

func (x *OfferResponse) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *OfferResponse) GetSingleUse() bool {
	if x != nil {
		return x.SingleUse
	}
	return false
}

func (x *OfferResponse) GetBolt12() string {
	if x != nil {
		return x.Bolt12
	}
	return ""
}

func (x *OfferResponse) GetUsed() bool {
	if x != nil {
		return x.Used
	}
	return false
}

func (x *OfferResponse) GetCreated() bool {
	if x != nil {
		return x.Created
	}
	return false
}

func (x *OfferResponse) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

type OpenchannelAbortRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
}

func (x *OpenchannelAbortRequest) Reset() {
	*x = OpenchannelAbortRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[237]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelAbortRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelAbortRequest) ProtoMessage() {}

func (x *OpenchannelAbortRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[237]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelAbortRequest.ProtoReflect.Descriptor instead.
func (*OpenchannelAbortRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{237}
}

func (x *OpenchannelAbortRequest) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

type OpenchannelAbortResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId       []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	ChannelCanceled bool   `protobuf:"varint,2,opt,name=channel_canceled,json=channelCanceled,proto3" json:"channel_canceled,omitempty"`
	Reason          string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason,omitempty"`
}

func (x *OpenchannelAbortResponse) Reset() {
	*x = OpenchannelAbortResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[238]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelAbortResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelAbortResponse) ProtoMessage() {}

func (x *OpenchannelAbortResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[238]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelAbortResponse.ProtoReflect.Descriptor instead.
func (*OpenchannelAbortResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{238}
}

func (x *OpenchannelAbortResponse) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *OpenchannelAbortResponse) GetChannelCanceled() bool {
	if x != nil {
		return x.ChannelCanceled
	}
	return false
}

func (x *OpenchannelAbortResponse) GetReason() string {
	if x != nil {
		return x.Reason
	}
	return ""
}

type OpenchannelBumpRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId      []byte   `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	Initialpsbt    string   `protobuf:"bytes,2,opt,name=initialpsbt,proto3" json:"initialpsbt,omitempty"`
	FundingFeerate *Feerate `protobuf:"bytes,3,opt,name=funding_feerate,json=fundingFeerate,proto3,oneof" json:"funding_feerate,omitempty"`
	Amount         *Amount  `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount,omitempty"`
}

func (x *OpenchannelBumpRequest) Reset() {
	*x = OpenchannelBumpRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[239]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelBumpRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelBumpRequest) ProtoMessage() {}

func (x *OpenchannelBumpRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[239]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelBumpRequest.ProtoReflect.Descriptor instead.
func (*OpenchannelBumpRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{239}
}

func (x *OpenchannelBumpRequest) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *OpenchannelBumpRequest) GetInitialpsbt() string {
	if x != nil {
		return x.Initialpsbt
	}
	return ""
}

func (x *OpenchannelBumpRequest) GetFundingFeerate() *Feerate {
	if x != nil {
		return x.FundingFeerate
	}
	return nil
}

func (x *OpenchannelBumpRequest) GetAmount() *Amount {
	if x != nil {
		return x.Amount
	}
	return nil
}

type OpenchannelBumpResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId               []byte                      `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	ChannelType             *OpenchannelBumpChannelType `protobuf:"bytes,2,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
	Psbt                    string                      `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"`
	CommitmentsSecured      bool                        `protobuf:"varint,4,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
	FundingSerial           uint64                      `protobuf:"varint,5,opt,name=funding_serial,json=fundingSerial,proto3" json:"funding_serial,omitempty"`
	RequiresConfirmedInputs *bool                       `protobuf:"varint,6,opt,name=requires_confirmed_inputs,json=requiresConfirmedInputs,proto3,oneof" json:"requires_confirmed_inputs,omitempty"`
}

func (x *OpenchannelBumpResponse) Reset() {
	*x = OpenchannelBumpResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[240]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelBumpResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelBumpResponse) ProtoMessage() {}

func (x *OpenchannelBumpResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[240]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelBumpResponse.ProtoReflect.Descriptor instead.
func (*OpenchannelBumpResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{240}
}

func (x *OpenchannelBumpResponse) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *OpenchannelBumpResponse) GetChannelType() *OpenchannelBumpChannelType {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

func (x *OpenchannelBumpResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *OpenchannelBumpResponse) GetCommitmentsSecured() bool {
	if x != nil {
		return x.CommitmentsSecured
	}
	return false
}

func (x *OpenchannelBumpResponse) GetFundingSerial() uint64 {
	if x != nil {
		return x.FundingSerial
	}
	return 0
}

func (x *OpenchannelBumpResponse) GetRequiresConfirmedInputs() bool {
	if x != nil && x.RequiresConfirmedInputs != nil {
		return *x.RequiresConfirmedInputs
	}
	return false
}

type OpenchannelBumpChannelType struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bits  []uint32          `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
	Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
}

func (x *OpenchannelBumpChannelType) Reset() {
	*x = OpenchannelBumpChannelType{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[241]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelBumpChannelType) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelBumpChannelType) ProtoMessage() {}

func (x *OpenchannelBumpChannelType) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[241]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelBumpChannelType.ProtoReflect.Descriptor instead.
func (*OpenchannelBumpChannelType) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{241}
}

func (x *OpenchannelBumpChannelType) GetBits() []uint32 {
	if x != nil {
		return x.Bits
	}
	return nil
}

func (x *OpenchannelBumpChannelType) GetNames() []ChannelTypeName {
	if x != nil {
		return x.Names
	}
	return nil
}

type OpenchannelInitRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id                []byte   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Initialpsbt       string   `protobuf:"bytes,2,opt,name=initialpsbt,proto3" json:"initialpsbt,omitempty"`
	CommitmentFeerate *Feerate `protobuf:"bytes,3,opt,name=commitment_feerate,json=commitmentFeerate,proto3,oneof" json:"commitment_feerate,omitempty"`
	FundingFeerate    *Feerate `protobuf:"bytes,4,opt,name=funding_feerate,json=fundingFeerate,proto3,oneof" json:"funding_feerate,omitempty"`
	Announce          *bool    `protobuf:"varint,5,opt,name=announce,proto3,oneof" json:"announce,omitempty"`
	CloseTo           *string  `protobuf:"bytes,6,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
	RequestAmt        *Amount  `protobuf:"bytes,7,opt,name=request_amt,json=requestAmt,proto3,oneof" json:"request_amt,omitempty"`
	CompactLease      []byte   `protobuf:"bytes,8,opt,name=compact_lease,json=compactLease,proto3,oneof" json:"compact_lease,omitempty"`
	ChannelType       []uint32 `protobuf:"varint,9,rep,packed,name=channel_type,json=channelType,proto3" json:"channel_type,omitempty"`
	Amount            *Amount  `protobuf:"bytes,10,opt,name=amount,proto3" json:"amount,omitempty"`
}

func (x *OpenchannelInitRequest) Reset() {
	*x = OpenchannelInitRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[242]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelInitRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelInitRequest) ProtoMessage() {}

func (x *OpenchannelInitRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[242]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelInitRequest.ProtoReflect.Descriptor instead.
func (*OpenchannelInitRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{242}
}

func (x *OpenchannelInitRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *OpenchannelInitRequest) GetInitialpsbt() string {
	if x != nil {
		return x.Initialpsbt
	}
	return ""
}

func (x *OpenchannelInitRequest) GetCommitmentFeerate() *Feerate {
	if x != nil {
		return x.CommitmentFeerate
	}
	return nil
}

func (x *OpenchannelInitRequest) GetFundingFeerate() *Feerate {
	if x != nil {
		return x.FundingFeerate
	}
	return nil
}

func (x *OpenchannelInitRequest) GetAnnounce() bool {
	if x != nil && x.Announce != nil {
		return *x.Announce
	}
	return false
}

func (x *OpenchannelInitRequest) GetCloseTo() string {
	if x != nil && x.CloseTo != nil {
		return *x.CloseTo
	}
	return ""
}

func (x *OpenchannelInitRequest) GetRequestAmt() *Amount {
	if x != nil {
		return x.RequestAmt
	}
	return nil
}

func (x *OpenchannelInitRequest) GetCompactLease() []byte {
	if x != nil {
		return x.CompactLease
	}
	return nil
}

func (x *OpenchannelInitRequest) GetChannelType() []uint32 {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

func (x *OpenchannelInitRequest) GetAmount() *Amount {
	if x != nil {
		return x.Amount
	}
	return nil
}

type OpenchannelInitResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId               []byte                      `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	Psbt                    string                      `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
	ChannelType             *OpenchannelInitChannelType `protobuf:"bytes,3,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
	CommitmentsSecured      bool                        `protobuf:"varint,4,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
	FundingSerial           uint64                      `protobuf:"varint,5,opt,name=funding_serial,json=fundingSerial,proto3" json:"funding_serial,omitempty"`
	RequiresConfirmedInputs *bool                       `protobuf:"varint,6,opt,name=requires_confirmed_inputs,json=requiresConfirmedInputs,proto3,oneof" json:"requires_confirmed_inputs,omitempty"`
}

func (x *OpenchannelInitResponse) Reset() {
	*x = OpenchannelInitResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[243]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelInitResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelInitResponse) ProtoMessage() {}

func (x *OpenchannelInitResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[243]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelInitResponse.ProtoReflect.Descriptor instead.
func (*OpenchannelInitResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{243}
}

func (x *OpenchannelInitResponse) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *OpenchannelInitResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *OpenchannelInitResponse) GetChannelType() *OpenchannelInitChannelType {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

func (x *OpenchannelInitResponse) GetCommitmentsSecured() bool {
	if x != nil {
		return x.CommitmentsSecured
	}
	return false
}

func (x *OpenchannelInitResponse) GetFundingSerial() uint64 {
	if x != nil {
		return x.FundingSerial
	}
	return 0
}

func (x *OpenchannelInitResponse) GetRequiresConfirmedInputs() bool {
	if x != nil && x.RequiresConfirmedInputs != nil {
		return *x.RequiresConfirmedInputs
	}
	return false
}

type OpenchannelInitChannelType struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bits  []uint32          `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
	Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
}

func (x *OpenchannelInitChannelType) Reset() {
	*x = OpenchannelInitChannelType{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[244]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelInitChannelType) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelInitChannelType) ProtoMessage() {}

func (x *OpenchannelInitChannelType) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[244]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelInitChannelType.ProtoReflect.Descriptor instead.
func (*OpenchannelInitChannelType) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{244}
}

func (x *OpenchannelInitChannelType) GetBits() []uint32 {
	if x != nil {
		return x.Bits
	}
	return nil
}

func (x *OpenchannelInitChannelType) GetNames() []ChannelTypeName {
	if x != nil {
		return x.Names
	}
	return nil
}

type OpenchannelSignedRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId  []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	SignedPsbt string `protobuf:"bytes,2,opt,name=signed_psbt,json=signedPsbt,proto3" json:"signed_psbt,omitempty"`
}

func (x *OpenchannelSignedRequest) Reset() {
	*x = OpenchannelSignedRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[245]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelSignedRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelSignedRequest) ProtoMessage() {}

func (x *OpenchannelSignedRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[245]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelSignedRequest.ProtoReflect.Descriptor instead.
func (*OpenchannelSignedRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{245}
}

func (x *OpenchannelSignedRequest) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *OpenchannelSignedRequest) GetSignedPsbt() string {
	if x != nil {
		return x.SignedPsbt
	}
	return ""
}

type OpenchannelSignedResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	Tx        []byte `protobuf:"bytes,2,opt,name=tx,proto3" json:"tx,omitempty"`
	Txid      []byte `protobuf:"bytes,3,opt,name=txid,proto3" json:"txid,omitempty"`
}

func (x *OpenchannelSignedResponse) Reset() {
	*x = OpenchannelSignedResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[246]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelSignedResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelSignedResponse) ProtoMessage() {}

func (x *OpenchannelSignedResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[246]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelSignedResponse.ProtoReflect.Descriptor instead.
func (*OpenchannelSignedResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{246}
}

func (x *OpenchannelSignedResponse) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *OpenchannelSignedResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *OpenchannelSignedResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type OpenchannelUpdateRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	Psbt      string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
}

func (x *OpenchannelUpdateRequest) Reset() {
	*x = OpenchannelUpdateRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[247]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelUpdateRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelUpdateRequest) ProtoMessage() {}

func (x *OpenchannelUpdateRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[247]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelUpdateRequest.ProtoReflect.Descriptor instead.
func (*OpenchannelUpdateRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{247}
}

func (x *OpenchannelUpdateRequest) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *OpenchannelUpdateRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

type OpenchannelUpdateResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId               []byte                        `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	ChannelType             *OpenchannelUpdateChannelType `protobuf:"bytes,2,opt,name=channel_type,json=channelType,proto3,oneof" json:"channel_type,omitempty"`
	Psbt                    string                        `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"`
	CommitmentsSecured      bool                          `protobuf:"varint,4,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
	FundingOutnum           uint32                        `protobuf:"varint,5,opt,name=funding_outnum,json=fundingOutnum,proto3" json:"funding_outnum,omitempty"`
	CloseTo                 []byte                        `protobuf:"bytes,6,opt,name=close_to,json=closeTo,proto3,oneof" json:"close_to,omitempty"`
	RequiresConfirmedInputs *bool                         `protobuf:"varint,7,opt,name=requires_confirmed_inputs,json=requiresConfirmedInputs,proto3,oneof" json:"requires_confirmed_inputs,omitempty"`
}

func (x *OpenchannelUpdateResponse) Reset() {
	*x = OpenchannelUpdateResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[248]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelUpdateResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelUpdateResponse) ProtoMessage() {}

func (x *OpenchannelUpdateResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[248]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelUpdateResponse.ProtoReflect.Descriptor instead.
func (*OpenchannelUpdateResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{248}
}

func (x *OpenchannelUpdateResponse) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *OpenchannelUpdateResponse) GetChannelType() *OpenchannelUpdateChannelType {
	if x != nil {
		return x.ChannelType
	}
	return nil
}

func (x *OpenchannelUpdateResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *OpenchannelUpdateResponse) GetCommitmentsSecured() bool {
	if x != nil {
		return x.CommitmentsSecured
	}
	return false
}

func (x *OpenchannelUpdateResponse) GetFundingOutnum() uint32 {
	if x != nil {
		return x.FundingOutnum
	}
	return 0
}

func (x *OpenchannelUpdateResponse) GetCloseTo() []byte {
	if x != nil {
		return x.CloseTo
	}
	return nil
}

func (x *OpenchannelUpdateResponse) GetRequiresConfirmedInputs() bool {
	if x != nil && x.RequiresConfirmedInputs != nil {
		return *x.RequiresConfirmedInputs
	}
	return false
}

type OpenchannelUpdateChannelType struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bits  []uint32          `protobuf:"varint,1,rep,packed,name=bits,proto3" json:"bits,omitempty"`
	Names []ChannelTypeName `protobuf:"varint,2,rep,packed,name=names,proto3,enum=cln.ChannelTypeName" json:"names,omitempty"`
}

func (x *OpenchannelUpdateChannelType) Reset() {
	*x = OpenchannelUpdateChannelType{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[249]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *OpenchannelUpdateChannelType) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*OpenchannelUpdateChannelType) ProtoMessage() {}

func (x *OpenchannelUpdateChannelType) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[249]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use OpenchannelUpdateChannelType.ProtoReflect.Descriptor instead.
func (*OpenchannelUpdateChannelType) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{249}
}

func (x *OpenchannelUpdateChannelType) GetBits() []uint32 {
	if x != nil {
		return x.Bits
	}
	return nil
}

func (x *OpenchannelUpdateChannelType) GetNames() []ChannelTypeName {
	if x != nil {
		return x.Names
	}
	return nil
}

type PingRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id        []byte  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Len       *uint32 `protobuf:"varint,2,opt,name=len,proto3,oneof" json:"len,omitempty"`
	Pongbytes *uint32 `protobuf:"varint,3,opt,name=pongbytes,proto3,oneof" json:"pongbytes,omitempty"`
}

func (x *PingRequest) Reset() {
	*x = PingRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[250]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PingRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PingRequest) ProtoMessage() {}

func (x *PingRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[250]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PingRequest.ProtoReflect.Descriptor instead.
func (*PingRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{250}
}

func (x *PingRequest) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *PingRequest) GetLen() uint32 {
	if x != nil && x.Len != nil {
		return *x.Len
	}
	return 0
}

func (x *PingRequest) GetPongbytes() uint32 {
	if x != nil && x.Pongbytes != nil {
		return *x.Pongbytes
	}
	return 0
}

type PingResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Totlen uint32 `protobuf:"varint,1,opt,name=totlen,proto3" json:"totlen,omitempty"`
}

func (x *PingResponse) Reset() {
	*x = PingResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[251]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PingResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PingResponse) ProtoMessage() {}

func (x *PingResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[251]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PingResponse.ProtoReflect.Descriptor instead.
func (*PingResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{251}
}

func (x *PingResponse) GetTotlen() uint32 {
	if x != nil {
		return x.Totlen
	}
	return 0
}

type PluginRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subcommand PluginSubcommand `protobuf:"varint,1,opt,name=subcommand,proto3,enum=cln.PluginSubcommand" json:"subcommand,omitempty"`
	Plugin     *string          `protobuf:"bytes,2,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
	Directory  *string          `protobuf:"bytes,3,opt,name=directory,proto3,oneof" json:"directory,omitempty"`
	Options    []string         `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"`
}

func (x *PluginRequest) Reset() {
	*x = PluginRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[252]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PluginRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PluginRequest) ProtoMessage() {}

func (x *PluginRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[252]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PluginRequest.ProtoReflect.Descriptor instead.
func (*PluginRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{252}
}

func (x *PluginRequest) GetSubcommand() PluginSubcommand {
	if x != nil {
		return x.Subcommand
	}
	return PluginSubcommand_START
}

func (x *PluginRequest) GetPlugin() string {
	if x != nil && x.Plugin != nil {
		return *x.Plugin
	}
	return ""
}

func (x *PluginRequest) GetDirectory() string {
	if x != nil && x.Directory != nil {
		return *x.Directory
	}
	return ""
}

func (x *PluginRequest) GetOptions() []string {
	if x != nil {
		return x.Options
	}
	return nil
}

type PluginResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Command PluginSubcommand `protobuf:"varint,1,opt,name=command,proto3,enum=cln.PluginSubcommand" json:"command,omitempty"`
	Plugins []*PluginPlugins `protobuf:"bytes,2,rep,name=plugins,proto3" json:"plugins,omitempty"`
	Result  *string          `protobuf:"bytes,3,opt,name=result,proto3,oneof" json:"result,omitempty"`
}

func (x *PluginResponse) Reset() {
	*x = PluginResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[253]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PluginResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PluginResponse) ProtoMessage() {}

func (x *PluginResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[253]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PluginResponse.ProtoReflect.Descriptor instead.
func (*PluginResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{253}
}

func (x *PluginResponse) GetCommand() PluginSubcommand {
	if x != nil {
		return x.Command
	}
	return PluginSubcommand_START
}

func (x *PluginResponse) GetPlugins() []*PluginPlugins {
	if x != nil {
		return x.Plugins
	}
	return nil
}

func (x *PluginResponse) GetResult() string {
	if x != nil && x.Result != nil {
		return *x.Result
	}
	return ""
}

type PluginPlugins struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name    string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Active  bool   `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"`
	Dynamic bool   `protobuf:"varint,3,opt,name=dynamic,proto3" json:"dynamic,omitempty"`
}

func (x *PluginPlugins) Reset() {
	*x = PluginPlugins{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[254]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PluginPlugins) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PluginPlugins) ProtoMessage() {}

func (x *PluginPlugins) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[254]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PluginPlugins.ProtoReflect.Descriptor instead.
func (*PluginPlugins) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{254}
}

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

func (x *PluginPlugins) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

func (x *PluginPlugins) GetDynamic() bool {
	if x != nil {
		return x.Dynamic
	}
	return false
}

type RenepaystatusRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invstring *string `protobuf:"bytes,1,opt,name=invstring,proto3,oneof" json:"invstring,omitempty"`
}

func (x *RenepaystatusRequest) Reset() {
	*x = RenepaystatusRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[255]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RenepaystatusRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RenepaystatusRequest) ProtoMessage() {}

func (x *RenepaystatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[255]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RenepaystatusRequest.ProtoReflect.Descriptor instead.
func (*RenepaystatusRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{255}
}

func (x *RenepaystatusRequest) GetInvstring() string {
	if x != nil && x.Invstring != nil {
		return *x.Invstring
	}
	return ""
}

type RenepaystatusResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Paystatus []*RenepaystatusPaystatus `protobuf:"bytes,1,rep,name=paystatus,proto3" json:"paystatus,omitempty"`
}

func (x *RenepaystatusResponse) Reset() {
	*x = RenepaystatusResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[256]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RenepaystatusResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RenepaystatusResponse) ProtoMessage() {}

func (x *RenepaystatusResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[256]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RenepaystatusResponse.ProtoReflect.Descriptor instead.
func (*RenepaystatusResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{256}
}

func (x *RenepaystatusResponse) GetPaystatus() []*RenepaystatusPaystatus {
	if x != nil {
		return x.Paystatus
	}
	return nil
}

type RenepaystatusPaystatus struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bolt11          string                                              `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
	PaymentPreimage []byte                                              `protobuf:"bytes,2,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
	PaymentHash     []byte                                              `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	CreatedAt       float64                                             `protobuf:"fixed64,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Groupid         uint32                                              `protobuf:"varint,5,opt,name=groupid,proto3" json:"groupid,omitempty"`
	Parts           *uint32                                             `protobuf:"varint,6,opt,name=parts,proto3,oneof" json:"parts,omitempty"`
	AmountMsat      *Amount                                             `protobuf:"bytes,7,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	AmountSentMsat  *Amount                                             `protobuf:"bytes,8,opt,name=amount_sent_msat,json=amountSentMsat,proto3,oneof" json:"amount_sent_msat,omitempty"`
	Status          RenepaystatusPaystatus_RenepaystatusPaystatusStatus `protobuf:"varint,9,opt,name=status,proto3,enum=cln.RenepaystatusPaystatus_RenepaystatusPaystatusStatus" json:"status,omitempty"`
	Destination     []byte                                              `protobuf:"bytes,10,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	Notes           []string                                            `protobuf:"bytes,11,rep,name=notes,proto3" json:"notes,omitempty"`
}

func (x *RenepaystatusPaystatus) Reset() {
	*x = RenepaystatusPaystatus{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[257]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RenepaystatusPaystatus) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RenepaystatusPaystatus) ProtoMessage() {}

func (x *RenepaystatusPaystatus) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[257]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RenepaystatusPaystatus.ProtoReflect.Descriptor instead.
func (*RenepaystatusPaystatus) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{257}
}

func (x *RenepaystatusPaystatus) GetBolt11() string {
	if x != nil {
		return x.Bolt11
	}
	return ""
}

func (x *RenepaystatusPaystatus) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *RenepaystatusPaystatus) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *RenepaystatusPaystatus) GetCreatedAt() float64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *RenepaystatusPaystatus) GetGroupid() uint32 {
	if x != nil {
		return x.Groupid
	}
	return 0
}

func (x *RenepaystatusPaystatus) GetParts() uint32 {
	if x != nil && x.Parts != nil {
		return *x.Parts
	}
	return 0
}

func (x *RenepaystatusPaystatus) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *RenepaystatusPaystatus) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *RenepaystatusPaystatus) GetStatus() RenepaystatusPaystatus_RenepaystatusPaystatusStatus {
	if x != nil {
		return x.Status
	}
	return RenepaystatusPaystatus_COMPLETE
}

func (x *RenepaystatusPaystatus) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *RenepaystatusPaystatus) GetNotes() []string {
	if x != nil {
		return x.Notes
	}
	return nil
}

type RenepayRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invstring    string   `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
	AmountMsat   *Amount  `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Maxfee       *Amount  `protobuf:"bytes,3,opt,name=maxfee,proto3,oneof" json:"maxfee,omitempty"`
	Maxdelay     *uint32  `protobuf:"varint,4,opt,name=maxdelay,proto3,oneof" json:"maxdelay,omitempty"`
	RetryFor     *uint32  `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
	Description  *string  `protobuf:"bytes,6,opt,name=description,proto3,oneof" json:"description,omitempty"`
	Label        *string  `protobuf:"bytes,7,opt,name=label,proto3,oneof" json:"label,omitempty"`
	DevUseShadow *bool    `protobuf:"varint,8,opt,name=dev_use_shadow,json=devUseShadow,proto3,oneof" json:"dev_use_shadow,omitempty"`
	Exclude      []string `protobuf:"bytes,9,rep,name=exclude,proto3" json:"exclude,omitempty"`
}

func (x *RenepayRequest) Reset() {
	*x = RenepayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[258]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RenepayRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RenepayRequest) ProtoMessage() {}

func (x *RenepayRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[258]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RenepayRequest.ProtoReflect.Descriptor instead.
func (*RenepayRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{258}
}

func (x *RenepayRequest) GetInvstring() string {
	if x != nil {
		return x.Invstring
	}
	return ""
}

func (x *RenepayRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *RenepayRequest) GetMaxfee() *Amount {
	if x != nil {
		return x.Maxfee
	}
	return nil
}

func (x *RenepayRequest) GetMaxdelay() uint32 {
	if x != nil && x.Maxdelay != nil {
		return *x.Maxdelay
	}
	return 0
}

func (x *RenepayRequest) GetRetryFor() uint32 {
	if x != nil && x.RetryFor != nil {
		return *x.RetryFor
	}
	return 0
}

func (x *RenepayRequest) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *RenepayRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *RenepayRequest) GetDevUseShadow() bool {
	if x != nil && x.DevUseShadow != nil {
		return *x.DevUseShadow
	}
	return false
}

func (x *RenepayRequest) GetExclude() []string {
	if x != nil {
		return x.Exclude
	}
	return nil
}

type RenepayResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PaymentPreimage []byte                        `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
	PaymentHash     []byte                        `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	CreatedAt       float64                       `protobuf:"fixed64,3,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	Parts           uint32                        `protobuf:"varint,4,opt,name=parts,proto3" json:"parts,omitempty"`
	AmountMsat      *Amount                       `protobuf:"bytes,5,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	AmountSentMsat  *Amount                       `protobuf:"bytes,6,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
	Status          RenepayResponse_RenepayStatus `protobuf:"varint,7,opt,name=status,proto3,enum=cln.RenepayResponse_RenepayStatus" json:"status,omitempty"`
	Destination     []byte                        `protobuf:"bytes,8,opt,name=destination,proto3,oneof" json:"destination,omitempty"`
	Bolt11          *string                       `protobuf:"bytes,9,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12          *string                       `protobuf:"bytes,10,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	Groupid         *uint64                       `protobuf:"varint,11,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
}

func (x *RenepayResponse) Reset() {
	*x = RenepayResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[259]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RenepayResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RenepayResponse) ProtoMessage() {}

func (x *RenepayResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[259]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RenepayResponse.ProtoReflect.Descriptor instead.
func (*RenepayResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{259}
}

func (x *RenepayResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *RenepayResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *RenepayResponse) GetCreatedAt() float64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *RenepayResponse) GetParts() uint32 {
	if x != nil {
		return x.Parts
	}
	return 0
}

func (x *RenepayResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *RenepayResponse) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

func (x *RenepayResponse) GetStatus() RenepayResponse_RenepayStatus {
	if x != nil {
		return x.Status
	}
	return RenepayResponse_COMPLETE
}

func (x *RenepayResponse) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *RenepayResponse) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *RenepayResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *RenepayResponse) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

type ReserveinputsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt      string  `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	Exclusive *bool   `protobuf:"varint,2,opt,name=exclusive,proto3,oneof" json:"exclusive,omitempty"`
	Reserve   *uint32 `protobuf:"varint,3,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
}

func (x *ReserveinputsRequest) Reset() {
	*x = ReserveinputsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[260]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReserveinputsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReserveinputsRequest) ProtoMessage() {}

func (x *ReserveinputsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[260]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReserveinputsRequest.ProtoReflect.Descriptor instead.
func (*ReserveinputsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{260}
}

func (x *ReserveinputsRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *ReserveinputsRequest) GetExclusive() bool {
	if x != nil && x.Exclusive != nil {
		return *x.Exclusive
	}
	return false
}

func (x *ReserveinputsRequest) GetReserve() uint32 {
	if x != nil && x.Reserve != nil {
		return *x.Reserve
	}
	return 0
}

type ReserveinputsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Reservations []*ReserveinputsReservations `protobuf:"bytes,1,rep,name=reservations,proto3" json:"reservations,omitempty"`
}

func (x *ReserveinputsResponse) Reset() {
	*x = ReserveinputsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[261]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReserveinputsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReserveinputsResponse) ProtoMessage() {}

func (x *ReserveinputsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[261]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReserveinputsResponse.ProtoReflect.Descriptor instead.
func (*ReserveinputsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{261}
}

func (x *ReserveinputsResponse) GetReservations() []*ReserveinputsReservations {
	if x != nil {
		return x.Reservations
	}
	return nil
}

type ReserveinputsReservations struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid            []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Vout            uint32 `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
	WasReserved     bool   `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
	Reserved        bool   `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
	ReservedToBlock uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3" json:"reserved_to_block,omitempty"`
}

func (x *ReserveinputsReservations) Reset() {
	*x = ReserveinputsReservations{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[262]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReserveinputsReservations) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReserveinputsReservations) ProtoMessage() {}

func (x *ReserveinputsReservations) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[262]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReserveinputsReservations.ProtoReflect.Descriptor instead.
func (*ReserveinputsReservations) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{262}
}

func (x *ReserveinputsReservations) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *ReserveinputsReservations) GetVout() uint32 {
	if x != nil {
		return x.Vout
	}
	return 0
}

func (x *ReserveinputsReservations) GetWasReserved() bool {
	if x != nil {
		return x.WasReserved
	}
	return false
}

func (x *ReserveinputsReservations) GetReserved() bool {
	if x != nil {
		return x.Reserved
	}
	return false
}

func (x *ReserveinputsReservations) GetReservedToBlock() uint32 {
	if x != nil {
		return x.ReservedToBlock
	}
	return 0
}

type SendcustommsgRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NodeId []byte `protobuf:"bytes,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	Msg    []byte `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"`
}

func (x *SendcustommsgRequest) Reset() {
	*x = SendcustommsgRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[263]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendcustommsgRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendcustommsgRequest) ProtoMessage() {}

func (x *SendcustommsgRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[263]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendcustommsgRequest.ProtoReflect.Descriptor instead.
func (*SendcustommsgRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{263}
}

func (x *SendcustommsgRequest) GetNodeId() []byte {
	if x != nil {
		return x.NodeId
	}
	return nil
}

func (x *SendcustommsgRequest) GetMsg() []byte {
	if x != nil {
		return x.Msg
	}
	return nil
}

type SendcustommsgResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
}

func (x *SendcustommsgResponse) Reset() {
	*x = SendcustommsgResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[264]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendcustommsgResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendcustommsgResponse) ProtoMessage() {}

func (x *SendcustommsgResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[264]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendcustommsgResponse.ProtoReflect.Descriptor instead.
func (*SendcustommsgResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{264}
}

func (x *SendcustommsgResponse) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

type SendinvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invreq     string  `protobuf:"bytes,1,opt,name=invreq,proto3" json:"invreq,omitempty"`
	Label      string  `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	AmountMsat *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Timeout    *uint32 `protobuf:"varint,4,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
	Quantity   *uint64 `protobuf:"varint,5,opt,name=quantity,proto3,oneof" json:"quantity,omitempty"`
}

func (x *SendinvoiceRequest) Reset() {
	*x = SendinvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[265]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendinvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendinvoiceRequest) ProtoMessage() {}

func (x *SendinvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[265]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendinvoiceRequest.ProtoReflect.Descriptor instead.
func (*SendinvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{265}
}

func (x *SendinvoiceRequest) GetInvreq() string {
	if x != nil {
		return x.Invreq
	}
	return ""
}

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

func (x *SendinvoiceRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *SendinvoiceRequest) GetTimeout() uint32 {
	if x != nil && x.Timeout != nil {
		return *x.Timeout
	}
	return 0
}

func (x *SendinvoiceRequest) GetQuantity() uint64 {
	if x != nil && x.Quantity != nil {
		return *x.Quantity
	}
	return 0
}

type SendinvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Label              string                                `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
	Description        string                                `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	PaymentHash        []byte                                `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	Status             SendinvoiceResponse_SendinvoiceStatus `protobuf:"varint,4,opt,name=status,proto3,enum=cln.SendinvoiceResponse_SendinvoiceStatus" json:"status,omitempty"`
	ExpiresAt          uint64                                `protobuf:"varint,5,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	AmountMsat         *Amount                               `protobuf:"bytes,6,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Bolt12             *string                               `protobuf:"bytes,7,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	CreatedIndex       *uint64                               `protobuf:"varint,8,opt,name=created_index,json=createdIndex,proto3,oneof" json:"created_index,omitempty"`
	UpdatedIndex       *uint64                               `protobuf:"varint,9,opt,name=updated_index,json=updatedIndex,proto3,oneof" json:"updated_index,omitempty"`
	PayIndex           *uint64                               `protobuf:"varint,10,opt,name=pay_index,json=payIndex,proto3,oneof" json:"pay_index,omitempty"`
	AmountReceivedMsat *Amount                               `protobuf:"bytes,11,opt,name=amount_received_msat,json=amountReceivedMsat,proto3,oneof" json:"amount_received_msat,omitempty"`
	PaidAt             *uint64                               `protobuf:"varint,12,opt,name=paid_at,json=paidAt,proto3,oneof" json:"paid_at,omitempty"`
	PaymentPreimage    []byte                                `protobuf:"bytes,13,opt,name=payment_preimage,json=paymentPreimage,proto3,oneof" json:"payment_preimage,omitempty"`
}

func (x *SendinvoiceResponse) Reset() {
	*x = SendinvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[266]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SendinvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SendinvoiceResponse) ProtoMessage() {}

func (x *SendinvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[266]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SendinvoiceResponse.ProtoReflect.Descriptor instead.
func (*SendinvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{266}
}

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

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

func (x *SendinvoiceResponse) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *SendinvoiceResponse) GetStatus() SendinvoiceResponse_SendinvoiceStatus {
	if x != nil {
		return x.Status
	}
	return SendinvoiceResponse_UNPAID
}

func (x *SendinvoiceResponse) GetExpiresAt() uint64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *SendinvoiceResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *SendinvoiceResponse) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *SendinvoiceResponse) GetCreatedIndex() uint64 {
	if x != nil && x.CreatedIndex != nil {
		return *x.CreatedIndex
	}
	return 0
}

func (x *SendinvoiceResponse) GetUpdatedIndex() uint64 {
	if x != nil && x.UpdatedIndex != nil {
		return *x.UpdatedIndex
	}
	return 0
}

func (x *SendinvoiceResponse) GetPayIndex() uint64 {
	if x != nil && x.PayIndex != nil {
		return *x.PayIndex
	}
	return 0
}

func (x *SendinvoiceResponse) GetAmountReceivedMsat() *Amount {
	if x != nil {
		return x.AmountReceivedMsat
	}
	return nil
}

func (x *SendinvoiceResponse) GetPaidAt() uint64 {
	if x != nil && x.PaidAt != nil {
		return *x.PaidAt
	}
	return 0
}

func (x *SendinvoiceResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

type SetchannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id              string  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Feebase         *Amount `protobuf:"bytes,2,opt,name=feebase,proto3,oneof" json:"feebase,omitempty"`
	Feeppm          *uint32 `protobuf:"varint,3,opt,name=feeppm,proto3,oneof" json:"feeppm,omitempty"`
	Htlcmin         *Amount `protobuf:"bytes,4,opt,name=htlcmin,proto3,oneof" json:"htlcmin,omitempty"`
	Htlcmax         *Amount `protobuf:"bytes,5,opt,name=htlcmax,proto3,oneof" json:"htlcmax,omitempty"`
	Enforcedelay    *uint32 `protobuf:"varint,6,opt,name=enforcedelay,proto3,oneof" json:"enforcedelay,omitempty"`
	Ignorefeelimits *bool   `protobuf:"varint,7,opt,name=ignorefeelimits,proto3,oneof" json:"ignorefeelimits,omitempty"`
}

func (x *SetchannelRequest) Reset() {
	*x = SetchannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[267]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SetchannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetchannelRequest) ProtoMessage() {}

func (x *SetchannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[267]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetchannelRequest.ProtoReflect.Descriptor instead.
func (*SetchannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{267}
}

func (x *SetchannelRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *SetchannelRequest) GetFeebase() *Amount {
	if x != nil {
		return x.Feebase
	}
	return nil
}

func (x *SetchannelRequest) GetFeeppm() uint32 {
	if x != nil && x.Feeppm != nil {
		return *x.Feeppm
	}
	return 0
}

func (x *SetchannelRequest) GetHtlcmin() *Amount {
	if x != nil {
		return x.Htlcmin
	}
	return nil
}

func (x *SetchannelRequest) GetHtlcmax() *Amount {
	if x != nil {
		return x.Htlcmax
	}
	return nil
}

func (x *SetchannelRequest) GetEnforcedelay() uint32 {
	if x != nil && x.Enforcedelay != nil {
		return *x.Enforcedelay
	}
	return 0
}

func (x *SetchannelRequest) GetIgnorefeelimits() bool {
	if x != nil && x.Ignorefeelimits != nil {
		return *x.Ignorefeelimits
	}
	return false
}

type SetchannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Channels []*SetchannelChannels `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
}

func (x *SetchannelResponse) Reset() {
	*x = SetchannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[268]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SetchannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetchannelResponse) ProtoMessage() {}

func (x *SetchannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[268]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetchannelResponse.ProtoReflect.Descriptor instead.
func (*SetchannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{268}
}

func (x *SetchannelResponse) GetChannels() []*SetchannelChannels {
	if x != nil {
		return x.Channels
	}
	return nil
}

type SetchannelChannels struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PeerId                    []byte  `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
	ChannelId                 []byte  `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	ShortChannelId            *string `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3,oneof" json:"short_channel_id,omitempty"`
	FeeBaseMsat               *Amount `protobuf:"bytes,4,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"`
	FeeProportionalMillionths uint32  `protobuf:"varint,5,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"`
	MinimumHtlcOutMsat        *Amount `protobuf:"bytes,6,opt,name=minimum_htlc_out_msat,json=minimumHtlcOutMsat,proto3" json:"minimum_htlc_out_msat,omitempty"`
	WarningHtlcminTooLow      *string `protobuf:"bytes,7,opt,name=warning_htlcmin_too_low,json=warningHtlcminTooLow,proto3,oneof" json:"warning_htlcmin_too_low,omitempty"`
	MaximumHtlcOutMsat        *Amount `protobuf:"bytes,8,opt,name=maximum_htlc_out_msat,json=maximumHtlcOutMsat,proto3" json:"maximum_htlc_out_msat,omitempty"`
	WarningHtlcmaxTooHigh     *string `protobuf:"bytes,9,opt,name=warning_htlcmax_too_high,json=warningHtlcmaxTooHigh,proto3,oneof" json:"warning_htlcmax_too_high,omitempty"`
	IgnoreFeeLimits           *bool   `protobuf:"varint,10,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
}

func (x *SetchannelChannels) Reset() {
	*x = SetchannelChannels{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[269]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SetchannelChannels) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetchannelChannels) ProtoMessage() {}

func (x *SetchannelChannels) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[269]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetchannelChannels.ProtoReflect.Descriptor instead.
func (*SetchannelChannels) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{269}
}

func (x *SetchannelChannels) GetPeerId() []byte {
	if x != nil {
		return x.PeerId
	}
	return nil
}

func (x *SetchannelChannels) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *SetchannelChannels) GetShortChannelId() string {
	if x != nil && x.ShortChannelId != nil {
		return *x.ShortChannelId
	}
	return ""
}

func (x *SetchannelChannels) GetFeeBaseMsat() *Amount {
	if x != nil {
		return x.FeeBaseMsat
	}
	return nil
}

func (x *SetchannelChannels) GetFeeProportionalMillionths() uint32 {
	if x != nil {
		return x.FeeProportionalMillionths
	}
	return 0
}

func (x *SetchannelChannels) GetMinimumHtlcOutMsat() *Amount {
	if x != nil {
		return x.MinimumHtlcOutMsat
	}
	return nil
}

func (x *SetchannelChannels) GetWarningHtlcminTooLow() string {
	if x != nil && x.WarningHtlcminTooLow != nil {
		return *x.WarningHtlcminTooLow
	}
	return ""
}

func (x *SetchannelChannels) GetMaximumHtlcOutMsat() *Amount {
	if x != nil {
		return x.MaximumHtlcOutMsat
	}
	return nil
}

func (x *SetchannelChannels) GetWarningHtlcmaxTooHigh() string {
	if x != nil && x.WarningHtlcmaxTooHigh != nil {
		return *x.WarningHtlcmaxTooHigh
	}
	return ""
}

func (x *SetchannelChannels) GetIgnoreFeeLimits() bool {
	if x != nil && x.IgnoreFeeLimits != nil {
		return *x.IgnoreFeeLimits
	}
	return false
}

type SetconfigRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Config string  `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	Val    *string `protobuf:"bytes,2,opt,name=val,proto3,oneof" json:"val,omitempty"`
}

func (x *SetconfigRequest) Reset() {
	*x = SetconfigRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[270]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SetconfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetconfigRequest) ProtoMessage() {}

func (x *SetconfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[270]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetconfigRequest.ProtoReflect.Descriptor instead.
func (*SetconfigRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{270}
}

func (x *SetconfigRequest) GetConfig() string {
	if x != nil {
		return x.Config
	}
	return ""
}

func (x *SetconfigRequest) GetVal() string {
	if x != nil && x.Val != nil {
		return *x.Val
	}
	return ""
}

type SetconfigResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Config *SetconfigConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
}

func (x *SetconfigResponse) Reset() {
	*x = SetconfigResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[271]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SetconfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetconfigResponse) ProtoMessage() {}

func (x *SetconfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[271]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetconfigResponse.ProtoReflect.Descriptor instead.
func (*SetconfigResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{271}
}

func (x *SetconfigResponse) GetConfig() *SetconfigConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

type SetconfigConfig struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Config    string  `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	Source    string  `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
	Plugin    *string `protobuf:"bytes,3,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
	Dynamic   bool    `protobuf:"varint,4,opt,name=dynamic,proto3" json:"dynamic,omitempty"`
	Set       *bool   `protobuf:"varint,5,opt,name=set,proto3,oneof" json:"set,omitempty"`
	ValueStr  *string `protobuf:"bytes,6,opt,name=value_str,json=valueStr,proto3,oneof" json:"value_str,omitempty"`
	ValueMsat *Amount `protobuf:"bytes,7,opt,name=value_msat,json=valueMsat,proto3,oneof" json:"value_msat,omitempty"`
	ValueInt  *int64  `protobuf:"zigzag64,8,opt,name=value_int,json=valueInt,proto3,oneof" json:"value_int,omitempty"`
	ValueBool *bool   `protobuf:"varint,9,opt,name=value_bool,json=valueBool,proto3,oneof" json:"value_bool,omitempty"`
}

func (x *SetconfigConfig) Reset() {
	*x = SetconfigConfig{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[272]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SetconfigConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetconfigConfig) ProtoMessage() {}

func (x *SetconfigConfig) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[272]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetconfigConfig.ProtoReflect.Descriptor instead.
func (*SetconfigConfig) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{272}
}

func (x *SetconfigConfig) GetConfig() string {
	if x != nil {
		return x.Config
	}
	return ""
}

func (x *SetconfigConfig) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

func (x *SetconfigConfig) GetPlugin() string {
	if x != nil && x.Plugin != nil {
		return *x.Plugin
	}
	return ""
}

func (x *SetconfigConfig) GetDynamic() bool {
	if x != nil {
		return x.Dynamic
	}
	return false
}

func (x *SetconfigConfig) GetSet() bool {
	if x != nil && x.Set != nil {
		return *x.Set
	}
	return false
}

func (x *SetconfigConfig) GetValueStr() string {
	if x != nil && x.ValueStr != nil {
		return *x.ValueStr
	}
	return ""
}

func (x *SetconfigConfig) GetValueMsat() *Amount {
	if x != nil {
		return x.ValueMsat
	}
	return nil
}

func (x *SetconfigConfig) GetValueInt() int64 {
	if x != nil && x.ValueInt != nil {
		return *x.ValueInt
	}
	return 0
}

func (x *SetconfigConfig) GetValueBool() bool {
	if x != nil && x.ValueBool != nil {
		return *x.ValueBool
	}
	return false
}

type SetpsbtversionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt    string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	Version uint32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
}

func (x *SetpsbtversionRequest) Reset() {
	*x = SetpsbtversionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[273]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SetpsbtversionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetpsbtversionRequest) ProtoMessage() {}

func (x *SetpsbtversionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[273]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetpsbtversionRequest.ProtoReflect.Descriptor instead.
func (*SetpsbtversionRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{273}
}

func (x *SetpsbtversionRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *SetpsbtversionRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

type SetpsbtversionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
}

func (x *SetpsbtversionResponse) Reset() {
	*x = SetpsbtversionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[274]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SetpsbtversionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetpsbtversionResponse) ProtoMessage() {}

func (x *SetpsbtversionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[274]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetpsbtversionResponse.ProtoReflect.Descriptor instead.
func (*SetpsbtversionResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{274}
}

func (x *SetpsbtversionResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

type SigninvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invstring string `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
}

func (x *SigninvoiceRequest) Reset() {
	*x = SigninvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[275]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SigninvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SigninvoiceRequest) ProtoMessage() {}

func (x *SigninvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[275]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SigninvoiceRequest.ProtoReflect.Descriptor instead.
func (*SigninvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{275}
}

func (x *SigninvoiceRequest) GetInvstring() string {
	if x != nil {
		return x.Invstring
	}
	return ""
}

type SigninvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
}

func (x *SigninvoiceResponse) Reset() {
	*x = SigninvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[276]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SigninvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SigninvoiceResponse) ProtoMessage() {}

func (x *SigninvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[276]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SigninvoiceResponse.ProtoReflect.Descriptor instead.
func (*SigninvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{276}
}

func (x *SigninvoiceResponse) GetBolt11() string {
	if x != nil {
		return x.Bolt11
	}
	return ""
}

type SignmessageRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
}

func (x *SignmessageRequest) Reset() {
	*x = SignmessageRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[277]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SignmessageRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignmessageRequest) ProtoMessage() {}

func (x *SignmessageRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[277]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SignmessageRequest.ProtoReflect.Descriptor instead.
func (*SignmessageRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{277}
}

func (x *SignmessageRequest) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type SignmessageResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"`
	Recid     []byte `protobuf:"bytes,2,opt,name=recid,proto3" json:"recid,omitempty"`
	Zbase     string `protobuf:"bytes,3,opt,name=zbase,proto3" json:"zbase,omitempty"`
}

func (x *SignmessageResponse) Reset() {
	*x = SignmessageResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[278]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SignmessageResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignmessageResponse) ProtoMessage() {}

func (x *SignmessageResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[278]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SignmessageResponse.ProtoReflect.Descriptor instead.
func (*SignmessageResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{278}
}

func (x *SignmessageResponse) GetSignature() []byte {
	if x != nil {
		return x.Signature
	}
	return nil
}

func (x *SignmessageResponse) GetRecid() []byte {
	if x != nil {
		return x.Recid
	}
	return nil
}

func (x *SignmessageResponse) GetZbase() string {
	if x != nil {
		return x.Zbase
	}
	return ""
}

type SpliceInitRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId      []byte  `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	RelativeAmount int64   `protobuf:"zigzag64,2,opt,name=relative_amount,json=relativeAmount,proto3" json:"relative_amount,omitempty"`
	Initialpsbt    *string `protobuf:"bytes,3,opt,name=initialpsbt,proto3,oneof" json:"initialpsbt,omitempty"`
	FeeratePerKw   *uint32 `protobuf:"varint,4,opt,name=feerate_per_kw,json=feeratePerKw,proto3,oneof" json:"feerate_per_kw,omitempty"`
	ForceFeerate   *bool   `protobuf:"varint,5,opt,name=force_feerate,json=forceFeerate,proto3,oneof" json:"force_feerate,omitempty"`
}

func (x *SpliceInitRequest) Reset() {
	*x = SpliceInitRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[279]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SpliceInitRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SpliceInitRequest) ProtoMessage() {}

func (x *SpliceInitRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[279]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SpliceInitRequest.ProtoReflect.Descriptor instead.
func (*SpliceInitRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{279}
}

func (x *SpliceInitRequest) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *SpliceInitRequest) GetRelativeAmount() int64 {
	if x != nil {
		return x.RelativeAmount
	}
	return 0
}

func (x *SpliceInitRequest) GetInitialpsbt() string {
	if x != nil && x.Initialpsbt != nil {
		return *x.Initialpsbt
	}
	return ""
}

func (x *SpliceInitRequest) GetFeeratePerKw() uint32 {
	if x != nil && x.FeeratePerKw != nil {
		return *x.FeeratePerKw
	}
	return 0
}

func (x *SpliceInitRequest) GetForceFeerate() bool {
	if x != nil && x.ForceFeerate != nil {
		return *x.ForceFeerate
	}
	return false
}

type SpliceInitResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
}

func (x *SpliceInitResponse) Reset() {
	*x = SpliceInitResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[280]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SpliceInitResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SpliceInitResponse) ProtoMessage() {}

func (x *SpliceInitResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[280]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SpliceInitResponse.ProtoReflect.Descriptor instead.
func (*SpliceInitResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{280}
}

func (x *SpliceInitResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

type SpliceSignedRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	Psbt      string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
	SignFirst *bool  `protobuf:"varint,3,opt,name=sign_first,json=signFirst,proto3,oneof" json:"sign_first,omitempty"`
}

func (x *SpliceSignedRequest) Reset() {
	*x = SpliceSignedRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[281]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SpliceSignedRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SpliceSignedRequest) ProtoMessage() {}

func (x *SpliceSignedRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[281]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SpliceSignedRequest.ProtoReflect.Descriptor instead.
func (*SpliceSignedRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{281}
}

func (x *SpliceSignedRequest) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *SpliceSignedRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *SpliceSignedRequest) GetSignFirst() bool {
	if x != nil && x.SignFirst != nil {
		return *x.SignFirst
	}
	return false
}

type SpliceSignedResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Tx     []byte  `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
	Txid   []byte  `protobuf:"bytes,2,opt,name=txid,proto3" json:"txid,omitempty"`
	Outnum *uint32 `protobuf:"varint,3,opt,name=outnum,proto3,oneof" json:"outnum,omitempty"`
	Psbt   string  `protobuf:"bytes,4,opt,name=psbt,proto3" json:"psbt,omitempty"`
}

func (x *SpliceSignedResponse) Reset() {
	*x = SpliceSignedResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[282]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SpliceSignedResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SpliceSignedResponse) ProtoMessage() {}

func (x *SpliceSignedResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[282]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SpliceSignedResponse.ProtoReflect.Descriptor instead.
func (*SpliceSignedResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{282}
}

func (x *SpliceSignedResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *SpliceSignedResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *SpliceSignedResponse) GetOutnum() uint32 {
	if x != nil && x.Outnum != nil {
		return *x.Outnum
	}
	return 0
}

func (x *SpliceSignedResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

type SpliceUpdateRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
	Psbt      string `protobuf:"bytes,2,opt,name=psbt,proto3" json:"psbt,omitempty"`
}

func (x *SpliceUpdateRequest) Reset() {
	*x = SpliceUpdateRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[283]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SpliceUpdateRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SpliceUpdateRequest) ProtoMessage() {}

func (x *SpliceUpdateRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[283]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SpliceUpdateRequest.ProtoReflect.Descriptor instead.
func (*SpliceUpdateRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{283}
}

func (x *SpliceUpdateRequest) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

func (x *SpliceUpdateRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

type SpliceUpdateResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt               string `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	CommitmentsSecured bool   `protobuf:"varint,2,opt,name=commitments_secured,json=commitmentsSecured,proto3" json:"commitments_secured,omitempty"`
	SignaturesSecured  *bool  `protobuf:"varint,3,opt,name=signatures_secured,json=signaturesSecured,proto3,oneof" json:"signatures_secured,omitempty"`
}

func (x *SpliceUpdateResponse) Reset() {
	*x = SpliceUpdateResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[284]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SpliceUpdateResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SpliceUpdateResponse) ProtoMessage() {}

func (x *SpliceUpdateResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[284]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SpliceUpdateResponse.ProtoReflect.Descriptor instead.
func (*SpliceUpdateResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{284}
}

func (x *SpliceUpdateResponse) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *SpliceUpdateResponse) GetCommitmentsSecured() bool {
	if x != nil {
		return x.CommitmentsSecured
	}
	return false
}

func (x *SpliceUpdateResponse) GetSignaturesSecured() bool {
	if x != nil && x.SignaturesSecured != nil {
		return *x.SignaturesSecured
	}
	return false
}

type DevspliceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ScriptOrJson string `protobuf:"bytes,1,opt,name=script_or_json,json=scriptOrJson,proto3" json:"script_or_json,omitempty"`
	Dryrun       *bool  `protobuf:"varint,2,opt,name=dryrun,proto3,oneof" json:"dryrun,omitempty"`
	ForceFeerate *bool  `protobuf:"varint,3,opt,name=force_feerate,json=forceFeerate,proto3,oneof" json:"force_feerate,omitempty"`
	DebugLog     *bool  `protobuf:"varint,4,opt,name=debug_log,json=debugLog,proto3,oneof" json:"debug_log,omitempty"`
	DevWetrun    *bool  `protobuf:"varint,5,opt,name=dev_wetrun,json=devWetrun,proto3,oneof" json:"dev_wetrun,omitempty"`
}

func (x *DevspliceRequest) Reset() {
	*x = DevspliceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[285]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DevspliceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DevspliceRequest) ProtoMessage() {}

func (x *DevspliceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[285]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DevspliceRequest.ProtoReflect.Descriptor instead.
func (*DevspliceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{285}
}

func (x *DevspliceRequest) GetScriptOrJson() string {
	if x != nil {
		return x.ScriptOrJson
	}
	return ""
}

func (x *DevspliceRequest) GetDryrun() bool {
	if x != nil && x.Dryrun != nil {
		return *x.Dryrun
	}
	return false
}

func (x *DevspliceRequest) GetForceFeerate() bool {
	if x != nil && x.ForceFeerate != nil {
		return *x.ForceFeerate
	}
	return false
}

func (x *DevspliceRequest) GetDebugLog() bool {
	if x != nil && x.DebugLog != nil {
		return *x.DebugLog
	}
	return false
}

func (x *DevspliceRequest) GetDevWetrun() bool {
	if x != nil && x.DevWetrun != nil {
		return *x.DevWetrun
	}
	return false
}

type DevspliceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Dryrun []string `protobuf:"bytes,1,rep,name=dryrun,proto3" json:"dryrun,omitempty"`
	Psbt   *string  `protobuf:"bytes,2,opt,name=psbt,proto3,oneof" json:"psbt,omitempty"`
	Tx     *string  `protobuf:"bytes,3,opt,name=tx,proto3,oneof" json:"tx,omitempty"`
	Txid   *string  `protobuf:"bytes,4,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
	Log    []string `protobuf:"bytes,5,rep,name=log,proto3" json:"log,omitempty"`
}

func (x *DevspliceResponse) Reset() {
	*x = DevspliceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[286]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *DevspliceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DevspliceResponse) ProtoMessage() {}

func (x *DevspliceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[286]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DevspliceResponse.ProtoReflect.Descriptor instead.
func (*DevspliceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{286}
}

func (x *DevspliceResponse) GetDryrun() []string {
	if x != nil {
		return x.Dryrun
	}
	return nil
}

func (x *DevspliceResponse) GetPsbt() string {
	if x != nil && x.Psbt != nil {
		return *x.Psbt
	}
	return ""
}

func (x *DevspliceResponse) GetTx() string {
	if x != nil && x.Tx != nil {
		return *x.Tx
	}
	return ""
}

func (x *DevspliceResponse) GetTxid() string {
	if x != nil && x.Txid != nil {
		return *x.Txid
	}
	return ""
}

func (x *DevspliceResponse) GetLog() []string {
	if x != nil {
		return x.Log
	}
	return nil
}

type UnreserveinputsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Psbt    string  `protobuf:"bytes,1,opt,name=psbt,proto3" json:"psbt,omitempty"`
	Reserve *uint32 `protobuf:"varint,2,opt,name=reserve,proto3,oneof" json:"reserve,omitempty"`
}

func (x *UnreserveinputsRequest) Reset() {
	*x = UnreserveinputsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[287]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UnreserveinputsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UnreserveinputsRequest) ProtoMessage() {}

func (x *UnreserveinputsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[287]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UnreserveinputsRequest.ProtoReflect.Descriptor instead.
func (*UnreserveinputsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{287}
}

func (x *UnreserveinputsRequest) GetPsbt() string {
	if x != nil {
		return x.Psbt
	}
	return ""
}

func (x *UnreserveinputsRequest) GetReserve() uint32 {
	if x != nil && x.Reserve != nil {
		return *x.Reserve
	}
	return 0
}

type UnreserveinputsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Reservations []*UnreserveinputsReservations `protobuf:"bytes,1,rep,name=reservations,proto3" json:"reservations,omitempty"`
}

func (x *UnreserveinputsResponse) Reset() {
	*x = UnreserveinputsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[288]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UnreserveinputsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UnreserveinputsResponse) ProtoMessage() {}

func (x *UnreserveinputsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[288]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UnreserveinputsResponse.ProtoReflect.Descriptor instead.
func (*UnreserveinputsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{288}
}

func (x *UnreserveinputsResponse) GetReservations() []*UnreserveinputsReservations {
	if x != nil {
		return x.Reservations
	}
	return nil
}

type UnreserveinputsReservations struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid            []byte  `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Vout            uint32  `protobuf:"varint,2,opt,name=vout,proto3" json:"vout,omitempty"`
	WasReserved     bool    `protobuf:"varint,3,opt,name=was_reserved,json=wasReserved,proto3" json:"was_reserved,omitempty"`
	Reserved        bool    `protobuf:"varint,4,opt,name=reserved,proto3" json:"reserved,omitempty"`
	ReservedToBlock *uint32 `protobuf:"varint,5,opt,name=reserved_to_block,json=reservedToBlock,proto3,oneof" json:"reserved_to_block,omitempty"`
}

func (x *UnreserveinputsReservations) Reset() {
	*x = UnreserveinputsReservations{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[289]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UnreserveinputsReservations) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UnreserveinputsReservations) ProtoMessage() {}

func (x *UnreserveinputsReservations) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[289]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UnreserveinputsReservations.ProtoReflect.Descriptor instead.
func (*UnreserveinputsReservations) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{289}
}

func (x *UnreserveinputsReservations) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *UnreserveinputsReservations) GetVout() uint32 {
	if x != nil {
		return x.Vout
	}
	return 0
}

func (x *UnreserveinputsReservations) GetWasReserved() bool {
	if x != nil {
		return x.WasReserved
	}
	return false
}

func (x *UnreserveinputsReservations) GetReserved() bool {
	if x != nil {
		return x.Reserved
	}
	return false
}

func (x *UnreserveinputsReservations) GetReservedToBlock() uint32 {
	if x != nil && x.ReservedToBlock != nil {
		return *x.ReservedToBlock
	}
	return 0
}

type UpgradewalletRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Feerate    *Feerate `protobuf:"bytes,1,opt,name=feerate,proto3,oneof" json:"feerate,omitempty"`
	Reservedok *bool    `protobuf:"varint,2,opt,name=reservedok,proto3,oneof" json:"reservedok,omitempty"`
}

func (x *UpgradewalletRequest) Reset() {
	*x = UpgradewalletRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[290]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpgradewalletRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpgradewalletRequest) ProtoMessage() {}

func (x *UpgradewalletRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[290]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpgradewalletRequest.ProtoReflect.Descriptor instead.
func (*UpgradewalletRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{290}
}

func (x *UpgradewalletRequest) GetFeerate() *Feerate {
	if x != nil {
		return x.Feerate
	}
	return nil
}

func (x *UpgradewalletRequest) GetReservedok() bool {
	if x != nil && x.Reservedok != nil {
		return *x.Reservedok
	}
	return false
}

type UpgradewalletResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	UpgradedOuts *uint64 `protobuf:"varint,1,opt,name=upgraded_outs,json=upgradedOuts,proto3,oneof" json:"upgraded_outs,omitempty"`
	Psbt         *string `protobuf:"bytes,2,opt,name=psbt,proto3,oneof" json:"psbt,omitempty"`
	Tx           []byte  `protobuf:"bytes,3,opt,name=tx,proto3,oneof" json:"tx,omitempty"`
	Txid         []byte  `protobuf:"bytes,4,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
}

func (x *UpgradewalletResponse) Reset() {
	*x = UpgradewalletResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[291]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *UpgradewalletResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpgradewalletResponse) ProtoMessage() {}

func (x *UpgradewalletResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[291]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpgradewalletResponse.ProtoReflect.Descriptor instead.
func (*UpgradewalletResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{291}
}

func (x *UpgradewalletResponse) GetUpgradedOuts() uint64 {
	if x != nil && x.UpgradedOuts != nil {
		return *x.UpgradedOuts
	}
	return 0
}

func (x *UpgradewalletResponse) GetPsbt() string {
	if x != nil && x.Psbt != nil {
		return *x.Psbt
	}
	return ""
}

func (x *UpgradewalletResponse) GetTx() []byte {
	if x != nil {
		return x.Tx
	}
	return nil
}

func (x *UpgradewalletResponse) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

type WaitblockheightRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Blockheight uint32  `protobuf:"varint,1,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
	Timeout     *uint32 `protobuf:"varint,2,opt,name=timeout,proto3,oneof" json:"timeout,omitempty"`
}

func (x *WaitblockheightRequest) Reset() {
	*x = WaitblockheightRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[292]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitblockheightRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitblockheightRequest) ProtoMessage() {}

func (x *WaitblockheightRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[292]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitblockheightRequest.ProtoReflect.Descriptor instead.
func (*WaitblockheightRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{292}
}

func (x *WaitblockheightRequest) GetBlockheight() uint32 {
	if x != nil {
		return x.Blockheight
	}
	return 0
}

func (x *WaitblockheightRequest) GetTimeout() uint32 {
	if x != nil && x.Timeout != nil {
		return *x.Timeout
	}
	return 0
}

type WaitblockheightResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Blockheight uint32 `protobuf:"varint,1,opt,name=blockheight,proto3" json:"blockheight,omitempty"`
}

func (x *WaitblockheightResponse) Reset() {
	*x = WaitblockheightResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[293]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitblockheightResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitblockheightResponse) ProtoMessage() {}

func (x *WaitblockheightResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[293]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitblockheightResponse.ProtoReflect.Descriptor instead.
func (*WaitblockheightResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{293}
}

func (x *WaitblockheightResponse) GetBlockheight() uint32 {
	if x != nil {
		return x.Blockheight
	}
	return 0
}

type WaitRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subsystem WaitRequest_WaitSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.WaitRequest_WaitSubsystem" json:"subsystem,omitempty"`
	Indexname WaitRequest_WaitIndexname `protobuf:"varint,2,opt,name=indexname,proto3,enum=cln.WaitRequest_WaitIndexname" json:"indexname,omitempty"`
	Nextvalue uint64                    `protobuf:"varint,3,opt,name=nextvalue,proto3" json:"nextvalue,omitempty"`
}

func (x *WaitRequest) Reset() {
	*x = WaitRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[294]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitRequest) ProtoMessage() {}

func (x *WaitRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[294]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitRequest.ProtoReflect.Descriptor instead.
func (*WaitRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{294}
}

func (x *WaitRequest) GetSubsystem() WaitRequest_WaitSubsystem {
	if x != nil {
		return x.Subsystem
	}
	return WaitRequest_INVOICES
}

func (x *WaitRequest) GetIndexname() WaitRequest_WaitIndexname {
	if x != nil {
		return x.Indexname
	}
	return WaitRequest_CREATED
}

func (x *WaitRequest) GetNextvalue() uint64 {
	if x != nil {
		return x.Nextvalue
	}
	return 0
}

type WaitResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Subsystem WaitResponse_WaitSubsystem `protobuf:"varint,1,opt,name=subsystem,proto3,enum=cln.WaitResponse_WaitSubsystem" json:"subsystem,omitempty"`
	Created   *uint64                    `protobuf:"varint,2,opt,name=created,proto3,oneof" json:"created,omitempty"`
	Updated   *uint64                    `protobuf:"varint,3,opt,name=updated,proto3,oneof" json:"updated,omitempty"`
	Deleted   *uint64                    `protobuf:"varint,4,opt,name=deleted,proto3,oneof" json:"deleted,omitempty"`
	Details   *WaitDetails               `protobuf:"bytes,5,opt,name=details,proto3,oneof" json:"details,omitempty"`
}

func (x *WaitResponse) Reset() {
	*x = WaitResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[295]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitResponse) ProtoMessage() {}

func (x *WaitResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[295]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitResponse.ProtoReflect.Descriptor instead.
func (*WaitResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{295}
}

func (x *WaitResponse) GetSubsystem() WaitResponse_WaitSubsystem {
	if x != nil {
		return x.Subsystem
	}
	return WaitResponse_INVOICES
}

func (x *WaitResponse) GetCreated() uint64 {
	if x != nil && x.Created != nil {
		return *x.Created
	}
	return 0
}

func (x *WaitResponse) GetUpdated() uint64 {
	if x != nil && x.Updated != nil {
		return *x.Updated
	}
	return 0
}

func (x *WaitResponse) GetDeleted() uint64 {
	if x != nil && x.Deleted != nil {
		return *x.Deleted
	}
	return 0
}

func (x *WaitResponse) GetDetails() *WaitDetails {
	if x != nil {
		return x.Details
	}
	return nil
}

type WaitDetails struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Status      *WaitDetails_WaitDetailsStatus `protobuf:"varint,1,opt,name=status,proto3,enum=cln.WaitDetails_WaitDetailsStatus,oneof" json:"status,omitempty"`
	Label       *string                        `protobuf:"bytes,2,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Description *string                        `protobuf:"bytes,3,opt,name=description,proto3,oneof" json:"description,omitempty"`
	Bolt11      *string                        `protobuf:"bytes,4,opt,name=bolt11,proto3,oneof" json:"bolt11,omitempty"`
	Bolt12      *string                        `protobuf:"bytes,5,opt,name=bolt12,proto3,oneof" json:"bolt12,omitempty"`
	Partid      *uint64                        `protobuf:"varint,6,opt,name=partid,proto3,oneof" json:"partid,omitempty"`
	Groupid     *uint64                        `protobuf:"varint,7,opt,name=groupid,proto3,oneof" json:"groupid,omitempty"`
	PaymentHash []byte                         `protobuf:"bytes,8,opt,name=payment_hash,json=paymentHash,proto3,oneof" json:"payment_hash,omitempty"`
	InChannel   *string                        `protobuf:"bytes,9,opt,name=in_channel,json=inChannel,proto3,oneof" json:"in_channel,omitempty"`
	InHtlcId    *uint64                        `protobuf:"varint,10,opt,name=in_htlc_id,json=inHtlcId,proto3,oneof" json:"in_htlc_id,omitempty"`
	InMsat      *Amount                        `protobuf:"bytes,11,opt,name=in_msat,json=inMsat,proto3,oneof" json:"in_msat,omitempty"`
	OutChannel  *string                        `protobuf:"bytes,12,opt,name=out_channel,json=outChannel,proto3,oneof" json:"out_channel,omitempty"`
}

func (x *WaitDetails) Reset() {
	*x = WaitDetails{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[296]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *WaitDetails) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WaitDetails) ProtoMessage() {}

func (x *WaitDetails) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[296]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WaitDetails.ProtoReflect.Descriptor instead.
func (*WaitDetails) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{296}
}

func (x *WaitDetails) GetStatus() WaitDetails_WaitDetailsStatus {
	if x != nil && x.Status != nil {
		return *x.Status
	}
	return WaitDetails_UNPAID
}

func (x *WaitDetails) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *WaitDetails) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *WaitDetails) GetBolt11() string {
	if x != nil && x.Bolt11 != nil {
		return *x.Bolt11
	}
	return ""
}

func (x *WaitDetails) GetBolt12() string {
	if x != nil && x.Bolt12 != nil {
		return *x.Bolt12
	}
	return ""
}

func (x *WaitDetails) GetPartid() uint64 {
	if x != nil && x.Partid != nil {
		return *x.Partid
	}
	return 0
}

func (x *WaitDetails) GetGroupid() uint64 {
	if x != nil && x.Groupid != nil {
		return *x.Groupid
	}
	return 0
}

func (x *WaitDetails) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *WaitDetails) GetInChannel() string {
	if x != nil && x.InChannel != nil {
		return *x.InChannel
	}
	return ""
}

func (x *WaitDetails) GetInHtlcId() uint64 {
	if x != nil && x.InHtlcId != nil {
		return *x.InHtlcId
	}
	return 0
}

func (x *WaitDetails) GetInMsat() *Amount {
	if x != nil {
		return x.InMsat
	}
	return nil
}

func (x *WaitDetails) GetOutChannel() string {
	if x != nil && x.OutChannel != nil {
		return *x.OutChannel
	}
	return ""
}

type ListconfigsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Config *string `protobuf:"bytes,1,opt,name=config,proto3,oneof" json:"config,omitempty"`
}

func (x *ListconfigsRequest) Reset() {
	*x = ListconfigsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[297]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsRequest) ProtoMessage() {}

func (x *ListconfigsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[297]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsRequest.ProtoReflect.Descriptor instead.
func (*ListconfigsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{297}
}

func (x *ListconfigsRequest) GetConfig() string {
	if x != nil && x.Config != nil {
		return *x.Config
	}
	return ""
}

type ListconfigsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Configs                          *ListconfigsConfigs            `protobuf:"bytes,1,opt,name=configs,proto3,oneof" json:"configs,omitempty"`
	Plugins                          []*ListconfigsPlugins          `protobuf:"bytes,3,rep,name=plugins,proto3" json:"plugins,omitempty"`
	ImportantPlugins                 []*ListconfigsImportantplugins `protobuf:"bytes,4,rep,name=important_plugins,json=importantPlugins,proto3" json:"important_plugins,omitempty"`
	Conf                             *string                        `protobuf:"bytes,5,opt,name=conf,proto3,oneof" json:"conf,omitempty"`
	LightningDir                     *string                        `protobuf:"bytes,6,opt,name=lightning_dir,json=lightningDir,proto3,oneof" json:"lightning_dir,omitempty"`
	Network                          *string                        `protobuf:"bytes,7,opt,name=network,proto3,oneof" json:"network,omitempty"`
	AllowDeprecatedApis              *bool                          `protobuf:"varint,8,opt,name=allow_deprecated_apis,json=allowDeprecatedApis,proto3,oneof" json:"allow_deprecated_apis,omitempty"`
	RpcFile                          *string                        `protobuf:"bytes,9,opt,name=rpc_file,json=rpcFile,proto3,oneof" json:"rpc_file,omitempty"`
	DisablePlugin                    []string                       `protobuf:"bytes,10,rep,name=disable_plugin,json=disablePlugin,proto3" json:"disable_plugin,omitempty"`
	BookkeeperDir                    *string                        `protobuf:"bytes,11,opt,name=bookkeeper_dir,json=bookkeeperDir,proto3,oneof" json:"bookkeeper_dir,omitempty"`
	BookkeeperDb                     *string                        `protobuf:"bytes,12,opt,name=bookkeeper_db,json=bookkeeperDb,proto3,oneof" json:"bookkeeper_db,omitempty"`
	AlwaysUseProxy                   *bool                          `protobuf:"varint,13,opt,name=always_use_proxy,json=alwaysUseProxy,proto3,oneof" json:"always_use_proxy,omitempty"`
	Daemon                           *bool                          `protobuf:"varint,14,opt,name=daemon,proto3,oneof" json:"daemon,omitempty"`
	Wallet                           *string                        `protobuf:"bytes,15,opt,name=wallet,proto3,oneof" json:"wallet,omitempty"`
	LargeChannels                    *bool                          `protobuf:"varint,16,opt,name=large_channels,json=largeChannels,proto3,oneof" json:"large_channels,omitempty"`
	ExperimentalDualFund             *bool                          `protobuf:"varint,17,opt,name=experimental_dual_fund,json=experimentalDualFund,proto3,oneof" json:"experimental_dual_fund,omitempty"`
	ExperimentalSplicing             *bool                          `protobuf:"varint,18,opt,name=experimental_splicing,json=experimentalSplicing,proto3,oneof" json:"experimental_splicing,omitempty"`
	ExperimentalOnionMessages        *bool                          `protobuf:"varint,19,opt,name=experimental_onion_messages,json=experimentalOnionMessages,proto3,oneof" json:"experimental_onion_messages,omitempty"`
	ExperimentalOffers               *bool                          `protobuf:"varint,20,opt,name=experimental_offers,json=experimentalOffers,proto3,oneof" json:"experimental_offers,omitempty"`
	ExperimentalShutdownWrongFunding *bool                          `protobuf:"varint,21,opt,name=experimental_shutdown_wrong_funding,json=experimentalShutdownWrongFunding,proto3,oneof" json:"experimental_shutdown_wrong_funding,omitempty"`
	ExperimentalPeerStorage          *bool                          `protobuf:"varint,22,opt,name=experimental_peer_storage,json=experimentalPeerStorage,proto3,oneof" json:"experimental_peer_storage,omitempty"`
	ExperimentalQuiesce              *bool                          `protobuf:"varint,23,opt,name=experimental_quiesce,json=experimentalQuiesce,proto3,oneof" json:"experimental_quiesce,omitempty"`
	ExperimentalUpgradeProtocol      *bool                          `protobuf:"varint,24,opt,name=experimental_upgrade_protocol,json=experimentalUpgradeProtocol,proto3,oneof" json:"experimental_upgrade_protocol,omitempty"`
	InvoicesOnchainFallback          *bool                          `protobuf:"varint,25,opt,name=invoices_onchain_fallback,json=invoicesOnchainFallback,proto3,oneof" json:"invoices_onchain_fallback,omitempty"`
	DatabaseUpgrade                  *bool                          `protobuf:"varint,26,opt,name=database_upgrade,json=databaseUpgrade,proto3,oneof" json:"database_upgrade,omitempty"`
	Rgb                              []byte                         `protobuf:"bytes,27,opt,name=rgb,proto3,oneof" json:"rgb,omitempty"`
	Alias                            *string                        `protobuf:"bytes,28,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	PidFile                          *string                        `protobuf:"bytes,29,opt,name=pid_file,json=pidFile,proto3,oneof" json:"pid_file,omitempty"`
	IgnoreFeeLimits                  *bool                          `protobuf:"varint,30,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
	WatchtimeBlocks                  *uint32                        `protobuf:"varint,31,opt,name=watchtime_blocks,json=watchtimeBlocks,proto3,oneof" json:"watchtime_blocks,omitempty"`
	MaxLocktimeBlocks                *uint32                        `protobuf:"varint,32,opt,name=max_locktime_blocks,json=maxLocktimeBlocks,proto3,oneof" json:"max_locktime_blocks,omitempty"`
	FundingConfirms                  *uint32                        `protobuf:"varint,33,opt,name=funding_confirms,json=fundingConfirms,proto3,oneof" json:"funding_confirms,omitempty"`
	CltvDelta                        *uint32                        `protobuf:"varint,34,opt,name=cltv_delta,json=cltvDelta,proto3,oneof" json:"cltv_delta,omitempty"`
	CltvFinal                        *uint32                        `protobuf:"varint,35,opt,name=cltv_final,json=cltvFinal,proto3,oneof" json:"cltv_final,omitempty"`
	CommitTime                       *uint32                        `protobuf:"varint,36,opt,name=commit_time,json=commitTime,proto3,oneof" json:"commit_time,omitempty"`
	FeeBase                          *uint32                        `protobuf:"varint,37,opt,name=fee_base,json=feeBase,proto3,oneof" json:"fee_base,omitempty"`
	Rescan                           *int64                         `protobuf:"zigzag64,38,opt,name=rescan,proto3,oneof" json:"rescan,omitempty"`
	FeePerSatoshi                    *uint32                        `protobuf:"varint,39,opt,name=fee_per_satoshi,json=feePerSatoshi,proto3,oneof" json:"fee_per_satoshi,omitempty"`
	MaxConcurrentHtlcs               *uint32                        `protobuf:"varint,40,opt,name=max_concurrent_htlcs,json=maxConcurrentHtlcs,proto3,oneof" json:"max_concurrent_htlcs,omitempty"`
	HtlcMinimumMsat                  *Amount                        `protobuf:"bytes,41,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
	HtlcMaximumMsat                  *Amount                        `protobuf:"bytes,42,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
	MaxDustHtlcExposureMsat          *Amount                        `protobuf:"bytes,43,opt,name=max_dust_htlc_exposure_msat,json=maxDustHtlcExposureMsat,proto3,oneof" json:"max_dust_htlc_exposure_msat,omitempty"`
	MinCapacitySat                   *uint64                        `protobuf:"varint,44,opt,name=min_capacity_sat,json=minCapacitySat,proto3,oneof" json:"min_capacity_sat,omitempty"`
	Addr                             *string                        `protobuf:"bytes,45,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
	AnnounceAddr                     *string                        `protobuf:"bytes,46,opt,name=announce_addr,json=announceAddr,proto3,oneof" json:"announce_addr,omitempty"`
	BindAddr                         *string                        `protobuf:"bytes,47,opt,name=bind_addr,json=bindAddr,proto3,oneof" json:"bind_addr,omitempty"`
	Offline                          *bool                          `protobuf:"varint,48,opt,name=offline,proto3,oneof" json:"offline,omitempty"`
	Autolisten                       *bool                          `protobuf:"varint,49,opt,name=autolisten,proto3,oneof" json:"autolisten,omitempty"`
	Proxy                            *string                        `protobuf:"bytes,50,opt,name=proxy,proto3,oneof" json:"proxy,omitempty"`
	DisableDns                       *bool                          `protobuf:"varint,51,opt,name=disable_dns,json=disableDns,proto3,oneof" json:"disable_dns,omitempty"`
	AnnounceAddrDiscovered           *string                        `protobuf:"bytes,52,opt,name=announce_addr_discovered,json=announceAddrDiscovered,proto3,oneof" json:"announce_addr_discovered,omitempty"`
	AnnounceAddrDiscoveredPort       *int64                         `protobuf:"zigzag64,53,opt,name=announce_addr_discovered_port,json=announceAddrDiscoveredPort,proto3,oneof" json:"announce_addr_discovered_port,omitempty"`
	EncryptedHsm                     *bool                          `protobuf:"varint,54,opt,name=encrypted_hsm,json=encryptedHsm,proto3,oneof" json:"encrypted_hsm,omitempty"`
	RpcFileMode                      *string                        `protobuf:"bytes,55,opt,name=rpc_file_mode,json=rpcFileMode,proto3,oneof" json:"rpc_file_mode,omitempty"`
	LogLevel                         *string                        `protobuf:"bytes,56,opt,name=log_level,json=logLevel,proto3,oneof" json:"log_level,omitempty"`
	LogPrefix                        *string                        `protobuf:"bytes,57,opt,name=log_prefix,json=logPrefix,proto3,oneof" json:"log_prefix,omitempty"`
	LogFile                          *string                        `protobuf:"bytes,58,opt,name=log_file,json=logFile,proto3,oneof" json:"log_file,omitempty"`
	LogTimestamps                    *bool                          `protobuf:"varint,59,opt,name=log_timestamps,json=logTimestamps,proto3,oneof" json:"log_timestamps,omitempty"`
	ForceFeerates                    *string                        `protobuf:"bytes,60,opt,name=force_feerates,json=forceFeerates,proto3,oneof" json:"force_feerates,omitempty"`
	Subdaemon                        *string                        `protobuf:"bytes,61,opt,name=subdaemon,proto3,oneof" json:"subdaemon,omitempty"`
	FetchinvoiceNoconnect            *bool                          `protobuf:"varint,62,opt,name=fetchinvoice_noconnect,json=fetchinvoiceNoconnect,proto3,oneof" json:"fetchinvoice_noconnect,omitempty"`
	AcceptHtlcTlvTypes               *string                        `protobuf:"bytes,63,opt,name=accept_htlc_tlv_types,json=acceptHtlcTlvTypes,proto3,oneof" json:"accept_htlc_tlv_types,omitempty"`
	TorServicePassword               *string                        `protobuf:"bytes,64,opt,name=tor_service_password,json=torServicePassword,proto3,oneof" json:"tor_service_password,omitempty"`
	DevAllowdustreserve              *bool                          `protobuf:"varint,65,opt,name=dev_allowdustreserve,json=devAllowdustreserve,proto3,oneof" json:"dev_allowdustreserve,omitempty"`
	AnnounceAddrDns                  *bool                          `protobuf:"varint,66,opt,name=announce_addr_dns,json=announceAddrDns,proto3,oneof" json:"announce_addr_dns,omitempty"`
	RequireConfirmedInputs           *bool                          `protobuf:"varint,67,opt,name=require_confirmed_inputs,json=requireConfirmedInputs,proto3,oneof" json:"require_confirmed_inputs,omitempty"`
	Developer                        *bool                          `protobuf:"varint,68,opt,name=developer,proto3,oneof" json:"developer,omitempty"`
	CommitFee                        *uint64                        `protobuf:"varint,69,opt,name=commit_fee,json=commitFee,proto3,oneof" json:"commit_fee,omitempty"`
	MinEmergencyMsat                 *Amount                        `protobuf:"bytes,70,opt,name=min_emergency_msat,json=minEmergencyMsat,proto3,oneof" json:"min_emergency_msat,omitempty"`
	CommitFeerateOffset              *uint32                        `protobuf:"varint,71,opt,name=commit_feerate_offset,json=commitFeerateOffset,proto3,oneof" json:"commit_feerate_offset,omitempty"`
	AutoconnectSeekerPeers           *uint32                        `protobuf:"varint,72,opt,name=autoconnect_seeker_peers,json=autoconnectSeekerPeers,proto3,oneof" json:"autoconnect_seeker_peers,omitempty"`
}

func (x *ListconfigsResponse) Reset() {
	*x = ListconfigsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[298]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsResponse) ProtoMessage() {}

func (x *ListconfigsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[298]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsResponse.ProtoReflect.Descriptor instead.
func (*ListconfigsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{298}
}

func (x *ListconfigsResponse) GetConfigs() *ListconfigsConfigs {
	if x != nil {
		return x.Configs
	}
	return nil
}

func (x *ListconfigsResponse) GetPlugins() []*ListconfigsPlugins {
	if x != nil {
		return x.Plugins
	}
	return nil
}

func (x *ListconfigsResponse) GetImportantPlugins() []*ListconfigsImportantplugins {
	if x != nil {
		return x.ImportantPlugins
	}
	return nil
}

func (x *ListconfigsResponse) GetConf() string {
	if x != nil && x.Conf != nil {
		return *x.Conf
	}
	return ""
}

func (x *ListconfigsResponse) GetLightningDir() string {
	if x != nil && x.LightningDir != nil {
		return *x.LightningDir
	}
	return ""
}

func (x *ListconfigsResponse) GetNetwork() string {
	if x != nil && x.Network != nil {
		return *x.Network
	}
	return ""
}

func (x *ListconfigsResponse) GetAllowDeprecatedApis() bool {
	if x != nil && x.AllowDeprecatedApis != nil {
		return *x.AllowDeprecatedApis
	}
	return false
}

func (x *ListconfigsResponse) GetRpcFile() string {
	if x != nil && x.RpcFile != nil {
		return *x.RpcFile
	}
	return ""
}

func (x *ListconfigsResponse) GetDisablePlugin() []string {
	if x != nil {
		return x.DisablePlugin
	}
	return nil
}

func (x *ListconfigsResponse) GetBookkeeperDir() string {
	if x != nil && x.BookkeeperDir != nil {
		return *x.BookkeeperDir
	}
	return ""
}

func (x *ListconfigsResponse) GetBookkeeperDb() string {
	if x != nil && x.BookkeeperDb != nil {
		return *x.BookkeeperDb
	}
	return ""
}

func (x *ListconfigsResponse) GetAlwaysUseProxy() bool {
	if x != nil && x.AlwaysUseProxy != nil {
		return *x.AlwaysUseProxy
	}
	return false
}

func (x *ListconfigsResponse) GetDaemon() bool {
	if x != nil && x.Daemon != nil {
		return *x.Daemon
	}
	return false
}

func (x *ListconfigsResponse) GetWallet() string {
	if x != nil && x.Wallet != nil {
		return *x.Wallet
	}
	return ""
}

func (x *ListconfigsResponse) GetLargeChannels() bool {
	if x != nil && x.LargeChannels != nil {
		return *x.LargeChannels
	}
	return false
}

func (x *ListconfigsResponse) GetExperimentalDualFund() bool {
	if x != nil && x.ExperimentalDualFund != nil {
		return *x.ExperimentalDualFund
	}
	return false
}

func (x *ListconfigsResponse) GetExperimentalSplicing() bool {
	if x != nil && x.ExperimentalSplicing != nil {
		return *x.ExperimentalSplicing
	}
	return false
}

func (x *ListconfigsResponse) GetExperimentalOnionMessages() bool {
	if x != nil && x.ExperimentalOnionMessages != nil {
		return *x.ExperimentalOnionMessages
	}
	return false
}

func (x *ListconfigsResponse) GetExperimentalOffers() bool {
	if x != nil && x.ExperimentalOffers != nil {
		return *x.ExperimentalOffers
	}
	return false
}

func (x *ListconfigsResponse) GetExperimentalShutdownWrongFunding() bool {
	if x != nil && x.ExperimentalShutdownWrongFunding != nil {
		return *x.ExperimentalShutdownWrongFunding
	}
	return false
}

func (x *ListconfigsResponse) GetExperimentalPeerStorage() bool {
	if x != nil && x.ExperimentalPeerStorage != nil {
		return *x.ExperimentalPeerStorage
	}
	return false
}

func (x *ListconfigsResponse) GetExperimentalQuiesce() bool {
	if x != nil && x.ExperimentalQuiesce != nil {
		return *x.ExperimentalQuiesce
	}
	return false
}

func (x *ListconfigsResponse) GetExperimentalUpgradeProtocol() bool {
	if x != nil && x.ExperimentalUpgradeProtocol != nil {
		return *x.ExperimentalUpgradeProtocol
	}
	return false
}

func (x *ListconfigsResponse) GetInvoicesOnchainFallback() bool {
	if x != nil && x.InvoicesOnchainFallback != nil {
		return *x.InvoicesOnchainFallback
	}
	return false
}

func (x *ListconfigsResponse) GetDatabaseUpgrade() bool {
	if x != nil && x.DatabaseUpgrade != nil {
		return *x.DatabaseUpgrade
	}
	return false
}

func (x *ListconfigsResponse) GetRgb() []byte {
	if x != nil {
		return x.Rgb
	}
	return nil
}

func (x *ListconfigsResponse) GetAlias() string {
	if x != nil && x.Alias != nil {
		return *x.Alias
	}
	return ""
}

func (x *ListconfigsResponse) GetPidFile() string {
	if x != nil && x.PidFile != nil {
		return *x.PidFile
	}
	return ""
}

func (x *ListconfigsResponse) GetIgnoreFeeLimits() bool {
	if x != nil && x.IgnoreFeeLimits != nil {
		return *x.IgnoreFeeLimits
	}
	return false
}

func (x *ListconfigsResponse) GetWatchtimeBlocks() uint32 {
	if x != nil && x.WatchtimeBlocks != nil {
		return *x.WatchtimeBlocks
	}
	return 0
}

func (x *ListconfigsResponse) GetMaxLocktimeBlocks() uint32 {
	if x != nil && x.MaxLocktimeBlocks != nil {
		return *x.MaxLocktimeBlocks
	}
	return 0
}

func (x *ListconfigsResponse) GetFundingConfirms() uint32 {
	if x != nil && x.FundingConfirms != nil {
		return *x.FundingConfirms
	}
	return 0
}

func (x *ListconfigsResponse) GetCltvDelta() uint32 {
	if x != nil && x.CltvDelta != nil {
		return *x.CltvDelta
	}
	return 0
}

func (x *ListconfigsResponse) GetCltvFinal() uint32 {
	if x != nil && x.CltvFinal != nil {
		return *x.CltvFinal
	}
	return 0
}

func (x *ListconfigsResponse) GetCommitTime() uint32 {
	if x != nil && x.CommitTime != nil {
		return *x.CommitTime
	}
	return 0
}

func (x *ListconfigsResponse) GetFeeBase() uint32 {
	if x != nil && x.FeeBase != nil {
		return *x.FeeBase
	}
	return 0
}

func (x *ListconfigsResponse) GetRescan() int64 {
	if x != nil && x.Rescan != nil {
		return *x.Rescan
	}
	return 0
}

func (x *ListconfigsResponse) GetFeePerSatoshi() uint32 {
	if x != nil && x.FeePerSatoshi != nil {
		return *x.FeePerSatoshi
	}
	return 0
}

func (x *ListconfigsResponse) GetMaxConcurrentHtlcs() uint32 {
	if x != nil && x.MaxConcurrentHtlcs != nil {
		return *x.MaxConcurrentHtlcs
	}
	return 0
}

func (x *ListconfigsResponse) GetHtlcMinimumMsat() *Amount {
	if x != nil {
		return x.HtlcMinimumMsat
	}
	return nil
}

func (x *ListconfigsResponse) GetHtlcMaximumMsat() *Amount {
	if x != nil {
		return x.HtlcMaximumMsat
	}
	return nil
}

func (x *ListconfigsResponse) GetMaxDustHtlcExposureMsat() *Amount {
	if x != nil {
		return x.MaxDustHtlcExposureMsat
	}
	return nil
}

func (x *ListconfigsResponse) GetMinCapacitySat() uint64 {
	if x != nil && x.MinCapacitySat != nil {
		return *x.MinCapacitySat
	}
	return 0
}

func (x *ListconfigsResponse) GetAddr() string {
	if x != nil && x.Addr != nil {
		return *x.Addr
	}
	return ""
}

func (x *ListconfigsResponse) GetAnnounceAddr() string {
	if x != nil && x.AnnounceAddr != nil {
		return *x.AnnounceAddr
	}
	return ""
}

func (x *ListconfigsResponse) GetBindAddr() string {
	if x != nil && x.BindAddr != nil {
		return *x.BindAddr
	}
	return ""
}

func (x *ListconfigsResponse) GetOffline() bool {
	if x != nil && x.Offline != nil {
		return *x.Offline
	}
	return false
}

func (x *ListconfigsResponse) GetAutolisten() bool {
	if x != nil && x.Autolisten != nil {
		return *x.Autolisten
	}
	return false
}

func (x *ListconfigsResponse) GetProxy() string {
	if x != nil && x.Proxy != nil {
		return *x.Proxy
	}
	return ""
}

func (x *ListconfigsResponse) GetDisableDns() bool {
	if x != nil && x.DisableDns != nil {
		return *x.DisableDns
	}
	return false
}

func (x *ListconfigsResponse) GetAnnounceAddrDiscovered() string {
	if x != nil && x.AnnounceAddrDiscovered != nil {
		return *x.AnnounceAddrDiscovered
	}
	return ""
}

func (x *ListconfigsResponse) GetAnnounceAddrDiscoveredPort() int64 {
	if x != nil && x.AnnounceAddrDiscoveredPort != nil {
		return *x.AnnounceAddrDiscoveredPort
	}
	return 0
}

func (x *ListconfigsResponse) GetEncryptedHsm() bool {
	if x != nil && x.EncryptedHsm != nil {
		return *x.EncryptedHsm
	}
	return false
}

func (x *ListconfigsResponse) GetRpcFileMode() string {
	if x != nil && x.RpcFileMode != nil {
		return *x.RpcFileMode
	}
	return ""
}

func (x *ListconfigsResponse) GetLogLevel() string {
	if x != nil && x.LogLevel != nil {
		return *x.LogLevel
	}
	return ""
}

func (x *ListconfigsResponse) GetLogPrefix() string {
	if x != nil && x.LogPrefix != nil {
		return *x.LogPrefix
	}
	return ""
}

func (x *ListconfigsResponse) GetLogFile() string {
	if x != nil && x.LogFile != nil {
		return *x.LogFile
	}
	return ""
}

func (x *ListconfigsResponse) GetLogTimestamps() bool {
	if x != nil && x.LogTimestamps != nil {
		return *x.LogTimestamps
	}
	return false
}

func (x *ListconfigsResponse) GetForceFeerates() string {
	if x != nil && x.ForceFeerates != nil {
		return *x.ForceFeerates
	}
	return ""
}

func (x *ListconfigsResponse) GetSubdaemon() string {
	if x != nil && x.Subdaemon != nil {
		return *x.Subdaemon
	}
	return ""
}

func (x *ListconfigsResponse) GetFetchinvoiceNoconnect() bool {
	if x != nil && x.FetchinvoiceNoconnect != nil {
		return *x.FetchinvoiceNoconnect
	}
	return false
}

func (x *ListconfigsResponse) GetAcceptHtlcTlvTypes() string {
	if x != nil && x.AcceptHtlcTlvTypes != nil {
		return *x.AcceptHtlcTlvTypes
	}
	return ""
}

func (x *ListconfigsResponse) GetTorServicePassword() string {
	if x != nil && x.TorServicePassword != nil {
		return *x.TorServicePassword
	}
	return ""
}

func (x *ListconfigsResponse) GetDevAllowdustreserve() bool {
	if x != nil && x.DevAllowdustreserve != nil {
		return *x.DevAllowdustreserve
	}
	return false
}

func (x *ListconfigsResponse) GetAnnounceAddrDns() bool {
	if x != nil && x.AnnounceAddrDns != nil {
		return *x.AnnounceAddrDns
	}
	return false
}

func (x *ListconfigsResponse) GetRequireConfirmedInputs() bool {
	if x != nil && x.RequireConfirmedInputs != nil {
		return *x.RequireConfirmedInputs
	}
	return false
}

func (x *ListconfigsResponse) GetDeveloper() bool {
	if x != nil && x.Developer != nil {
		return *x.Developer
	}
	return false
}

func (x *ListconfigsResponse) GetCommitFee() uint64 {
	if x != nil && x.CommitFee != nil {
		return *x.CommitFee
	}
	return 0
}

func (x *ListconfigsResponse) GetMinEmergencyMsat() *Amount {
	if x != nil {
		return x.MinEmergencyMsat
	}
	return nil
}

func (x *ListconfigsResponse) GetCommitFeerateOffset() uint32 {
	if x != nil && x.CommitFeerateOffset != nil {
		return *x.CommitFeerateOffset
	}
	return 0
}

func (x *ListconfigsResponse) GetAutoconnectSeekerPeers() uint32 {
	if x != nil && x.AutoconnectSeekerPeers != nil {
		return *x.AutoconnectSeekerPeers
	}
	return 0
}

type ListconfigsConfigs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Conf                             *ListconfigsConfigsConf                             `protobuf:"bytes,1,opt,name=conf,proto3,oneof" json:"conf,omitempty"`
	Developer                        *ListconfigsConfigsDeveloper                        `protobuf:"bytes,2,opt,name=developer,proto3,oneof" json:"developer,omitempty"`
	ClearPlugins                     *ListconfigsConfigsClearplugins                     `protobuf:"bytes,3,opt,name=clear_plugins,json=clearPlugins,proto3,oneof" json:"clear_plugins,omitempty"`
	DisableMpp                       *ListconfigsConfigsDisablempp                       `protobuf:"bytes,4,opt,name=disable_mpp,json=disableMpp,proto3,oneof" json:"disable_mpp,omitempty"`
	Mainnet                          *ListconfigsConfigsMainnet                          `protobuf:"bytes,5,opt,name=mainnet,proto3,oneof" json:"mainnet,omitempty"`
	Regtest                          *ListconfigsConfigsRegtest                          `protobuf:"bytes,6,opt,name=regtest,proto3,oneof" json:"regtest,omitempty"`
	Signet                           *ListconfigsConfigsSignet                           `protobuf:"bytes,7,opt,name=signet,proto3,oneof" json:"signet,omitempty"`
	Testnet                          *ListconfigsConfigsTestnet                          `protobuf:"bytes,8,opt,name=testnet,proto3,oneof" json:"testnet,omitempty"`
	ImportantPlugin                  *ListconfigsConfigsImportantplugin                  `protobuf:"bytes,9,opt,name=important_plugin,json=importantPlugin,proto3,oneof" json:"important_plugin,omitempty"`
	Plugin                           *ListconfigsConfigsPlugin                           `protobuf:"bytes,10,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
	PluginDir                        *ListconfigsConfigsPlugindir                        `protobuf:"bytes,11,opt,name=plugin_dir,json=pluginDir,proto3,oneof" json:"plugin_dir,omitempty"`
	LightningDir                     *ListconfigsConfigsLightningdir                     `protobuf:"bytes,12,opt,name=lightning_dir,json=lightningDir,proto3,oneof" json:"lightning_dir,omitempty"`
	Network                          *ListconfigsConfigsNetwork                          `protobuf:"bytes,13,opt,name=network,proto3,oneof" json:"network,omitempty"`
	AllowDeprecatedApis              *ListconfigsConfigsAllowdeprecatedapis              `protobuf:"bytes,14,opt,name=allow_deprecated_apis,json=allowDeprecatedApis,proto3,oneof" json:"allow_deprecated_apis,omitempty"`
	RpcFile                          *ListconfigsConfigsRpcfile                          `protobuf:"bytes,15,opt,name=rpc_file,json=rpcFile,proto3,oneof" json:"rpc_file,omitempty"`
	DisablePlugin                    *ListconfigsConfigsDisableplugin                    `protobuf:"bytes,16,opt,name=disable_plugin,json=disablePlugin,proto3,oneof" json:"disable_plugin,omitempty"`
	AlwaysUseProxy                   *ListconfigsConfigsAlwaysuseproxy                   `protobuf:"bytes,17,opt,name=always_use_proxy,json=alwaysUseProxy,proto3,oneof" json:"always_use_proxy,omitempty"`
	Daemon                           *ListconfigsConfigsDaemon                           `protobuf:"bytes,18,opt,name=daemon,proto3,oneof" json:"daemon,omitempty"`
	Wallet                           *ListconfigsConfigsWallet                           `protobuf:"bytes,19,opt,name=wallet,proto3,oneof" json:"wallet,omitempty"`
	LargeChannels                    *ListconfigsConfigsLargechannels                    `protobuf:"bytes,20,opt,name=large_channels,json=largeChannels,proto3,oneof" json:"large_channels,omitempty"`
	ExperimentalDualFund             *ListconfigsConfigsExperimentaldualfund             `protobuf:"bytes,21,opt,name=experimental_dual_fund,json=experimentalDualFund,proto3,oneof" json:"experimental_dual_fund,omitempty"`
	ExperimentalSplicing             *ListconfigsConfigsExperimentalsplicing             `protobuf:"bytes,22,opt,name=experimental_splicing,json=experimentalSplicing,proto3,oneof" json:"experimental_splicing,omitempty"`
	ExperimentalOnionMessages        *ListconfigsConfigsExperimentalonionmessages        `protobuf:"bytes,23,opt,name=experimental_onion_messages,json=experimentalOnionMessages,proto3,oneof" json:"experimental_onion_messages,omitempty"`
	ExperimentalOffers               *ListconfigsConfigsExperimentaloffers               `protobuf:"bytes,24,opt,name=experimental_offers,json=experimentalOffers,proto3,oneof" json:"experimental_offers,omitempty"`
	ExperimentalShutdownWrongFunding *ListconfigsConfigsExperimentalshutdownwrongfunding `protobuf:"bytes,25,opt,name=experimental_shutdown_wrong_funding,json=experimentalShutdownWrongFunding,proto3,oneof" json:"experimental_shutdown_wrong_funding,omitempty"`
	ExperimentalPeerStorage          *ListconfigsConfigsExperimentalpeerstorage          `protobuf:"bytes,26,opt,name=experimental_peer_storage,json=experimentalPeerStorage,proto3,oneof" json:"experimental_peer_storage,omitempty"`
	ExperimentalAnchors              *ListconfigsConfigsExperimentalanchors              `protobuf:"bytes,27,opt,name=experimental_anchors,json=experimentalAnchors,proto3,oneof" json:"experimental_anchors,omitempty"`
	DatabaseUpgrade                  *ListconfigsConfigsDatabaseupgrade                  `protobuf:"bytes,28,opt,name=database_upgrade,json=databaseUpgrade,proto3,oneof" json:"database_upgrade,omitempty"`
	Rgb                              *ListconfigsConfigsRgb                              `protobuf:"bytes,29,opt,name=rgb,proto3,oneof" json:"rgb,omitempty"`
	Alias                            *ListconfigsConfigsAlias                            `protobuf:"bytes,30,opt,name=alias,proto3,oneof" json:"alias,omitempty"`
	PidFile                          *ListconfigsConfigsPidfile                          `protobuf:"bytes,31,opt,name=pid_file,json=pidFile,proto3,oneof" json:"pid_file,omitempty"`
	IgnoreFeeLimits                  *ListconfigsConfigsIgnorefeelimits                  `protobuf:"bytes,32,opt,name=ignore_fee_limits,json=ignoreFeeLimits,proto3,oneof" json:"ignore_fee_limits,omitempty"`
	WatchtimeBlocks                  *ListconfigsConfigsWatchtimeblocks                  `protobuf:"bytes,33,opt,name=watchtime_blocks,json=watchtimeBlocks,proto3,oneof" json:"watchtime_blocks,omitempty"`
	MaxLocktimeBlocks                *ListconfigsConfigsMaxlocktimeblocks                `protobuf:"bytes,34,opt,name=max_locktime_blocks,json=maxLocktimeBlocks,proto3,oneof" json:"max_locktime_blocks,omitempty"`
	FundingConfirms                  *ListconfigsConfigsFundingconfirms                  `protobuf:"bytes,35,opt,name=funding_confirms,json=fundingConfirms,proto3,oneof" json:"funding_confirms,omitempty"`
	CltvDelta                        *ListconfigsConfigsCltvdelta                        `protobuf:"bytes,36,opt,name=cltv_delta,json=cltvDelta,proto3,oneof" json:"cltv_delta,omitempty"`
	CltvFinal                        *ListconfigsConfigsCltvfinal                        `protobuf:"bytes,37,opt,name=cltv_final,json=cltvFinal,proto3,oneof" json:"cltv_final,omitempty"`
	CommitTime                       *ListconfigsConfigsCommittime                       `protobuf:"bytes,38,opt,name=commit_time,json=commitTime,proto3,oneof" json:"commit_time,omitempty"`
	FeeBase                          *ListconfigsConfigsFeebase                          `protobuf:"bytes,39,opt,name=fee_base,json=feeBase,proto3,oneof" json:"fee_base,omitempty"`
	Rescan                           *ListconfigsConfigsRescan                           `protobuf:"bytes,40,opt,name=rescan,proto3,oneof" json:"rescan,omitempty"`
	FeePerSatoshi                    *ListconfigsConfigsFeepersatoshi                    `protobuf:"bytes,41,opt,name=fee_per_satoshi,json=feePerSatoshi,proto3,oneof" json:"fee_per_satoshi,omitempty"`
	MaxConcurrentHtlcs               *ListconfigsConfigsMaxconcurrenthtlcs               `protobuf:"bytes,42,opt,name=max_concurrent_htlcs,json=maxConcurrentHtlcs,proto3,oneof" json:"max_concurrent_htlcs,omitempty"`
	HtlcMinimumMsat                  *ListconfigsConfigsHtlcminimummsat                  `protobuf:"bytes,43,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
	HtlcMaximumMsat                  *ListconfigsConfigsHtlcmaximummsat                  `protobuf:"bytes,44,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
	MaxDustHtlcExposureMsat          *ListconfigsConfigsMaxdusthtlcexposuremsat          `protobuf:"bytes,45,opt,name=max_dust_htlc_exposure_msat,json=maxDustHtlcExposureMsat,proto3,oneof" json:"max_dust_htlc_exposure_msat,omitempty"`
	MinCapacitySat                   *ListconfigsConfigsMincapacitysat                   `protobuf:"bytes,46,opt,name=min_capacity_sat,json=minCapacitySat,proto3,oneof" json:"min_capacity_sat,omitempty"`
	Addr                             *ListconfigsConfigsAddr                             `protobuf:"bytes,47,opt,name=addr,proto3,oneof" json:"addr,omitempty"`
	AnnounceAddr                     *ListconfigsConfigsAnnounceaddr                     `protobuf:"bytes,48,opt,name=announce_addr,json=announceAddr,proto3,oneof" json:"announce_addr,omitempty"`
	BindAddr                         *ListconfigsConfigsBindaddr                         `protobuf:"bytes,49,opt,name=bind_addr,json=bindAddr,proto3,oneof" json:"bind_addr,omitempty"`
	Offline                          *ListconfigsConfigsOffline                          `protobuf:"bytes,50,opt,name=offline,proto3,oneof" json:"offline,omitempty"`
	Autolisten                       *ListconfigsConfigsAutolisten                       `protobuf:"bytes,51,opt,name=autolisten,proto3,oneof" json:"autolisten,omitempty"`
	Proxy                            *ListconfigsConfigsProxy                            `protobuf:"bytes,52,opt,name=proxy,proto3,oneof" json:"proxy,omitempty"`
	DisableDns                       *ListconfigsConfigsDisabledns                       `protobuf:"bytes,53,opt,name=disable_dns,json=disableDns,proto3,oneof" json:"disable_dns,omitempty"`
	AnnounceAddrDiscovered           *ListconfigsConfigsAnnounceaddrdiscovered           `protobuf:"bytes,54,opt,name=announce_addr_discovered,json=announceAddrDiscovered,proto3,oneof" json:"announce_addr_discovered,omitempty"`
	AnnounceAddrDiscoveredPort       *ListconfigsConfigsAnnounceaddrdiscoveredport       `protobuf:"bytes,55,opt,name=announce_addr_discovered_port,json=announceAddrDiscoveredPort,proto3,oneof" json:"announce_addr_discovered_port,omitempty"`
	EncryptedHsm                     *ListconfigsConfigsEncryptedhsm                     `protobuf:"bytes,56,opt,name=encrypted_hsm,json=encryptedHsm,proto3,oneof" json:"encrypted_hsm,omitempty"`
	RpcFileMode                      *ListconfigsConfigsRpcfilemode                      `protobuf:"bytes,57,opt,name=rpc_file_mode,json=rpcFileMode,proto3,oneof" json:"rpc_file_mode,omitempty"`
	LogLevel                         *ListconfigsConfigsLoglevel                         `protobuf:"bytes,58,opt,name=log_level,json=logLevel,proto3,oneof" json:"log_level,omitempty"`
	LogPrefix                        *ListconfigsConfigsLogprefix                        `protobuf:"bytes,59,opt,name=log_prefix,json=logPrefix,proto3,oneof" json:"log_prefix,omitempty"`
	LogFile                          *ListconfigsConfigsLogfile                          `protobuf:"bytes,60,opt,name=log_file,json=logFile,proto3,oneof" json:"log_file,omitempty"`
	LogTimestamps                    *ListconfigsConfigsLogtimestamps                    `protobuf:"bytes,61,opt,name=log_timestamps,json=logTimestamps,proto3,oneof" json:"log_timestamps,omitempty"`
	ForceFeerates                    *ListconfigsConfigsForcefeerates                    `protobuf:"bytes,62,opt,name=force_feerates,json=forceFeerates,proto3,oneof" json:"force_feerates,omitempty"`
	Subdaemon                        *ListconfigsConfigsSubdaemon                        `protobuf:"bytes,63,opt,name=subdaemon,proto3,oneof" json:"subdaemon,omitempty"`
	FetchinvoiceNoconnect            *ListconfigsConfigsFetchinvoicenoconnect            `protobuf:"bytes,64,opt,name=fetchinvoice_noconnect,json=fetchinvoiceNoconnect,proto3,oneof" json:"fetchinvoice_noconnect,omitempty"`
	AcceptHtlcTlvTypes               *ListconfigsConfigsAccepthtlctlvtypes               `protobuf:"bytes,65,opt,name=accept_htlc_tlv_types,json=acceptHtlcTlvTypes,proto3,oneof" json:"accept_htlc_tlv_types,omitempty"`
	TorServicePassword               *ListconfigsConfigsTorservicepassword               `protobuf:"bytes,66,opt,name=tor_service_password,json=torServicePassword,proto3,oneof" json:"tor_service_password,omitempty"`
	AnnounceAddrDns                  *ListconfigsConfigsAnnounceaddrdns                  `protobuf:"bytes,67,opt,name=announce_addr_dns,json=announceAddrDns,proto3,oneof" json:"announce_addr_dns,omitempty"`
	RequireConfirmedInputs           *ListconfigsConfigsRequireconfirmedinputs           `protobuf:"bytes,68,opt,name=require_confirmed_inputs,json=requireConfirmedInputs,proto3,oneof" json:"require_confirmed_inputs,omitempty"`
	CommitFee                        *ListconfigsConfigsCommitfee                        `protobuf:"bytes,69,opt,name=commit_fee,json=commitFee,proto3,oneof" json:"commit_fee,omitempty"`
	CommitFeerateOffset              *ListconfigsConfigsCommitfeerateoffset              `protobuf:"bytes,70,opt,name=commit_feerate_offset,json=commitFeerateOffset,proto3,oneof" json:"commit_feerate_offset,omitempty"`
	AutoconnectSeekerPeers           *ListconfigsConfigsAutoconnectseekerpeers           `protobuf:"bytes,71,opt,name=autoconnect_seeker_peers,json=autoconnectSeekerPeers,proto3,oneof" json:"autoconnect_seeker_peers,omitempty"`
}

func (x *ListconfigsConfigs) Reset() {
	*x = ListconfigsConfigs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[299]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigs) ProtoMessage() {}

func (x *ListconfigsConfigs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[299]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigs.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{299}
}

func (x *ListconfigsConfigs) GetConf() *ListconfigsConfigsConf {
	if x != nil {
		return x.Conf
	}
	return nil
}

func (x *ListconfigsConfigs) GetDeveloper() *ListconfigsConfigsDeveloper {
	if x != nil {
		return x.Developer
	}
	return nil
}

func (x *ListconfigsConfigs) GetClearPlugins() *ListconfigsConfigsClearplugins {
	if x != nil {
		return x.ClearPlugins
	}
	return nil
}

func (x *ListconfigsConfigs) GetDisableMpp() *ListconfigsConfigsDisablempp {
	if x != nil {
		return x.DisableMpp
	}
	return nil
}

func (x *ListconfigsConfigs) GetMainnet() *ListconfigsConfigsMainnet {
	if x != nil {
		return x.Mainnet
	}
	return nil
}

func (x *ListconfigsConfigs) GetRegtest() *ListconfigsConfigsRegtest {
	if x != nil {
		return x.Regtest
	}
	return nil
}

func (x *ListconfigsConfigs) GetSignet() *ListconfigsConfigsSignet {
	if x != nil {
		return x.Signet
	}
	return nil
}

func (x *ListconfigsConfigs) GetTestnet() *ListconfigsConfigsTestnet {
	if x != nil {
		return x.Testnet
	}
	return nil
}

func (x *ListconfigsConfigs) GetImportantPlugin() *ListconfigsConfigsImportantplugin {
	if x != nil {
		return x.ImportantPlugin
	}
	return nil
}

func (x *ListconfigsConfigs) GetPlugin() *ListconfigsConfigsPlugin {
	if x != nil {
		return x.Plugin
	}
	return nil
}

func (x *ListconfigsConfigs) GetPluginDir() *ListconfigsConfigsPlugindir {
	if x != nil {
		return x.PluginDir
	}
	return nil
}

func (x *ListconfigsConfigs) GetLightningDir() *ListconfigsConfigsLightningdir {
	if x != nil {
		return x.LightningDir
	}
	return nil
}

func (x *ListconfigsConfigs) GetNetwork() *ListconfigsConfigsNetwork {
	if x != nil {
		return x.Network
	}
	return nil
}

func (x *ListconfigsConfigs) GetAllowDeprecatedApis() *ListconfigsConfigsAllowdeprecatedapis {
	if x != nil {
		return x.AllowDeprecatedApis
	}
	return nil
}

func (x *ListconfigsConfigs) GetRpcFile() *ListconfigsConfigsRpcfile {
	if x != nil {
		return x.RpcFile
	}
	return nil
}

func (x *ListconfigsConfigs) GetDisablePlugin() *ListconfigsConfigsDisableplugin {
	if x != nil {
		return x.DisablePlugin
	}
	return nil
}

func (x *ListconfigsConfigs) GetAlwaysUseProxy() *ListconfigsConfigsAlwaysuseproxy {
	if x != nil {
		return x.AlwaysUseProxy
	}
	return nil
}

func (x *ListconfigsConfigs) GetDaemon() *ListconfigsConfigsDaemon {
	if x != nil {
		return x.Daemon
	}
	return nil
}

func (x *ListconfigsConfigs) GetWallet() *ListconfigsConfigsWallet {
	if x != nil {
		return x.Wallet
	}
	return nil
}

func (x *ListconfigsConfigs) GetLargeChannels() *ListconfigsConfigsLargechannels {
	if x != nil {
		return x.LargeChannels
	}
	return nil
}

func (x *ListconfigsConfigs) GetExperimentalDualFund() *ListconfigsConfigsExperimentaldualfund {
	if x != nil {
		return x.ExperimentalDualFund
	}
	return nil
}

func (x *ListconfigsConfigs) GetExperimentalSplicing() *ListconfigsConfigsExperimentalsplicing {
	if x != nil {
		return x.ExperimentalSplicing
	}
	return nil
}

func (x *ListconfigsConfigs) GetExperimentalOnionMessages() *ListconfigsConfigsExperimentalonionmessages {
	if x != nil {
		return x.ExperimentalOnionMessages
	}
	return nil
}

func (x *ListconfigsConfigs) GetExperimentalOffers() *ListconfigsConfigsExperimentaloffers {
	if x != nil {
		return x.ExperimentalOffers
	}
	return nil
}

func (x *ListconfigsConfigs) GetExperimentalShutdownWrongFunding() *ListconfigsConfigsExperimentalshutdownwrongfunding {
	if x != nil {
		return x.ExperimentalShutdownWrongFunding
	}
	return nil
}

func (x *ListconfigsConfigs) GetExperimentalPeerStorage() *ListconfigsConfigsExperimentalpeerstorage {
	if x != nil {
		return x.ExperimentalPeerStorage
	}
	return nil
}

func (x *ListconfigsConfigs) GetExperimentalAnchors() *ListconfigsConfigsExperimentalanchors {
	if x != nil {
		return x.ExperimentalAnchors
	}
	return nil
}

func (x *ListconfigsConfigs) GetDatabaseUpgrade() *ListconfigsConfigsDatabaseupgrade {
	if x != nil {
		return x.DatabaseUpgrade
	}
	return nil
}

func (x *ListconfigsConfigs) GetRgb() *ListconfigsConfigsRgb {
	if x != nil {
		return x.Rgb
	}
	return nil
}

func (x *ListconfigsConfigs) GetAlias() *ListconfigsConfigsAlias {
	if x != nil {
		return x.Alias
	}
	return nil
}

func (x *ListconfigsConfigs) GetPidFile() *ListconfigsConfigsPidfile {
	if x != nil {
		return x.PidFile
	}
	return nil
}

func (x *ListconfigsConfigs) GetIgnoreFeeLimits() *ListconfigsConfigsIgnorefeelimits {
	if x != nil {
		return x.IgnoreFeeLimits
	}
	return nil
}

func (x *ListconfigsConfigs) GetWatchtimeBlocks() *ListconfigsConfigsWatchtimeblocks {
	if x != nil {
		return x.WatchtimeBlocks
	}
	return nil
}

func (x *ListconfigsConfigs) GetMaxLocktimeBlocks() *ListconfigsConfigsMaxlocktimeblocks {
	if x != nil {
		return x.MaxLocktimeBlocks
	}
	return nil
}

func (x *ListconfigsConfigs) GetFundingConfirms() *ListconfigsConfigsFundingconfirms {
	if x != nil {
		return x.FundingConfirms
	}
	return nil
}

func (x *ListconfigsConfigs) GetCltvDelta() *ListconfigsConfigsCltvdelta {
	if x != nil {
		return x.CltvDelta
	}
	return nil
}

func (x *ListconfigsConfigs) GetCltvFinal() *ListconfigsConfigsCltvfinal {
	if x != nil {
		return x.CltvFinal
	}
	return nil
}

func (x *ListconfigsConfigs) GetCommitTime() *ListconfigsConfigsCommittime {
	if x != nil {
		return x.CommitTime
	}
	return nil
}

func (x *ListconfigsConfigs) GetFeeBase() *ListconfigsConfigsFeebase {
	if x != nil {
		return x.FeeBase
	}
	return nil
}

func (x *ListconfigsConfigs) GetRescan() *ListconfigsConfigsRescan {
	if x != nil {
		return x.Rescan
	}
	return nil
}

func (x *ListconfigsConfigs) GetFeePerSatoshi() *ListconfigsConfigsFeepersatoshi {
	if x != nil {
		return x.FeePerSatoshi
	}
	return nil
}

func (x *ListconfigsConfigs) GetMaxConcurrentHtlcs() *ListconfigsConfigsMaxconcurrenthtlcs {
	if x != nil {
		return x.MaxConcurrentHtlcs
	}
	return nil
}

func (x *ListconfigsConfigs) GetHtlcMinimumMsat() *ListconfigsConfigsHtlcminimummsat {
	if x != nil {
		return x.HtlcMinimumMsat
	}
	return nil
}

func (x *ListconfigsConfigs) GetHtlcMaximumMsat() *ListconfigsConfigsHtlcmaximummsat {
	if x != nil {
		return x.HtlcMaximumMsat
	}
	return nil
}

func (x *ListconfigsConfigs) GetMaxDustHtlcExposureMsat() *ListconfigsConfigsMaxdusthtlcexposuremsat {
	if x != nil {
		return x.MaxDustHtlcExposureMsat
	}
	return nil
}

func (x *ListconfigsConfigs) GetMinCapacitySat() *ListconfigsConfigsMincapacitysat {
	if x != nil {
		return x.MinCapacitySat
	}
	return nil
}

func (x *ListconfigsConfigs) GetAddr() *ListconfigsConfigsAddr {
	if x != nil {
		return x.Addr
	}
	return nil
}

func (x *ListconfigsConfigs) GetAnnounceAddr() *ListconfigsConfigsAnnounceaddr {
	if x != nil {
		return x.AnnounceAddr
	}
	return nil
}

func (x *ListconfigsConfigs) GetBindAddr() *ListconfigsConfigsBindaddr {
	if x != nil {
		return x.BindAddr
	}
	return nil
}

func (x *ListconfigsConfigs) GetOffline() *ListconfigsConfigsOffline {
	if x != nil {
		return x.Offline
	}
	return nil
}

func (x *ListconfigsConfigs) GetAutolisten() *ListconfigsConfigsAutolisten {
	if x != nil {
		return x.Autolisten
	}
	return nil
}

func (x *ListconfigsConfigs) GetProxy() *ListconfigsConfigsProxy {
	if x != nil {
		return x.Proxy
	}
	return nil
}

func (x *ListconfigsConfigs) GetDisableDns() *ListconfigsConfigsDisabledns {
	if x != nil {
		return x.DisableDns
	}
	return nil
}

func (x *ListconfigsConfigs) GetAnnounceAddrDiscovered() *ListconfigsConfigsAnnounceaddrdiscovered {
	if x != nil {
		return x.AnnounceAddrDiscovered
	}
	return nil
}

func (x *ListconfigsConfigs) GetAnnounceAddrDiscoveredPort() *ListconfigsConfigsAnnounceaddrdiscoveredport {
	if x != nil {
		return x.AnnounceAddrDiscoveredPort
	}
	return nil
}

func (x *ListconfigsConfigs) GetEncryptedHsm() *ListconfigsConfigsEncryptedhsm {
	if x != nil {
		return x.EncryptedHsm
	}
	return nil
}

func (x *ListconfigsConfigs) GetRpcFileMode() *ListconfigsConfigsRpcfilemode {
	if x != nil {
		return x.RpcFileMode
	}
	return nil
}

func (x *ListconfigsConfigs) GetLogLevel() *ListconfigsConfigsLoglevel {
	if x != nil {
		return x.LogLevel
	}
	return nil
}

func (x *ListconfigsConfigs) GetLogPrefix() *ListconfigsConfigsLogprefix {
	if x != nil {
		return x.LogPrefix
	}
	return nil
}

func (x *ListconfigsConfigs) GetLogFile() *ListconfigsConfigsLogfile {
	if x != nil {
		return x.LogFile
	}
	return nil
}

func (x *ListconfigsConfigs) GetLogTimestamps() *ListconfigsConfigsLogtimestamps {
	if x != nil {
		return x.LogTimestamps
	}
	return nil
}

func (x *ListconfigsConfigs) GetForceFeerates() *ListconfigsConfigsForcefeerates {
	if x != nil {
		return x.ForceFeerates
	}
	return nil
}

func (x *ListconfigsConfigs) GetSubdaemon() *ListconfigsConfigsSubdaemon {
	if x != nil {
		return x.Subdaemon
	}
	return nil
}

func (x *ListconfigsConfigs) GetFetchinvoiceNoconnect() *ListconfigsConfigsFetchinvoicenoconnect {
	if x != nil {
		return x.FetchinvoiceNoconnect
	}
	return nil
}

func (x *ListconfigsConfigs) GetAcceptHtlcTlvTypes() *ListconfigsConfigsAccepthtlctlvtypes {
	if x != nil {
		return x.AcceptHtlcTlvTypes
	}
	return nil
}

func (x *ListconfigsConfigs) GetTorServicePassword() *ListconfigsConfigsTorservicepassword {
	if x != nil {
		return x.TorServicePassword
	}
	return nil
}

func (x *ListconfigsConfigs) GetAnnounceAddrDns() *ListconfigsConfigsAnnounceaddrdns {
	if x != nil {
		return x.AnnounceAddrDns
	}
	return nil
}

func (x *ListconfigsConfigs) GetRequireConfirmedInputs() *ListconfigsConfigsRequireconfirmedinputs {
	if x != nil {
		return x.RequireConfirmedInputs
	}
	return nil
}

func (x *ListconfigsConfigs) GetCommitFee() *ListconfigsConfigsCommitfee {
	if x != nil {
		return x.CommitFee
	}
	return nil
}

func (x *ListconfigsConfigs) GetCommitFeerateOffset() *ListconfigsConfigsCommitfeerateoffset {
	if x != nil {
		return x.CommitFeerateOffset
	}
	return nil
}

func (x *ListconfigsConfigs) GetAutoconnectSeekerPeers() *ListconfigsConfigsAutoconnectseekerpeers {
	if x != nil {
		return x.AutoconnectSeekerPeers
	}
	return nil
}

type ListconfigsConfigsConf struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string                                              `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   ListconfigsConfigsConf_ListconfigsConfigsConfSource `protobuf:"varint,2,opt,name=source,proto3,enum=cln.ListconfigsConfigsConf_ListconfigsConfigsConfSource" json:"source,omitempty"`
}

func (x *ListconfigsConfigsConf) Reset() {
	*x = ListconfigsConfigsConf{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[300]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsConf) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsConf) ProtoMessage() {}

func (x *ListconfigsConfigsConf) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[300]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsConf.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsConf) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{300}
}

func (x *ListconfigsConfigsConf) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsConf) GetSource() ListconfigsConfigsConf_ListconfigsConfigsConfSource {
	if x != nil {
		return x.Source
	}
	return ListconfigsConfigsConf_CMDLINE
}

type ListconfigsConfigsDeveloper struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsDeveloper) Reset() {
	*x = ListconfigsConfigsDeveloper{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[301]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsDeveloper) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsDeveloper) ProtoMessage() {}

func (x *ListconfigsConfigsDeveloper) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[301]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsDeveloper.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsDeveloper) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{301}
}

func (x *ListconfigsConfigsDeveloper) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsDeveloper) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsClearplugins struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsClearplugins) Reset() {
	*x = ListconfigsConfigsClearplugins{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[302]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsClearplugins) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsClearplugins) ProtoMessage() {}

func (x *ListconfigsConfigsClearplugins) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[302]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsClearplugins.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsClearplugins) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{302}
}

func (x *ListconfigsConfigsClearplugins) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsClearplugins) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsDisablempp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool    `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string  `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
	Plugin *string `protobuf:"bytes,3,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
}

func (x *ListconfigsConfigsDisablempp) Reset() {
	*x = ListconfigsConfigsDisablempp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[303]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsDisablempp) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsDisablempp) ProtoMessage() {}

func (x *ListconfigsConfigsDisablempp) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[303]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsDisablempp.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsDisablempp) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{303}
}

func (x *ListconfigsConfigsDisablempp) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsDisablempp) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

func (x *ListconfigsConfigsDisablempp) GetPlugin() string {
	if x != nil && x.Plugin != nil {
		return *x.Plugin
	}
	return ""
}

type ListconfigsConfigsMainnet struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsMainnet) Reset() {
	*x = ListconfigsConfigsMainnet{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[304]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsMainnet) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsMainnet) ProtoMessage() {}

func (x *ListconfigsConfigsMainnet) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[304]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsMainnet.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsMainnet) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{304}
}

func (x *ListconfigsConfigsMainnet) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsMainnet) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsRegtest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsRegtest) Reset() {
	*x = ListconfigsConfigsRegtest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[305]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsRegtest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsRegtest) ProtoMessage() {}

func (x *ListconfigsConfigsRegtest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[305]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsRegtest.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsRegtest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{305}
}

func (x *ListconfigsConfigsRegtest) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsRegtest) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsSignet struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsSignet) Reset() {
	*x = ListconfigsConfigsSignet{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[306]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsSignet) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsSignet) ProtoMessage() {}

func (x *ListconfigsConfigsSignet) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[306]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsSignet.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsSignet) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{306}
}

func (x *ListconfigsConfigsSignet) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsSignet) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsTestnet struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsTestnet) Reset() {
	*x = ListconfigsConfigsTestnet{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[307]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsTestnet) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsTestnet) ProtoMessage() {}

func (x *ListconfigsConfigsTestnet) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[307]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsTestnet.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsTestnet) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{307}
}

func (x *ListconfigsConfigsTestnet) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsTestnet) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsImportantplugin struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsImportantplugin) Reset() {
	*x = ListconfigsConfigsImportantplugin{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[308]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsImportantplugin) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsImportantplugin) ProtoMessage() {}

func (x *ListconfigsConfigsImportantplugin) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[308]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsImportantplugin.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsImportantplugin) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{308}
}

func (x *ListconfigsConfigsImportantplugin) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsImportantplugin) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsPlugin struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsPlugin) Reset() {
	*x = ListconfigsConfigsPlugin{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[309]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsPlugin) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsPlugin) ProtoMessage() {}

func (x *ListconfigsConfigsPlugin) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[309]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsPlugin.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsPlugin) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{309}
}

func (x *ListconfigsConfigsPlugin) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsPlugin) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsPlugindir struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsPlugindir) Reset() {
	*x = ListconfigsConfigsPlugindir{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[310]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsPlugindir) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsPlugindir) ProtoMessage() {}

func (x *ListconfigsConfigsPlugindir) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[310]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsPlugindir.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsPlugindir) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{310}
}

func (x *ListconfigsConfigsPlugindir) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsPlugindir) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsLightningdir struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsLightningdir) Reset() {
	*x = ListconfigsConfigsLightningdir{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[311]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsLightningdir) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsLightningdir) ProtoMessage() {}

func (x *ListconfigsConfigsLightningdir) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[311]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsLightningdir.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsLightningdir) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{311}
}

func (x *ListconfigsConfigsLightningdir) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsLightningdir) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsNetwork struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsNetwork) Reset() {
	*x = ListconfigsConfigsNetwork{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[312]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsNetwork) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsNetwork) ProtoMessage() {}

func (x *ListconfigsConfigsNetwork) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[312]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsNetwork.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsNetwork) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{312}
}

func (x *ListconfigsConfigsNetwork) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsNetwork) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsAllowdeprecatedapis struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueBool bool   `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
	Source    string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAllowdeprecatedapis) Reset() {
	*x = ListconfigsConfigsAllowdeprecatedapis{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[313]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAllowdeprecatedapis) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAllowdeprecatedapis) ProtoMessage() {}

func (x *ListconfigsConfigsAllowdeprecatedapis) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[313]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAllowdeprecatedapis.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAllowdeprecatedapis) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{313}
}

func (x *ListconfigsConfigsAllowdeprecatedapis) GetValueBool() bool {
	if x != nil {
		return x.ValueBool
	}
	return false
}

func (x *ListconfigsConfigsAllowdeprecatedapis) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsRpcfile struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsRpcfile) Reset() {
	*x = ListconfigsConfigsRpcfile{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[314]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsRpcfile) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsRpcfile) ProtoMessage() {}

func (x *ListconfigsConfigsRpcfile) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[314]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsRpcfile.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsRpcfile) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{314}
}

func (x *ListconfigsConfigsRpcfile) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsRpcfile) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsDisableplugin struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsDisableplugin) Reset() {
	*x = ListconfigsConfigsDisableplugin{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[315]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsDisableplugin) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsDisableplugin) ProtoMessage() {}

func (x *ListconfigsConfigsDisableplugin) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[315]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsDisableplugin.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsDisableplugin) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{315}
}

func (x *ListconfigsConfigsDisableplugin) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsDisableplugin) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsAlwaysuseproxy struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueBool bool   `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
	Source    string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAlwaysuseproxy) Reset() {
	*x = ListconfigsConfigsAlwaysuseproxy{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[316]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAlwaysuseproxy) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAlwaysuseproxy) ProtoMessage() {}

func (x *ListconfigsConfigsAlwaysuseproxy) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[316]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAlwaysuseproxy.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAlwaysuseproxy) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{316}
}

func (x *ListconfigsConfigsAlwaysuseproxy) GetValueBool() bool {
	if x != nil {
		return x.ValueBool
	}
	return false
}

func (x *ListconfigsConfigsAlwaysuseproxy) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsDaemon struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsDaemon) Reset() {
	*x = ListconfigsConfigsDaemon{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[317]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsDaemon) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsDaemon) ProtoMessage() {}

func (x *ListconfigsConfigsDaemon) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[317]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsDaemon.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsDaemon) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{317}
}

func (x *ListconfigsConfigsDaemon) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsDaemon) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsWallet struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsWallet) Reset() {
	*x = ListconfigsConfigsWallet{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[318]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsWallet) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsWallet) ProtoMessage() {}

func (x *ListconfigsConfigsWallet) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[318]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsWallet.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsWallet) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{318}
}

func (x *ListconfigsConfigsWallet) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsWallet) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsLargechannels struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsLargechannels) Reset() {
	*x = ListconfigsConfigsLargechannels{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[319]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsLargechannels) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsLargechannels) ProtoMessage() {}

func (x *ListconfigsConfigsLargechannels) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[319]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsLargechannels.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsLargechannels) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{319}
}

func (x *ListconfigsConfigsLargechannels) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsLargechannels) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsExperimentaldualfund struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsExperimentaldualfund) Reset() {
	*x = ListconfigsConfigsExperimentaldualfund{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[320]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsExperimentaldualfund) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsExperimentaldualfund) ProtoMessage() {}

func (x *ListconfigsConfigsExperimentaldualfund) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[320]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsExperimentaldualfund.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsExperimentaldualfund) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{320}
}

func (x *ListconfigsConfigsExperimentaldualfund) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsExperimentaldualfund) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsExperimentalsplicing struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsExperimentalsplicing) Reset() {
	*x = ListconfigsConfigsExperimentalsplicing{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[321]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsExperimentalsplicing) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsExperimentalsplicing) ProtoMessage() {}

func (x *ListconfigsConfigsExperimentalsplicing) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[321]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsExperimentalsplicing.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsExperimentalsplicing) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{321}
}

func (x *ListconfigsConfigsExperimentalsplicing) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsExperimentalsplicing) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsExperimentalonionmessages struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsExperimentalonionmessages) Reset() {
	*x = ListconfigsConfigsExperimentalonionmessages{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[322]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsExperimentalonionmessages) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsExperimentalonionmessages) ProtoMessage() {}

func (x *ListconfigsConfigsExperimentalonionmessages) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[322]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsExperimentalonionmessages.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsExperimentalonionmessages) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{322}
}

func (x *ListconfigsConfigsExperimentalonionmessages) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsExperimentalonionmessages) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsExperimentaloffers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsExperimentaloffers) Reset() {
	*x = ListconfigsConfigsExperimentaloffers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[323]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsExperimentaloffers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsExperimentaloffers) ProtoMessage() {}

func (x *ListconfigsConfigsExperimentaloffers) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[323]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsExperimentaloffers.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsExperimentaloffers) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{323}
}

func (x *ListconfigsConfigsExperimentaloffers) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsExperimentaloffers) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsExperimentalshutdownwrongfunding struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) Reset() {
	*x = ListconfigsConfigsExperimentalshutdownwrongfunding{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[324]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsExperimentalshutdownwrongfunding) ProtoMessage() {}

func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[324]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsExperimentalshutdownwrongfunding.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsExperimentalshutdownwrongfunding) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{324}
}

func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsExperimentalshutdownwrongfunding) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsExperimentalpeerstorage struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsExperimentalpeerstorage) Reset() {
	*x = ListconfigsConfigsExperimentalpeerstorage{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[325]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsExperimentalpeerstorage) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsExperimentalpeerstorage) ProtoMessage() {}

func (x *ListconfigsConfigsExperimentalpeerstorage) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[325]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsExperimentalpeerstorage.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsExperimentalpeerstorage) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{325}
}

func (x *ListconfigsConfigsExperimentalpeerstorage) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsExperimentalpeerstorage) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsExperimentalanchors struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsExperimentalanchors) Reset() {
	*x = ListconfigsConfigsExperimentalanchors{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[326]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsExperimentalanchors) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsExperimentalanchors) ProtoMessage() {}

func (x *ListconfigsConfigsExperimentalanchors) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[326]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsExperimentalanchors.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsExperimentalanchors) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{326}
}

func (x *ListconfigsConfigsExperimentalanchors) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsExperimentalanchors) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsDatabaseupgrade struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueBool bool   `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
	Source    string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsDatabaseupgrade) Reset() {
	*x = ListconfigsConfigsDatabaseupgrade{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[327]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsDatabaseupgrade) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsDatabaseupgrade) ProtoMessage() {}

func (x *ListconfigsConfigsDatabaseupgrade) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[327]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsDatabaseupgrade.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsDatabaseupgrade) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{327}
}

func (x *ListconfigsConfigsDatabaseupgrade) GetValueBool() bool {
	if x != nil {
		return x.ValueBool
	}
	return false
}

func (x *ListconfigsConfigsDatabaseupgrade) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsRgb struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr []byte `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsRgb) Reset() {
	*x = ListconfigsConfigsRgb{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[328]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsRgb) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsRgb) ProtoMessage() {}

func (x *ListconfigsConfigsRgb) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[328]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsRgb.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsRgb) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{328}
}

func (x *ListconfigsConfigsRgb) GetValueStr() []byte {
	if x != nil {
		return x.ValueStr
	}
	return nil
}

func (x *ListconfigsConfigsRgb) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsAlias struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAlias) Reset() {
	*x = ListconfigsConfigsAlias{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[329]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAlias) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAlias) ProtoMessage() {}

func (x *ListconfigsConfigsAlias) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[329]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAlias.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAlias) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{329}
}

func (x *ListconfigsConfigsAlias) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsAlias) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsPidfile struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsPidfile) Reset() {
	*x = ListconfigsConfigsPidfile{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[330]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsPidfile) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsPidfile) ProtoMessage() {}

func (x *ListconfigsConfigsPidfile) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[330]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsPidfile.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsPidfile) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{330}
}

func (x *ListconfigsConfigsPidfile) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsPidfile) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsIgnorefeelimits struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueBool bool   `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
	Source    string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsIgnorefeelimits) Reset() {
	*x = ListconfigsConfigsIgnorefeelimits{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[331]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsIgnorefeelimits) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsIgnorefeelimits) ProtoMessage() {}

func (x *ListconfigsConfigsIgnorefeelimits) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[331]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsIgnorefeelimits.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsIgnorefeelimits) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{331}
}

func (x *ListconfigsConfigsIgnorefeelimits) GetValueBool() bool {
	if x != nil {
		return x.ValueBool
	}
	return false
}

func (x *ListconfigsConfigsIgnorefeelimits) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsWatchtimeblocks struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsWatchtimeblocks) Reset() {
	*x = ListconfigsConfigsWatchtimeblocks{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[332]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsWatchtimeblocks) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsWatchtimeblocks) ProtoMessage() {}

func (x *ListconfigsConfigsWatchtimeblocks) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[332]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsWatchtimeblocks.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsWatchtimeblocks) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{332}
}

func (x *ListconfigsConfigsWatchtimeblocks) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsWatchtimeblocks) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsMaxlocktimeblocks struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsMaxlocktimeblocks) Reset() {
	*x = ListconfigsConfigsMaxlocktimeblocks{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[333]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsMaxlocktimeblocks) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsMaxlocktimeblocks) ProtoMessage() {}

func (x *ListconfigsConfigsMaxlocktimeblocks) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[333]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsMaxlocktimeblocks.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsMaxlocktimeblocks) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{333}
}

func (x *ListconfigsConfigsMaxlocktimeblocks) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsMaxlocktimeblocks) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsFundingconfirms struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsFundingconfirms) Reset() {
	*x = ListconfigsConfigsFundingconfirms{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[334]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsFundingconfirms) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsFundingconfirms) ProtoMessage() {}

func (x *ListconfigsConfigsFundingconfirms) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[334]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsFundingconfirms.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsFundingconfirms) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{334}
}

func (x *ListconfigsConfigsFundingconfirms) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsFundingconfirms) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsCltvdelta struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsCltvdelta) Reset() {
	*x = ListconfigsConfigsCltvdelta{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[335]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsCltvdelta) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsCltvdelta) ProtoMessage() {}

func (x *ListconfigsConfigsCltvdelta) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[335]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsCltvdelta.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsCltvdelta) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{335}
}

func (x *ListconfigsConfigsCltvdelta) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsCltvdelta) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsCltvfinal struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsCltvfinal) Reset() {
	*x = ListconfigsConfigsCltvfinal{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[336]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsCltvfinal) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsCltvfinal) ProtoMessage() {}

func (x *ListconfigsConfigsCltvfinal) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[336]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsCltvfinal.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsCltvfinal) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{336}
}

func (x *ListconfigsConfigsCltvfinal) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsCltvfinal) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsCommittime struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsCommittime) Reset() {
	*x = ListconfigsConfigsCommittime{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[337]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsCommittime) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsCommittime) ProtoMessage() {}

func (x *ListconfigsConfigsCommittime) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[337]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsCommittime.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsCommittime) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{337}
}

func (x *ListconfigsConfigsCommittime) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsCommittime) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsFeebase struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsFeebase) Reset() {
	*x = ListconfigsConfigsFeebase{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[338]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsFeebase) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsFeebase) ProtoMessage() {}

func (x *ListconfigsConfigsFeebase) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[338]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsFeebase.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsFeebase) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{338}
}

func (x *ListconfigsConfigsFeebase) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsFeebase) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsRescan struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt int64  `protobuf:"zigzag64,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsRescan) Reset() {
	*x = ListconfigsConfigsRescan{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[339]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsRescan) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsRescan) ProtoMessage() {}

func (x *ListconfigsConfigsRescan) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[339]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsRescan.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsRescan) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{339}
}

func (x *ListconfigsConfigsRescan) GetValueInt() int64 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsRescan) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsFeepersatoshi struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsFeepersatoshi) Reset() {
	*x = ListconfigsConfigsFeepersatoshi{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[340]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsFeepersatoshi) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsFeepersatoshi) ProtoMessage() {}

func (x *ListconfigsConfigsFeepersatoshi) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[340]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsFeepersatoshi.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsFeepersatoshi) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{340}
}

func (x *ListconfigsConfigsFeepersatoshi) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsFeepersatoshi) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsMaxconcurrenthtlcs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsMaxconcurrenthtlcs) Reset() {
	*x = ListconfigsConfigsMaxconcurrenthtlcs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[341]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsMaxconcurrenthtlcs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsMaxconcurrenthtlcs) ProtoMessage() {}

func (x *ListconfigsConfigsMaxconcurrenthtlcs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[341]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsMaxconcurrenthtlcs.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsMaxconcurrenthtlcs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{341}
}

func (x *ListconfigsConfigsMaxconcurrenthtlcs) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsMaxconcurrenthtlcs) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsHtlcminimummsat struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueMsat *Amount `protobuf:"bytes,1,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"`
	Source    string  `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsHtlcminimummsat) Reset() {
	*x = ListconfigsConfigsHtlcminimummsat{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[342]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsHtlcminimummsat) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsHtlcminimummsat) ProtoMessage() {}

func (x *ListconfigsConfigsHtlcminimummsat) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[342]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsHtlcminimummsat.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsHtlcminimummsat) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{342}
}

func (x *ListconfigsConfigsHtlcminimummsat) GetValueMsat() *Amount {
	if x != nil {
		return x.ValueMsat
	}
	return nil
}

func (x *ListconfigsConfigsHtlcminimummsat) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsHtlcmaximummsat struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueMsat *Amount `protobuf:"bytes,1,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"`
	Source    string  `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsHtlcmaximummsat) Reset() {
	*x = ListconfigsConfigsHtlcmaximummsat{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[343]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsHtlcmaximummsat) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsHtlcmaximummsat) ProtoMessage() {}

func (x *ListconfigsConfigsHtlcmaximummsat) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[343]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsHtlcmaximummsat.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsHtlcmaximummsat) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{343}
}

func (x *ListconfigsConfigsHtlcmaximummsat) GetValueMsat() *Amount {
	if x != nil {
		return x.ValueMsat
	}
	return nil
}

func (x *ListconfigsConfigsHtlcmaximummsat) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsMaxdusthtlcexposuremsat struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueMsat *Amount `protobuf:"bytes,1,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"`
	Source    string  `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) Reset() {
	*x = ListconfigsConfigsMaxdusthtlcexposuremsat{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[344]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsMaxdusthtlcexposuremsat) ProtoMessage() {}

func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[344]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsMaxdusthtlcexposuremsat.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsMaxdusthtlcexposuremsat) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{344}
}

func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) GetValueMsat() *Amount {
	if x != nil {
		return x.ValueMsat
	}
	return nil
}

func (x *ListconfigsConfigsMaxdusthtlcexposuremsat) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsMincapacitysat struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint64 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
	Dynamic  *bool  `protobuf:"varint,3,opt,name=dynamic,proto3,oneof" json:"dynamic,omitempty"`
}

func (x *ListconfigsConfigsMincapacitysat) Reset() {
	*x = ListconfigsConfigsMincapacitysat{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[345]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsMincapacitysat) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsMincapacitysat) ProtoMessage() {}

func (x *ListconfigsConfigsMincapacitysat) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[345]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsMincapacitysat.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsMincapacitysat) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{345}
}

func (x *ListconfigsConfigsMincapacitysat) GetValueInt() uint64 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsMincapacitysat) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

func (x *ListconfigsConfigsMincapacitysat) GetDynamic() bool {
	if x != nil && x.Dynamic != nil {
		return *x.Dynamic
	}
	return false
}

type ListconfigsConfigsAddr struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsAddr) Reset() {
	*x = ListconfigsConfigsAddr{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[346]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAddr) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAddr) ProtoMessage() {}

func (x *ListconfigsConfigsAddr) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[346]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAddr.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAddr) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{346}
}

func (x *ListconfigsConfigsAddr) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsAddr) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsAnnounceaddr struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsAnnounceaddr) Reset() {
	*x = ListconfigsConfigsAnnounceaddr{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[347]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAnnounceaddr) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAnnounceaddr) ProtoMessage() {}

func (x *ListconfigsConfigsAnnounceaddr) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[347]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAnnounceaddr.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAnnounceaddr) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{347}
}

func (x *ListconfigsConfigsAnnounceaddr) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsAnnounceaddr) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsBindaddr struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsBindaddr) Reset() {
	*x = ListconfigsConfigsBindaddr{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[348]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsBindaddr) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsBindaddr) ProtoMessage() {}

func (x *ListconfigsConfigsBindaddr) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[348]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsBindaddr.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsBindaddr) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{348}
}

func (x *ListconfigsConfigsBindaddr) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsBindaddr) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsOffline struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsOffline) Reset() {
	*x = ListconfigsConfigsOffline{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[349]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsOffline) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsOffline) ProtoMessage() {}

func (x *ListconfigsConfigsOffline) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[349]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsOffline.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsOffline) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{349}
}

func (x *ListconfigsConfigsOffline) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsOffline) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsAutolisten struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueBool bool   `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
	Source    string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAutolisten) Reset() {
	*x = ListconfigsConfigsAutolisten{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[350]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAutolisten) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAutolisten) ProtoMessage() {}

func (x *ListconfigsConfigsAutolisten) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[350]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAutolisten.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAutolisten) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{350}
}

func (x *ListconfigsConfigsAutolisten) GetValueBool() bool {
	if x != nil {
		return x.ValueBool
	}
	return false
}

func (x *ListconfigsConfigsAutolisten) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsProxy struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsProxy) Reset() {
	*x = ListconfigsConfigsProxy{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[351]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsProxy) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsProxy) ProtoMessage() {}

func (x *ListconfigsConfigsProxy) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[351]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsProxy.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsProxy) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{351}
}

func (x *ListconfigsConfigsProxy) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsProxy) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsDisabledns struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsDisabledns) Reset() {
	*x = ListconfigsConfigsDisabledns{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[352]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsDisabledns) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsDisabledns) ProtoMessage() {}

func (x *ListconfigsConfigsDisabledns) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[352]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsDisabledns.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsDisabledns) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{352}
}

func (x *ListconfigsConfigsDisabledns) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsDisabledns) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsAnnounceaddrdiscovered struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr `protobuf:"varint,1,opt,name=value_str,json=valueStr,proto3,enum=cln.ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr" json:"value_str,omitempty"`
	Source   string                                                                                    `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAnnounceaddrdiscovered) Reset() {
	*x = ListconfigsConfigsAnnounceaddrdiscovered{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[353]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAnnounceaddrdiscovered) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAnnounceaddrdiscovered) ProtoMessage() {}

func (x *ListconfigsConfigsAnnounceaddrdiscovered) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[353]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAnnounceaddrdiscovered.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAnnounceaddrdiscovered) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{353}
}

func (x *ListconfigsConfigsAnnounceaddrdiscovered) GetValueStr() ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr {
	if x != nil {
		return x.ValueStr
	}
	return ListconfigsConfigsAnnounceaddrdiscovered_TRUE
}

func (x *ListconfigsConfigsAnnounceaddrdiscovered) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsAnnounceaddrdiscoveredport struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) Reset() {
	*x = ListconfigsConfigsAnnounceaddrdiscoveredport{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[354]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAnnounceaddrdiscoveredport) ProtoMessage() {}

func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[354]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAnnounceaddrdiscoveredport.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAnnounceaddrdiscoveredport) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{354}
}

func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsAnnounceaddrdiscoveredport) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsEncryptedhsm struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool   `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsEncryptedhsm) Reset() {
	*x = ListconfigsConfigsEncryptedhsm{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[355]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsEncryptedhsm) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsEncryptedhsm) ProtoMessage() {}

func (x *ListconfigsConfigsEncryptedhsm) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[355]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsEncryptedhsm.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsEncryptedhsm) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{355}
}

func (x *ListconfigsConfigsEncryptedhsm) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsEncryptedhsm) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsRpcfilemode struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsRpcfilemode) Reset() {
	*x = ListconfigsConfigsRpcfilemode{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[356]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsRpcfilemode) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsRpcfilemode) ProtoMessage() {}

func (x *ListconfigsConfigsRpcfilemode) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[356]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsRpcfilemode.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsRpcfilemode) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{356}
}

func (x *ListconfigsConfigsRpcfilemode) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsRpcfilemode) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsLoglevel struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsLoglevel) Reset() {
	*x = ListconfigsConfigsLoglevel{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[357]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsLoglevel) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsLoglevel) ProtoMessage() {}

func (x *ListconfigsConfigsLoglevel) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[357]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsLoglevel.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsLoglevel) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{357}
}

func (x *ListconfigsConfigsLoglevel) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsLoglevel) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsLogprefix struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsLogprefix) Reset() {
	*x = ListconfigsConfigsLogprefix{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[358]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsLogprefix) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsLogprefix) ProtoMessage() {}

func (x *ListconfigsConfigsLogprefix) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[358]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsLogprefix.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsLogprefix) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{358}
}

func (x *ListconfigsConfigsLogprefix) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsLogprefix) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsLogfile struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsLogfile) Reset() {
	*x = ListconfigsConfigsLogfile{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[359]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsLogfile) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsLogfile) ProtoMessage() {}

func (x *ListconfigsConfigsLogfile) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[359]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsLogfile.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsLogfile) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{359}
}

func (x *ListconfigsConfigsLogfile) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsLogfile) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsLogtimestamps struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueBool bool   `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
	Source    string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsLogtimestamps) Reset() {
	*x = ListconfigsConfigsLogtimestamps{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[360]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsLogtimestamps) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsLogtimestamps) ProtoMessage() {}

func (x *ListconfigsConfigsLogtimestamps) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[360]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsLogtimestamps.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsLogtimestamps) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{360}
}

func (x *ListconfigsConfigsLogtimestamps) GetValueBool() bool {
	if x != nil {
		return x.ValueBool
	}
	return false
}

func (x *ListconfigsConfigsLogtimestamps) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsForcefeerates struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsForcefeerates) Reset() {
	*x = ListconfigsConfigsForcefeerates{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[361]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsForcefeerates) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsForcefeerates) ProtoMessage() {}

func (x *ListconfigsConfigsForcefeerates) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[361]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsForcefeerates.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsForcefeerates) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{361}
}

func (x *ListconfigsConfigsForcefeerates) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsForcefeerates) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsSubdaemon struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValuesStr []string `protobuf:"bytes,1,rep,name=values_str,json=valuesStr,proto3" json:"values_str,omitempty"`
	Sources   []string `protobuf:"bytes,2,rep,name=sources,proto3" json:"sources,omitempty"`
}

func (x *ListconfigsConfigsSubdaemon) Reset() {
	*x = ListconfigsConfigsSubdaemon{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[362]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsSubdaemon) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsSubdaemon) ProtoMessage() {}

func (x *ListconfigsConfigsSubdaemon) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[362]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsSubdaemon.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsSubdaemon) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{362}
}

func (x *ListconfigsConfigsSubdaemon) GetValuesStr() []string {
	if x != nil {
		return x.ValuesStr
	}
	return nil
}

func (x *ListconfigsConfigsSubdaemon) GetSources() []string {
	if x != nil {
		return x.Sources
	}
	return nil
}

type ListconfigsConfigsFetchinvoicenoconnect struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Set    bool    `protobuf:"varint,1,opt,name=set,proto3" json:"set,omitempty"`
	Source string  `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
	Plugin *string `protobuf:"bytes,3,opt,name=plugin,proto3,oneof" json:"plugin,omitempty"`
}

func (x *ListconfigsConfigsFetchinvoicenoconnect) Reset() {
	*x = ListconfigsConfigsFetchinvoicenoconnect{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[363]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsFetchinvoicenoconnect) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsFetchinvoicenoconnect) ProtoMessage() {}

func (x *ListconfigsConfigsFetchinvoicenoconnect) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[363]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsFetchinvoicenoconnect.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsFetchinvoicenoconnect) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{363}
}

func (x *ListconfigsConfigsFetchinvoicenoconnect) GetSet() bool {
	if x != nil {
		return x.Set
	}
	return false
}

func (x *ListconfigsConfigsFetchinvoicenoconnect) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

func (x *ListconfigsConfigsFetchinvoicenoconnect) GetPlugin() string {
	if x != nil && x.Plugin != nil {
		return *x.Plugin
	}
	return ""
}

type ListconfigsConfigsAccepthtlctlvtypes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAccepthtlctlvtypes) Reset() {
	*x = ListconfigsConfigsAccepthtlctlvtypes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[364]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAccepthtlctlvtypes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAccepthtlctlvtypes) ProtoMessage() {}

func (x *ListconfigsConfigsAccepthtlctlvtypes) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[364]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAccepthtlctlvtypes.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAccepthtlctlvtypes) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{364}
}

func (x *ListconfigsConfigsAccepthtlctlvtypes) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsAccepthtlctlvtypes) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsTorservicepassword struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueStr string `protobuf:"bytes,1,opt,name=value_str,json=valueStr,proto3" json:"value_str,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsTorservicepassword) Reset() {
	*x = ListconfigsConfigsTorservicepassword{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[365]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsTorservicepassword) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsTorservicepassword) ProtoMessage() {}

func (x *ListconfigsConfigsTorservicepassword) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[365]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsTorservicepassword.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsTorservicepassword) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{365}
}

func (x *ListconfigsConfigsTorservicepassword) GetValueStr() string {
	if x != nil {
		return x.ValueStr
	}
	return ""
}

func (x *ListconfigsConfigsTorservicepassword) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsAnnounceaddrdns struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueBool bool   `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
	Source    string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAnnounceaddrdns) Reset() {
	*x = ListconfigsConfigsAnnounceaddrdns{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[366]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAnnounceaddrdns) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAnnounceaddrdns) ProtoMessage() {}

func (x *ListconfigsConfigsAnnounceaddrdns) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[366]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAnnounceaddrdns.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAnnounceaddrdns) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{366}
}

func (x *ListconfigsConfigsAnnounceaddrdns) GetValueBool() bool {
	if x != nil {
		return x.ValueBool
	}
	return false
}

func (x *ListconfigsConfigsAnnounceaddrdns) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsRequireconfirmedinputs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueBool bool   `protobuf:"varint,1,opt,name=value_bool,json=valueBool,proto3" json:"value_bool,omitempty"`
	Source    string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsRequireconfirmedinputs) Reset() {
	*x = ListconfigsConfigsRequireconfirmedinputs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[367]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsRequireconfirmedinputs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsRequireconfirmedinputs) ProtoMessage() {}

func (x *ListconfigsConfigsRequireconfirmedinputs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[367]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsRequireconfirmedinputs.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsRequireconfirmedinputs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{367}
}

func (x *ListconfigsConfigsRequireconfirmedinputs) GetValueBool() bool {
	if x != nil {
		return x.ValueBool
	}
	return false
}

func (x *ListconfigsConfigsRequireconfirmedinputs) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsCommitfee struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint64 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsCommitfee) Reset() {
	*x = ListconfigsConfigsCommitfee{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[368]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsCommitfee) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsCommitfee) ProtoMessage() {}

func (x *ListconfigsConfigsCommitfee) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[368]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsCommitfee.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsCommitfee) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{368}
}

func (x *ListconfigsConfigsCommitfee) GetValueInt() uint64 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsCommitfee) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsCommitfeerateoffset struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsCommitfeerateoffset) Reset() {
	*x = ListconfigsConfigsCommitfeerateoffset{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[369]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsCommitfeerateoffset) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsCommitfeerateoffset) ProtoMessage() {}

func (x *ListconfigsConfigsCommitfeerateoffset) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[369]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsCommitfeerateoffset.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsCommitfeerateoffset) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{369}
}

func (x *ListconfigsConfigsCommitfeerateoffset) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsCommitfeerateoffset) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsConfigsAutoconnectseekerpeers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ValueInt uint32 `protobuf:"varint,1,opt,name=value_int,json=valueInt,proto3" json:"value_int,omitempty"`
	Source   string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
}

func (x *ListconfigsConfigsAutoconnectseekerpeers) Reset() {
	*x = ListconfigsConfigsAutoconnectseekerpeers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[370]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsConfigsAutoconnectseekerpeers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsConfigsAutoconnectseekerpeers) ProtoMessage() {}

func (x *ListconfigsConfigsAutoconnectseekerpeers) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[370]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsConfigsAutoconnectseekerpeers.ProtoReflect.Descriptor instead.
func (*ListconfigsConfigsAutoconnectseekerpeers) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{370}
}

func (x *ListconfigsConfigsAutoconnectseekerpeers) GetValueInt() uint32 {
	if x != nil {
		return x.ValueInt
	}
	return 0
}

func (x *ListconfigsConfigsAutoconnectseekerpeers) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

type ListconfigsPlugins struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Path    string                     `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Name    string                     `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Options *ListconfigsPluginsOptions `protobuf:"bytes,3,opt,name=options,proto3,oneof" json:"options,omitempty"`
}

func (x *ListconfigsPlugins) Reset() {
	*x = ListconfigsPlugins{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[371]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsPlugins) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsPlugins) ProtoMessage() {}

func (x *ListconfigsPlugins) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[371]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsPlugins.ProtoReflect.Descriptor instead.
func (*ListconfigsPlugins) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{371}
}

func (x *ListconfigsPlugins) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

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

func (x *ListconfigsPlugins) GetOptions() *ListconfigsPluginsOptions {
	if x != nil {
		return x.Options
	}
	return nil
}

type ListconfigsPluginsOptions struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ListconfigsPluginsOptions) Reset() {
	*x = ListconfigsPluginsOptions{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[372]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsPluginsOptions) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsPluginsOptions) ProtoMessage() {}

func (x *ListconfigsPluginsOptions) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[372]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsPluginsOptions.ProtoReflect.Descriptor instead.
func (*ListconfigsPluginsOptions) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{372}
}

type ListconfigsImportantplugins struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Path    string                              `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Name    string                              `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Options *ListconfigsImportantpluginsOptions `protobuf:"bytes,3,opt,name=options,proto3,oneof" json:"options,omitempty"`
}

func (x *ListconfigsImportantplugins) Reset() {
	*x = ListconfigsImportantplugins{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[373]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsImportantplugins) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsImportantplugins) ProtoMessage() {}

func (x *ListconfigsImportantplugins) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[373]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsImportantplugins.ProtoReflect.Descriptor instead.
func (*ListconfigsImportantplugins) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{373}
}

func (x *ListconfigsImportantplugins) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

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

func (x *ListconfigsImportantplugins) GetOptions() *ListconfigsImportantpluginsOptions {
	if x != nil {
		return x.Options
	}
	return nil
}

type ListconfigsImportantpluginsOptions struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ListconfigsImportantpluginsOptions) Reset() {
	*x = ListconfigsImportantpluginsOptions{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[374]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ListconfigsImportantpluginsOptions) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListconfigsImportantpluginsOptions) ProtoMessage() {}

func (x *ListconfigsImportantpluginsOptions) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[374]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListconfigsImportantpluginsOptions.ProtoReflect.Descriptor instead.
func (*ListconfigsImportantpluginsOptions) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{374}
}

type StopRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StopRequest) Reset() {
	*x = StopRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[375]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StopRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StopRequest) ProtoMessage() {}

func (x *StopRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[375]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StopRequest.ProtoReflect.Descriptor instead.
func (*StopRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{375}
}

type StopResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Result *StopResponse_StopResult `protobuf:"varint,1,opt,name=result,proto3,enum=cln.StopResponse_StopResult,oneof" json:"result,omitempty"`
}

func (x *StopResponse) Reset() {
	*x = StopResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[376]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StopResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StopResponse) ProtoMessage() {}

func (x *StopResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[376]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StopResponse.ProtoReflect.Descriptor instead.
func (*StopResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{376}
}

func (x *StopResponse) GetResult() StopResponse_StopResult {
	if x != nil && x.Result != nil {
		return *x.Result
	}
	return StopResponse_SHUTDOWN_COMPLETE
}

type HelpRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Command *string `protobuf:"bytes,1,opt,name=command,proto3,oneof" json:"command,omitempty"`
}

func (x *HelpRequest) Reset() {
	*x = HelpRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[377]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *HelpRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*HelpRequest) ProtoMessage() {}

func (x *HelpRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[377]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use HelpRequest.ProtoReflect.Descriptor instead.
func (*HelpRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{377}
}

func (x *HelpRequest) GetCommand() string {
	if x != nil && x.Command != nil {
		return *x.Command
	}
	return ""
}

type HelpResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Help       []*HelpHelp                  `protobuf:"bytes,1,rep,name=help,proto3" json:"help,omitempty"`
	FormatHint *HelpResponse_HelpFormathint `protobuf:"varint,2,opt,name=format_hint,json=formatHint,proto3,enum=cln.HelpResponse_HelpFormathint,oneof" json:"format_hint,omitempty"`
}

func (x *HelpResponse) Reset() {
	*x = HelpResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[378]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *HelpResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*HelpResponse) ProtoMessage() {}

func (x *HelpResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[378]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use HelpResponse.ProtoReflect.Descriptor instead.
func (*HelpResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{378}
}

func (x *HelpResponse) GetHelp() []*HelpHelp {
	if x != nil {
		return x.Help
	}
	return nil
}

func (x *HelpResponse) GetFormatHint() HelpResponse_HelpFormathint {
	if x != nil && x.FormatHint != nil {
		return *x.FormatHint
	}
	return HelpResponse_SIMPLE
}

type HelpHelp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Command string `protobuf:"bytes,1,opt,name=command,proto3" json:"command,omitempty"`
}

func (x *HelpHelp) Reset() {
	*x = HelpHelp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[379]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *HelpHelp) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*HelpHelp) ProtoMessage() {}

func (x *HelpHelp) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[379]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use HelpHelp.ProtoReflect.Descriptor instead.
func (*HelpHelp) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{379}
}

func (x *HelpHelp) GetCommand() string {
	if x != nil {
		return x.Command
	}
	return ""
}

type PreapprovekeysendRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Destination []byte  `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	PaymentHash []byte  `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	AmountMsat  *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
}

func (x *PreapprovekeysendRequest) Reset() {
	*x = PreapprovekeysendRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[380]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PreapprovekeysendRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PreapprovekeysendRequest) ProtoMessage() {}

func (x *PreapprovekeysendRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[380]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PreapprovekeysendRequest.ProtoReflect.Descriptor instead.
func (*PreapprovekeysendRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{380}
}

func (x *PreapprovekeysendRequest) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *PreapprovekeysendRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *PreapprovekeysendRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

type PreapprovekeysendResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *PreapprovekeysendResponse) Reset() {
	*x = PreapprovekeysendResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[381]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PreapprovekeysendResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PreapprovekeysendResponse) ProtoMessage() {}

func (x *PreapprovekeysendResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[381]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PreapprovekeysendResponse.ProtoReflect.Descriptor instead.
func (*PreapprovekeysendResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{381}
}

type PreapproveinvoiceRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Bolt11 string `protobuf:"bytes,1,opt,name=bolt11,proto3" json:"bolt11,omitempty"`
}

func (x *PreapproveinvoiceRequest) Reset() {
	*x = PreapproveinvoiceRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[382]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PreapproveinvoiceRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PreapproveinvoiceRequest) ProtoMessage() {}

func (x *PreapproveinvoiceRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[382]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PreapproveinvoiceRequest.ProtoReflect.Descriptor instead.
func (*PreapproveinvoiceRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{382}
}

func (x *PreapproveinvoiceRequest) GetBolt11() string {
	if x != nil {
		return x.Bolt11
	}
	return ""
}

type PreapproveinvoiceResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *PreapproveinvoiceResponse) Reset() {
	*x = PreapproveinvoiceResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[383]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PreapproveinvoiceResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PreapproveinvoiceResponse) ProtoMessage() {}

func (x *PreapproveinvoiceResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[383]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PreapproveinvoiceResponse.ProtoReflect.Descriptor instead.
func (*PreapproveinvoiceResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{383}
}

type StaticbackupRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StaticbackupRequest) Reset() {
	*x = StaticbackupRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[384]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StaticbackupRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StaticbackupRequest) ProtoMessage() {}

func (x *StaticbackupRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[384]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StaticbackupRequest.ProtoReflect.Descriptor instead.
func (*StaticbackupRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{384}
}

type StaticbackupResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Scb [][]byte `protobuf:"bytes,1,rep,name=scb,proto3" json:"scb,omitempty"`
}

func (x *StaticbackupResponse) Reset() {
	*x = StaticbackupResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[385]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StaticbackupResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StaticbackupResponse) ProtoMessage() {}

func (x *StaticbackupResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[385]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StaticbackupResponse.ProtoReflect.Descriptor instead.
func (*StaticbackupResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{385}
}

func (x *StaticbackupResponse) GetScb() [][]byte {
	if x != nil {
		return x.Scb
	}
	return nil
}

type BkprchannelsapyRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	StartTime *uint64 `protobuf:"varint,1,opt,name=start_time,json=startTime,proto3,oneof" json:"start_time,omitempty"`
	EndTime   *uint64 `protobuf:"varint,2,opt,name=end_time,json=endTime,proto3,oneof" json:"end_time,omitempty"`
}

func (x *BkprchannelsapyRequest) Reset() {
	*x = BkprchannelsapyRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[386]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprchannelsapyRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprchannelsapyRequest) ProtoMessage() {}

func (x *BkprchannelsapyRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[386]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprchannelsapyRequest.ProtoReflect.Descriptor instead.
func (*BkprchannelsapyRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{386}
}

func (x *BkprchannelsapyRequest) GetStartTime() uint64 {
	if x != nil && x.StartTime != nil {
		return *x.StartTime
	}
	return 0
}

func (x *BkprchannelsapyRequest) GetEndTime() uint64 {
	if x != nil && x.EndTime != nil {
		return *x.EndTime
	}
	return 0
}

type BkprchannelsapyResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelsApy []*BkprchannelsapyChannelsApy `protobuf:"bytes,1,rep,name=channels_apy,json=channelsApy,proto3" json:"channels_apy,omitempty"`
}

func (x *BkprchannelsapyResponse) Reset() {
	*x = BkprchannelsapyResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[387]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprchannelsapyResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprchannelsapyResponse) ProtoMessage() {}

func (x *BkprchannelsapyResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[387]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprchannelsapyResponse.ProtoReflect.Descriptor instead.
func (*BkprchannelsapyResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{387}
}

func (x *BkprchannelsapyResponse) GetChannelsApy() []*BkprchannelsapyChannelsApy {
	if x != nil {
		return x.ChannelsApy
	}
	return nil
}

type BkprchannelsapyChannelsApy struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account                 string  `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
	RoutedOutMsat           *Amount `protobuf:"bytes,2,opt,name=routed_out_msat,json=routedOutMsat,proto3" json:"routed_out_msat,omitempty"`
	RoutedInMsat            *Amount `protobuf:"bytes,3,opt,name=routed_in_msat,json=routedInMsat,proto3" json:"routed_in_msat,omitempty"`
	LeaseFeePaidMsat        *Amount `protobuf:"bytes,4,opt,name=lease_fee_paid_msat,json=leaseFeePaidMsat,proto3" json:"lease_fee_paid_msat,omitempty"`
	LeaseFeeEarnedMsat      *Amount `protobuf:"bytes,5,opt,name=lease_fee_earned_msat,json=leaseFeeEarnedMsat,proto3" json:"lease_fee_earned_msat,omitempty"`
	PushedOutMsat           *Amount `protobuf:"bytes,6,opt,name=pushed_out_msat,json=pushedOutMsat,proto3" json:"pushed_out_msat,omitempty"`
	PushedInMsat            *Amount `protobuf:"bytes,7,opt,name=pushed_in_msat,json=pushedInMsat,proto3" json:"pushed_in_msat,omitempty"`
	OurStartBalanceMsat     *Amount `protobuf:"bytes,8,opt,name=our_start_balance_msat,json=ourStartBalanceMsat,proto3" json:"our_start_balance_msat,omitempty"`
	ChannelStartBalanceMsat *Amount `protobuf:"bytes,9,opt,name=channel_start_balance_msat,json=channelStartBalanceMsat,proto3" json:"channel_start_balance_msat,omitempty"`
	FeesOutMsat             *Amount `protobuf:"bytes,10,opt,name=fees_out_msat,json=feesOutMsat,proto3" json:"fees_out_msat,omitempty"`
	FeesInMsat              *Amount `protobuf:"bytes,11,opt,name=fees_in_msat,json=feesInMsat,proto3,oneof" json:"fees_in_msat,omitempty"`
	UtilizationOut          string  `protobuf:"bytes,12,opt,name=utilization_out,json=utilizationOut,proto3" json:"utilization_out,omitempty"`
	UtilizationOutInitial   *string `protobuf:"bytes,13,opt,name=utilization_out_initial,json=utilizationOutInitial,proto3,oneof" json:"utilization_out_initial,omitempty"`
	UtilizationIn           string  `protobuf:"bytes,14,opt,name=utilization_in,json=utilizationIn,proto3" json:"utilization_in,omitempty"`
	UtilizationInInitial    *string `protobuf:"bytes,15,opt,name=utilization_in_initial,json=utilizationInInitial,proto3,oneof" json:"utilization_in_initial,omitempty"`
	ApyOut                  string  `protobuf:"bytes,16,opt,name=apy_out,json=apyOut,proto3" json:"apy_out,omitempty"`
	ApyOutInitial           *string `protobuf:"bytes,17,opt,name=apy_out_initial,json=apyOutInitial,proto3,oneof" json:"apy_out_initial,omitempty"`
	ApyIn                   string  `protobuf:"bytes,18,opt,name=apy_in,json=apyIn,proto3" json:"apy_in,omitempty"`
	ApyInInitial            *string `protobuf:"bytes,19,opt,name=apy_in_initial,json=apyInInitial,proto3,oneof" json:"apy_in_initial,omitempty"`
	ApyTotal                string  `protobuf:"bytes,20,opt,name=apy_total,json=apyTotal,proto3" json:"apy_total,omitempty"`
	ApyTotalInitial         *string `protobuf:"bytes,21,opt,name=apy_total_initial,json=apyTotalInitial,proto3,oneof" json:"apy_total_initial,omitempty"`
	ApyLease                *string `protobuf:"bytes,22,opt,name=apy_lease,json=apyLease,proto3,oneof" json:"apy_lease,omitempty"`
}

func (x *BkprchannelsapyChannelsApy) Reset() {
	*x = BkprchannelsapyChannelsApy{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[388]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprchannelsapyChannelsApy) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprchannelsapyChannelsApy) ProtoMessage() {}

func (x *BkprchannelsapyChannelsApy) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[388]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprchannelsapyChannelsApy.ProtoReflect.Descriptor instead.
func (*BkprchannelsapyChannelsApy) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{388}
}

func (x *BkprchannelsapyChannelsApy) GetAccount() string {
	if x != nil {
		return x.Account
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetRoutedOutMsat() *Amount {
	if x != nil {
		return x.RoutedOutMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetRoutedInMsat() *Amount {
	if x != nil {
		return x.RoutedInMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetLeaseFeePaidMsat() *Amount {
	if x != nil {
		return x.LeaseFeePaidMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetLeaseFeeEarnedMsat() *Amount {
	if x != nil {
		return x.LeaseFeeEarnedMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetPushedOutMsat() *Amount {
	if x != nil {
		return x.PushedOutMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetPushedInMsat() *Amount {
	if x != nil {
		return x.PushedInMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetOurStartBalanceMsat() *Amount {
	if x != nil {
		return x.OurStartBalanceMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetChannelStartBalanceMsat() *Amount {
	if x != nil {
		return x.ChannelStartBalanceMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetFeesOutMsat() *Amount {
	if x != nil {
		return x.FeesOutMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetFeesInMsat() *Amount {
	if x != nil {
		return x.FeesInMsat
	}
	return nil
}

func (x *BkprchannelsapyChannelsApy) GetUtilizationOut() string {
	if x != nil {
		return x.UtilizationOut
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetUtilizationOutInitial() string {
	if x != nil && x.UtilizationOutInitial != nil {
		return *x.UtilizationOutInitial
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetUtilizationIn() string {
	if x != nil {
		return x.UtilizationIn
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetUtilizationInInitial() string {
	if x != nil && x.UtilizationInInitial != nil {
		return *x.UtilizationInInitial
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetApyOut() string {
	if x != nil {
		return x.ApyOut
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetApyOutInitial() string {
	if x != nil && x.ApyOutInitial != nil {
		return *x.ApyOutInitial
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetApyIn() string {
	if x != nil {
		return x.ApyIn
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetApyInInitial() string {
	if x != nil && x.ApyInInitial != nil {
		return *x.ApyInInitial
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetApyTotal() string {
	if x != nil {
		return x.ApyTotal
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetApyTotalInitial() string {
	if x != nil && x.ApyTotalInitial != nil {
		return *x.ApyTotalInitial
	}
	return ""
}

func (x *BkprchannelsapyChannelsApy) GetApyLease() string {
	if x != nil && x.ApyLease != nil {
		return *x.ApyLease
	}
	return ""
}

type BkprdumpincomecsvRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CsvFormat       string  `protobuf:"bytes,1,opt,name=csv_format,json=csvFormat,proto3" json:"csv_format,omitempty"`
	CsvFile         *string `protobuf:"bytes,2,opt,name=csv_file,json=csvFile,proto3,oneof" json:"csv_file,omitempty"`
	ConsolidateFees *bool   `protobuf:"varint,3,opt,name=consolidate_fees,json=consolidateFees,proto3,oneof" json:"consolidate_fees,omitempty"`
	StartTime       *uint64 `protobuf:"varint,4,opt,name=start_time,json=startTime,proto3,oneof" json:"start_time,omitempty"`
	EndTime         *uint64 `protobuf:"varint,5,opt,name=end_time,json=endTime,proto3,oneof" json:"end_time,omitempty"`
}

func (x *BkprdumpincomecsvRequest) Reset() {
	*x = BkprdumpincomecsvRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[389]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprdumpincomecsvRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprdumpincomecsvRequest) ProtoMessage() {}

func (x *BkprdumpincomecsvRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[389]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprdumpincomecsvRequest.ProtoReflect.Descriptor instead.
func (*BkprdumpincomecsvRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{389}
}

func (x *BkprdumpincomecsvRequest) GetCsvFormat() string {
	if x != nil {
		return x.CsvFormat
	}
	return ""
}

func (x *BkprdumpincomecsvRequest) GetCsvFile() string {
	if x != nil && x.CsvFile != nil {
		return *x.CsvFile
	}
	return ""
}

func (x *BkprdumpincomecsvRequest) GetConsolidateFees() bool {
	if x != nil && x.ConsolidateFees != nil {
		return *x.ConsolidateFees
	}
	return false
}

func (x *BkprdumpincomecsvRequest) GetStartTime() uint64 {
	if x != nil && x.StartTime != nil {
		return *x.StartTime
	}
	return 0
}

func (x *BkprdumpincomecsvRequest) GetEndTime() uint64 {
	if x != nil && x.EndTime != nil {
		return *x.EndTime
	}
	return 0
}

type BkprdumpincomecsvResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CsvFile   string                                               `protobuf:"bytes,1,opt,name=csv_file,json=csvFile,proto3" json:"csv_file,omitempty"`
	CsvFormat BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat `protobuf:"varint,2,opt,name=csv_format,json=csvFormat,proto3,enum=cln.BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat" json:"csv_format,omitempty"`
}

func (x *BkprdumpincomecsvResponse) Reset() {
	*x = BkprdumpincomecsvResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[390]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprdumpincomecsvResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprdumpincomecsvResponse) ProtoMessage() {}

func (x *BkprdumpincomecsvResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[390]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprdumpincomecsvResponse.ProtoReflect.Descriptor instead.
func (*BkprdumpincomecsvResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{390}
}

func (x *BkprdumpincomecsvResponse) GetCsvFile() string {
	if x != nil {
		return x.CsvFile
	}
	return ""
}

func (x *BkprdumpincomecsvResponse) GetCsvFormat() BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat {
	if x != nil {
		return x.CsvFormat
	}
	return BkprdumpincomecsvResponse_COINTRACKER
}

type BkprinspectRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
}

func (x *BkprinspectRequest) Reset() {
	*x = BkprinspectRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[391]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprinspectRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprinspectRequest) ProtoMessage() {}

func (x *BkprinspectRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[391]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprinspectRequest.ProtoReflect.Descriptor instead.
func (*BkprinspectRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{391}
}

func (x *BkprinspectRequest) GetAccount() string {
	if x != nil {
		return x.Account
	}
	return ""
}

type BkprinspectResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txs []*BkprinspectTxs `protobuf:"bytes,1,rep,name=txs,proto3" json:"txs,omitempty"`
}

func (x *BkprinspectResponse) Reset() {
	*x = BkprinspectResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[392]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprinspectResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprinspectResponse) ProtoMessage() {}

func (x *BkprinspectResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[392]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprinspectResponse.ProtoReflect.Descriptor instead.
func (*BkprinspectResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{392}
}

func (x *BkprinspectResponse) GetTxs() []*BkprinspectTxs {
	if x != nil {
		return x.Txs
	}
	return nil
}

type BkprinspectTxs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Txid         []byte                   `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	Blockheight  *uint32                  `protobuf:"varint,2,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
	FeesPaidMsat *Amount                  `protobuf:"bytes,3,opt,name=fees_paid_msat,json=feesPaidMsat,proto3" json:"fees_paid_msat,omitempty"`
	Outputs      []*BkprinspectTxsOutputs `protobuf:"bytes,4,rep,name=outputs,proto3" json:"outputs,omitempty"`
}

func (x *BkprinspectTxs) Reset() {
	*x = BkprinspectTxs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[393]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprinspectTxs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprinspectTxs) ProtoMessage() {}

func (x *BkprinspectTxs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[393]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprinspectTxs.ProtoReflect.Descriptor instead.
func (*BkprinspectTxs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{393}
}

func (x *BkprinspectTxs) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *BkprinspectTxs) GetBlockheight() uint32 {
	if x != nil && x.Blockheight != nil {
		return *x.Blockheight
	}
	return 0
}

func (x *BkprinspectTxs) GetFeesPaidMsat() *Amount {
	if x != nil {
		return x.FeesPaidMsat
	}
	return nil
}

func (x *BkprinspectTxs) GetOutputs() []*BkprinspectTxsOutputs {
	if x != nil {
		return x.Outputs
	}
	return nil
}

type BkprinspectTxsOutputs struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account            string  `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
	Outnum             uint32  `protobuf:"varint,2,opt,name=outnum,proto3" json:"outnum,omitempty"`
	OutputValueMsat    *Amount `protobuf:"bytes,3,opt,name=output_value_msat,json=outputValueMsat,proto3" json:"output_value_msat,omitempty"`
	Currency           string  `protobuf:"bytes,4,opt,name=currency,proto3" json:"currency,omitempty"`
	CreditMsat         *Amount `protobuf:"bytes,5,opt,name=credit_msat,json=creditMsat,proto3,oneof" json:"credit_msat,omitempty"`
	DebitMsat          *Amount `protobuf:"bytes,6,opt,name=debit_msat,json=debitMsat,proto3,oneof" json:"debit_msat,omitempty"`
	OriginatingAccount *string `protobuf:"bytes,7,opt,name=originating_account,json=originatingAccount,proto3,oneof" json:"originating_account,omitempty"`
	OutputTag          *string `protobuf:"bytes,8,opt,name=output_tag,json=outputTag,proto3,oneof" json:"output_tag,omitempty"`
	SpendTag           *string `protobuf:"bytes,9,opt,name=spend_tag,json=spendTag,proto3,oneof" json:"spend_tag,omitempty"`
	SpendingTxid       []byte  `protobuf:"bytes,10,opt,name=spending_txid,json=spendingTxid,proto3,oneof" json:"spending_txid,omitempty"`
	PaymentId          []byte  `protobuf:"bytes,11,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
}

func (x *BkprinspectTxsOutputs) Reset() {
	*x = BkprinspectTxsOutputs{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[394]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprinspectTxsOutputs) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprinspectTxsOutputs) ProtoMessage() {}

func (x *BkprinspectTxsOutputs) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[394]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprinspectTxsOutputs.ProtoReflect.Descriptor instead.
func (*BkprinspectTxsOutputs) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{394}
}

func (x *BkprinspectTxsOutputs) GetAccount() string {
	if x != nil {
		return x.Account
	}
	return ""
}

func (x *BkprinspectTxsOutputs) GetOutnum() uint32 {
	if x != nil {
		return x.Outnum
	}
	return 0
}

func (x *BkprinspectTxsOutputs) GetOutputValueMsat() *Amount {
	if x != nil {
		return x.OutputValueMsat
	}
	return nil
}

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

func (x *BkprinspectTxsOutputs) GetCreditMsat() *Amount {
	if x != nil {
		return x.CreditMsat
	}
	return nil
}

func (x *BkprinspectTxsOutputs) GetDebitMsat() *Amount {
	if x != nil {
		return x.DebitMsat
	}
	return nil
}

func (x *BkprinspectTxsOutputs) GetOriginatingAccount() string {
	if x != nil && x.OriginatingAccount != nil {
		return *x.OriginatingAccount
	}
	return ""
}

func (x *BkprinspectTxsOutputs) GetOutputTag() string {
	if x != nil && x.OutputTag != nil {
		return *x.OutputTag
	}
	return ""
}

func (x *BkprinspectTxsOutputs) GetSpendTag() string {
	if x != nil && x.SpendTag != nil {
		return *x.SpendTag
	}
	return ""
}

func (x *BkprinspectTxsOutputs) GetSpendingTxid() []byte {
	if x != nil {
		return x.SpendingTxid
	}
	return nil
}

func (x *BkprinspectTxsOutputs) GetPaymentId() []byte {
	if x != nil {
		return x.PaymentId
	}
	return nil
}

type BkprlistaccounteventsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account   *string `protobuf:"bytes,1,opt,name=account,proto3,oneof" json:"account,omitempty"`
	PaymentId *string `protobuf:"bytes,2,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
}

func (x *BkprlistaccounteventsRequest) Reset() {
	*x = BkprlistaccounteventsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[395]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistaccounteventsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistaccounteventsRequest) ProtoMessage() {}

func (x *BkprlistaccounteventsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[395]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistaccounteventsRequest.ProtoReflect.Descriptor instead.
func (*BkprlistaccounteventsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{395}
}

func (x *BkprlistaccounteventsRequest) GetAccount() string {
	if x != nil && x.Account != nil {
		return *x.Account
	}
	return ""
}

func (x *BkprlistaccounteventsRequest) GetPaymentId() string {
	if x != nil && x.PaymentId != nil {
		return *x.PaymentId
	}
	return ""
}

type BkprlistaccounteventsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Events []*BkprlistaccounteventsEvents `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"`
}

func (x *BkprlistaccounteventsResponse) Reset() {
	*x = BkprlistaccounteventsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[396]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistaccounteventsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistaccounteventsResponse) ProtoMessage() {}

func (x *BkprlistaccounteventsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[396]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistaccounteventsResponse.ProtoReflect.Descriptor instead.
func (*BkprlistaccounteventsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{396}
}

func (x *BkprlistaccounteventsResponse) GetEvents() []*BkprlistaccounteventsEvents {
	if x != nil {
		return x.Events
	}
	return nil
}

type BkprlistaccounteventsEvents struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account     string                                                      `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
	ItemType    BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType `protobuf:"varint,2,opt,name=item_type,json=itemType,proto3,enum=cln.BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType" json:"item_type,omitempty"`
	Tag         string                                                      `protobuf:"bytes,3,opt,name=tag,proto3" json:"tag,omitempty"`
	CreditMsat  *Amount                                                     `protobuf:"bytes,4,opt,name=credit_msat,json=creditMsat,proto3" json:"credit_msat,omitempty"`
	DebitMsat   *Amount                                                     `protobuf:"bytes,5,opt,name=debit_msat,json=debitMsat,proto3" json:"debit_msat,omitempty"`
	Currency    string                                                      `protobuf:"bytes,6,opt,name=currency,proto3" json:"currency,omitempty"`
	Timestamp   uint32                                                      `protobuf:"varint,7,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Outpoint    *string                                                     `protobuf:"bytes,8,opt,name=outpoint,proto3,oneof" json:"outpoint,omitempty"`
	Blockheight *uint32                                                     `protobuf:"varint,9,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
	Origin      *string                                                     `protobuf:"bytes,10,opt,name=origin,proto3,oneof" json:"origin,omitempty"`
	PaymentId   []byte                                                      `protobuf:"bytes,11,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
	Txid        []byte                                                      `protobuf:"bytes,12,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
	Description *string                                                     `protobuf:"bytes,13,opt,name=description,proto3,oneof" json:"description,omitempty"`
	FeesMsat    *Amount                                                     `protobuf:"bytes,14,opt,name=fees_msat,json=feesMsat,proto3,oneof" json:"fees_msat,omitempty"`
	IsRebalance *bool                                                       `protobuf:"varint,15,opt,name=is_rebalance,json=isRebalance,proto3,oneof" json:"is_rebalance,omitempty"`
	PartId      *uint32                                                     `protobuf:"varint,16,opt,name=part_id,json=partId,proto3,oneof" json:"part_id,omitempty"`
}

func (x *BkprlistaccounteventsEvents) Reset() {
	*x = BkprlistaccounteventsEvents{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[397]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistaccounteventsEvents) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistaccounteventsEvents) ProtoMessage() {}

func (x *BkprlistaccounteventsEvents) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[397]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistaccounteventsEvents.ProtoReflect.Descriptor instead.
func (*BkprlistaccounteventsEvents) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{397}
}

func (x *BkprlistaccounteventsEvents) GetAccount() string {
	if x != nil {
		return x.Account
	}
	return ""
}

func (x *BkprlistaccounteventsEvents) GetItemType() BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType {
	if x != nil {
		return x.ItemType
	}
	return BkprlistaccounteventsEvents_ONCHAIN_FEE
}

func (x *BkprlistaccounteventsEvents) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *BkprlistaccounteventsEvents) GetCreditMsat() *Amount {
	if x != nil {
		return x.CreditMsat
	}
	return nil
}

func (x *BkprlistaccounteventsEvents) GetDebitMsat() *Amount {
	if x != nil {
		return x.DebitMsat
	}
	return nil
}

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

func (x *BkprlistaccounteventsEvents) GetTimestamp() uint32 {
	if x != nil {
		return x.Timestamp
	}
	return 0
}

func (x *BkprlistaccounteventsEvents) GetOutpoint() string {
	if x != nil && x.Outpoint != nil {
		return *x.Outpoint
	}
	return ""
}

func (x *BkprlistaccounteventsEvents) GetBlockheight() uint32 {
	if x != nil && x.Blockheight != nil {
		return *x.Blockheight
	}
	return 0
}

func (x *BkprlistaccounteventsEvents) GetOrigin() string {
	if x != nil && x.Origin != nil {
		return *x.Origin
	}
	return ""
}

func (x *BkprlistaccounteventsEvents) GetPaymentId() []byte {
	if x != nil {
		return x.PaymentId
	}
	return nil
}

func (x *BkprlistaccounteventsEvents) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *BkprlistaccounteventsEvents) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *BkprlistaccounteventsEvents) GetFeesMsat() *Amount {
	if x != nil {
		return x.FeesMsat
	}
	return nil
}

func (x *BkprlistaccounteventsEvents) GetIsRebalance() bool {
	if x != nil && x.IsRebalance != nil {
		return *x.IsRebalance
	}
	return false
}

func (x *BkprlistaccounteventsEvents) GetPartId() uint32 {
	if x != nil && x.PartId != nil {
		return *x.PartId
	}
	return 0
}

type BkprlistbalancesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *BkprlistbalancesRequest) Reset() {
	*x = BkprlistbalancesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[398]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistbalancesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistbalancesRequest) ProtoMessage() {}

func (x *BkprlistbalancesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[398]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistbalancesRequest.ProtoReflect.Descriptor instead.
func (*BkprlistbalancesRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{398}
}

type BkprlistbalancesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Accounts []*BkprlistbalancesAccounts `protobuf:"bytes,1,rep,name=accounts,proto3" json:"accounts,omitempty"`
}

func (x *BkprlistbalancesResponse) Reset() {
	*x = BkprlistbalancesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[399]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistbalancesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistbalancesResponse) ProtoMessage() {}

func (x *BkprlistbalancesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[399]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistbalancesResponse.ProtoReflect.Descriptor instead.
func (*BkprlistbalancesResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{399}
}

func (x *BkprlistbalancesResponse) GetAccounts() []*BkprlistbalancesAccounts {
	if x != nil {
		return x.Accounts
	}
	return nil
}

type BkprlistbalancesAccounts struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account         string                              `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
	Balances        []*BkprlistbalancesAccountsBalances `protobuf:"bytes,2,rep,name=balances,proto3" json:"balances,omitempty"`
	PeerId          []byte                              `protobuf:"bytes,3,opt,name=peer_id,json=peerId,proto3,oneof" json:"peer_id,omitempty"`
	WeOpened        *bool                               `protobuf:"varint,4,opt,name=we_opened,json=weOpened,proto3,oneof" json:"we_opened,omitempty"`
	AccountClosed   *bool                               `protobuf:"varint,5,opt,name=account_closed,json=accountClosed,proto3,oneof" json:"account_closed,omitempty"`
	AccountResolved *bool                               `protobuf:"varint,6,opt,name=account_resolved,json=accountResolved,proto3,oneof" json:"account_resolved,omitempty"`
	ResolvedAtBlock *uint32                             `protobuf:"varint,7,opt,name=resolved_at_block,json=resolvedAtBlock,proto3,oneof" json:"resolved_at_block,omitempty"`
}

func (x *BkprlistbalancesAccounts) Reset() {
	*x = BkprlistbalancesAccounts{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[400]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistbalancesAccounts) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistbalancesAccounts) ProtoMessage() {}

func (x *BkprlistbalancesAccounts) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[400]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistbalancesAccounts.ProtoReflect.Descriptor instead.
func (*BkprlistbalancesAccounts) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{400}
}

func (x *BkprlistbalancesAccounts) GetAccount() string {
	if x != nil {
		return x.Account
	}
	return ""
}

func (x *BkprlistbalancesAccounts) GetBalances() []*BkprlistbalancesAccountsBalances {
	if x != nil {
		return x.Balances
	}
	return nil
}

func (x *BkprlistbalancesAccounts) GetPeerId() []byte {
	if x != nil {
		return x.PeerId
	}
	return nil
}

func (x *BkprlistbalancesAccounts) GetWeOpened() bool {
	if x != nil && x.WeOpened != nil {
		return *x.WeOpened
	}
	return false
}

func (x *BkprlistbalancesAccounts) GetAccountClosed() bool {
	if x != nil && x.AccountClosed != nil {
		return *x.AccountClosed
	}
	return false
}

func (x *BkprlistbalancesAccounts) GetAccountResolved() bool {
	if x != nil && x.AccountResolved != nil {
		return *x.AccountResolved
	}
	return false
}

func (x *BkprlistbalancesAccounts) GetResolvedAtBlock() uint32 {
	if x != nil && x.ResolvedAtBlock != nil {
		return *x.ResolvedAtBlock
	}
	return 0
}

type BkprlistbalancesAccountsBalances struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	BalanceMsat *Amount `protobuf:"bytes,1,opt,name=balance_msat,json=balanceMsat,proto3" json:"balance_msat,omitempty"`
	CoinType    string  `protobuf:"bytes,2,opt,name=coin_type,json=coinType,proto3" json:"coin_type,omitempty"`
}

func (x *BkprlistbalancesAccountsBalances) Reset() {
	*x = BkprlistbalancesAccountsBalances{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[401]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistbalancesAccountsBalances) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistbalancesAccountsBalances) ProtoMessage() {}

func (x *BkprlistbalancesAccountsBalances) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[401]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistbalancesAccountsBalances.ProtoReflect.Descriptor instead.
func (*BkprlistbalancesAccountsBalances) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{401}
}

func (x *BkprlistbalancesAccountsBalances) GetBalanceMsat() *Amount {
	if x != nil {
		return x.BalanceMsat
	}
	return nil
}

func (x *BkprlistbalancesAccountsBalances) GetCoinType() string {
	if x != nil {
		return x.CoinType
	}
	return ""
}

type BkprlistincomeRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ConsolidateFees *bool   `protobuf:"varint,1,opt,name=consolidate_fees,json=consolidateFees,proto3,oneof" json:"consolidate_fees,omitempty"`
	StartTime       *uint32 `protobuf:"varint,2,opt,name=start_time,json=startTime,proto3,oneof" json:"start_time,omitempty"`
	EndTime         *uint32 `protobuf:"varint,3,opt,name=end_time,json=endTime,proto3,oneof" json:"end_time,omitempty"`
}

func (x *BkprlistincomeRequest) Reset() {
	*x = BkprlistincomeRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[402]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistincomeRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistincomeRequest) ProtoMessage() {}

func (x *BkprlistincomeRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[402]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistincomeRequest.ProtoReflect.Descriptor instead.
func (*BkprlistincomeRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{402}
}

func (x *BkprlistincomeRequest) GetConsolidateFees() bool {
	if x != nil && x.ConsolidateFees != nil {
		return *x.ConsolidateFees
	}
	return false
}

func (x *BkprlistincomeRequest) GetStartTime() uint32 {
	if x != nil && x.StartTime != nil {
		return *x.StartTime
	}
	return 0
}

func (x *BkprlistincomeRequest) GetEndTime() uint32 {
	if x != nil && x.EndTime != nil {
		return *x.EndTime
	}
	return 0
}

type BkprlistincomeResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IncomeEvents []*BkprlistincomeIncomeEvents `protobuf:"bytes,1,rep,name=income_events,json=incomeEvents,proto3" json:"income_events,omitempty"`
}

func (x *BkprlistincomeResponse) Reset() {
	*x = BkprlistincomeResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[403]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistincomeResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistincomeResponse) ProtoMessage() {}

func (x *BkprlistincomeResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[403]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistincomeResponse.ProtoReflect.Descriptor instead.
func (*BkprlistincomeResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{403}
}

func (x *BkprlistincomeResponse) GetIncomeEvents() []*BkprlistincomeIncomeEvents {
	if x != nil {
		return x.IncomeEvents
	}
	return nil
}

type BkprlistincomeIncomeEvents struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account     string  `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
	Tag         string  `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"`
	CreditMsat  *Amount `protobuf:"bytes,3,opt,name=credit_msat,json=creditMsat,proto3" json:"credit_msat,omitempty"`
	DebitMsat   *Amount `protobuf:"bytes,4,opt,name=debit_msat,json=debitMsat,proto3" json:"debit_msat,omitempty"`
	Currency    string  `protobuf:"bytes,5,opt,name=currency,proto3" json:"currency,omitempty"`
	Timestamp   uint32  `protobuf:"varint,6,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Description *string `protobuf:"bytes,7,opt,name=description,proto3,oneof" json:"description,omitempty"`
	Outpoint    *string `protobuf:"bytes,8,opt,name=outpoint,proto3,oneof" json:"outpoint,omitempty"`
	Txid        []byte  `protobuf:"bytes,9,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
	PaymentId   []byte  `protobuf:"bytes,10,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
}

func (x *BkprlistincomeIncomeEvents) Reset() {
	*x = BkprlistincomeIncomeEvents{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[404]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkprlistincomeIncomeEvents) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkprlistincomeIncomeEvents) ProtoMessage() {}

func (x *BkprlistincomeIncomeEvents) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[404]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkprlistincomeIncomeEvents.ProtoReflect.Descriptor instead.
func (*BkprlistincomeIncomeEvents) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{404}
}

func (x *BkprlistincomeIncomeEvents) GetAccount() string {
	if x != nil {
		return x.Account
	}
	return ""
}

func (x *BkprlistincomeIncomeEvents) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *BkprlistincomeIncomeEvents) GetCreditMsat() *Amount {
	if x != nil {
		return x.CreditMsat
	}
	return nil
}

func (x *BkprlistincomeIncomeEvents) GetDebitMsat() *Amount {
	if x != nil {
		return x.DebitMsat
	}
	return nil
}

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

func (x *BkprlistincomeIncomeEvents) GetTimestamp() uint32 {
	if x != nil {
		return x.Timestamp
	}
	return 0
}

func (x *BkprlistincomeIncomeEvents) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

func (x *BkprlistincomeIncomeEvents) GetOutpoint() string {
	if x != nil && x.Outpoint != nil {
		return *x.Outpoint
	}
	return ""
}

func (x *BkprlistincomeIncomeEvents) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *BkprlistincomeIncomeEvents) GetPaymentId() []byte {
	if x != nil {
		return x.PaymentId
	}
	return nil
}

type BkpreditdescriptionbypaymentidRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PaymentId   string `protobuf:"bytes,1,opt,name=payment_id,json=paymentId,proto3" json:"payment_id,omitempty"`
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
}

func (x *BkpreditdescriptionbypaymentidRequest) Reset() {
	*x = BkpreditdescriptionbypaymentidRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[405]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkpreditdescriptionbypaymentidRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkpreditdescriptionbypaymentidRequest) ProtoMessage() {}

func (x *BkpreditdescriptionbypaymentidRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[405]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkpreditdescriptionbypaymentidRequest.ProtoReflect.Descriptor instead.
func (*BkpreditdescriptionbypaymentidRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{405}
}

func (x *BkpreditdescriptionbypaymentidRequest) GetPaymentId() string {
	if x != nil {
		return x.PaymentId
	}
	return ""
}

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

type BkpreditdescriptionbypaymentidResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Updated []*BkpreditdescriptionbypaymentidUpdated `protobuf:"bytes,1,rep,name=updated,proto3" json:"updated,omitempty"`
}

func (x *BkpreditdescriptionbypaymentidResponse) Reset() {
	*x = BkpreditdescriptionbypaymentidResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[406]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkpreditdescriptionbypaymentidResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkpreditdescriptionbypaymentidResponse) ProtoMessage() {}

func (x *BkpreditdescriptionbypaymentidResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[406]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkpreditdescriptionbypaymentidResponse.ProtoReflect.Descriptor instead.
func (*BkpreditdescriptionbypaymentidResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{406}
}

func (x *BkpreditdescriptionbypaymentidResponse) GetUpdated() []*BkpreditdescriptionbypaymentidUpdated {
	if x != nil {
		return x.Updated
	}
	return nil
}

type BkpreditdescriptionbypaymentidUpdated struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account     string                                                                          `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
	ItemType    BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType `protobuf:"varint,2,opt,name=item_type,json=itemType,proto3,enum=cln.BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType" json:"item_type,omitempty"`
	Tag         string                                                                          `protobuf:"bytes,3,opt,name=tag,proto3" json:"tag,omitempty"`
	CreditMsat  *Amount                                                                         `protobuf:"bytes,4,opt,name=credit_msat,json=creditMsat,proto3" json:"credit_msat,omitempty"`
	DebitMsat   *Amount                                                                         `protobuf:"bytes,5,opt,name=debit_msat,json=debitMsat,proto3" json:"debit_msat,omitempty"`
	Currency    string                                                                          `protobuf:"bytes,6,opt,name=currency,proto3" json:"currency,omitempty"`
	Timestamp   uint32                                                                          `protobuf:"varint,7,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Description string                                                                          `protobuf:"bytes,8,opt,name=description,proto3" json:"description,omitempty"`
	Outpoint    *string                                                                         `protobuf:"bytes,9,opt,name=outpoint,proto3,oneof" json:"outpoint,omitempty"`
	Blockheight *uint32                                                                         `protobuf:"varint,10,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
	Origin      *string                                                                         `protobuf:"bytes,11,opt,name=origin,proto3,oneof" json:"origin,omitempty"`
	PaymentId   []byte                                                                          `protobuf:"bytes,12,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
	Txid        []byte                                                                          `protobuf:"bytes,13,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
	FeesMsat    *Amount                                                                         `protobuf:"bytes,14,opt,name=fees_msat,json=feesMsat,proto3,oneof" json:"fees_msat,omitempty"`
	IsRebalance *bool                                                                           `protobuf:"varint,15,opt,name=is_rebalance,json=isRebalance,proto3,oneof" json:"is_rebalance,omitempty"`
	PartId      *uint32                                                                         `protobuf:"varint,16,opt,name=part_id,json=partId,proto3,oneof" json:"part_id,omitempty"`
}

func (x *BkpreditdescriptionbypaymentidUpdated) Reset() {
	*x = BkpreditdescriptionbypaymentidUpdated{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[407]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkpreditdescriptionbypaymentidUpdated) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkpreditdescriptionbypaymentidUpdated) ProtoMessage() {}

func (x *BkpreditdescriptionbypaymentidUpdated) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[407]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkpreditdescriptionbypaymentidUpdated.ProtoReflect.Descriptor instead.
func (*BkpreditdescriptionbypaymentidUpdated) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{407}
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetAccount() string {
	if x != nil {
		return x.Account
	}
	return ""
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetItemType() BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType {
	if x != nil {
		return x.ItemType
	}
	return BkpreditdescriptionbypaymentidUpdated_CHAIN
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetCreditMsat() *Amount {
	if x != nil {
		return x.CreditMsat
	}
	return nil
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetDebitMsat() *Amount {
	if x != nil {
		return x.DebitMsat
	}
	return nil
}

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

func (x *BkpreditdescriptionbypaymentidUpdated) GetTimestamp() uint32 {
	if x != nil {
		return x.Timestamp
	}
	return 0
}

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

func (x *BkpreditdescriptionbypaymentidUpdated) GetOutpoint() string {
	if x != nil && x.Outpoint != nil {
		return *x.Outpoint
	}
	return ""
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetBlockheight() uint32 {
	if x != nil && x.Blockheight != nil {
		return *x.Blockheight
	}
	return 0
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetOrigin() string {
	if x != nil && x.Origin != nil {
		return *x.Origin
	}
	return ""
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetPaymentId() []byte {
	if x != nil {
		return x.PaymentId
	}
	return nil
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetFeesMsat() *Amount {
	if x != nil {
		return x.FeesMsat
	}
	return nil
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetIsRebalance() bool {
	if x != nil && x.IsRebalance != nil {
		return *x.IsRebalance
	}
	return false
}

func (x *BkpreditdescriptionbypaymentidUpdated) GetPartId() uint32 {
	if x != nil && x.PartId != nil {
		return *x.PartId
	}
	return 0
}

type BkpreditdescriptionbyoutpointRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Outpoint    string `protobuf:"bytes,1,opt,name=outpoint,proto3" json:"outpoint,omitempty"`
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
}

func (x *BkpreditdescriptionbyoutpointRequest) Reset() {
	*x = BkpreditdescriptionbyoutpointRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[408]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkpreditdescriptionbyoutpointRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkpreditdescriptionbyoutpointRequest) ProtoMessage() {}

func (x *BkpreditdescriptionbyoutpointRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[408]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkpreditdescriptionbyoutpointRequest.ProtoReflect.Descriptor instead.
func (*BkpreditdescriptionbyoutpointRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{408}
}

func (x *BkpreditdescriptionbyoutpointRequest) GetOutpoint() string {
	if x != nil {
		return x.Outpoint
	}
	return ""
}

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

type BkpreditdescriptionbyoutpointResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Updated []*BkpreditdescriptionbyoutpointUpdated `protobuf:"bytes,1,rep,name=updated,proto3" json:"updated,omitempty"`
}

func (x *BkpreditdescriptionbyoutpointResponse) Reset() {
	*x = BkpreditdescriptionbyoutpointResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[409]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkpreditdescriptionbyoutpointResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkpreditdescriptionbyoutpointResponse) ProtoMessage() {}

func (x *BkpreditdescriptionbyoutpointResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[409]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkpreditdescriptionbyoutpointResponse.ProtoReflect.Descriptor instead.
func (*BkpreditdescriptionbyoutpointResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{409}
}

func (x *BkpreditdescriptionbyoutpointResponse) GetUpdated() []*BkpreditdescriptionbyoutpointUpdated {
	if x != nil {
		return x.Updated
	}
	return nil
}

type BkpreditdescriptionbyoutpointUpdated struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Account     string                                                                        `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
	ItemType    BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType `protobuf:"varint,2,opt,name=item_type,json=itemType,proto3,enum=cln.BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType" json:"item_type,omitempty"`
	Tag         string                                                                        `protobuf:"bytes,3,opt,name=tag,proto3" json:"tag,omitempty"`
	CreditMsat  *Amount                                                                       `protobuf:"bytes,4,opt,name=credit_msat,json=creditMsat,proto3" json:"credit_msat,omitempty"`
	DebitMsat   *Amount                                                                       `protobuf:"bytes,5,opt,name=debit_msat,json=debitMsat,proto3" json:"debit_msat,omitempty"`
	Currency    string                                                                        `protobuf:"bytes,6,opt,name=currency,proto3" json:"currency,omitempty"`
	Timestamp   uint32                                                                        `protobuf:"varint,7,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Description string                                                                        `protobuf:"bytes,8,opt,name=description,proto3" json:"description,omitempty"`
	Outpoint    *string                                                                       `protobuf:"bytes,9,opt,name=outpoint,proto3,oneof" json:"outpoint,omitempty"`
	Blockheight *uint32                                                                       `protobuf:"varint,10,opt,name=blockheight,proto3,oneof" json:"blockheight,omitempty"`
	Origin      *string                                                                       `protobuf:"bytes,11,opt,name=origin,proto3,oneof" json:"origin,omitempty"`
	PaymentId   []byte                                                                        `protobuf:"bytes,12,opt,name=payment_id,json=paymentId,proto3,oneof" json:"payment_id,omitempty"`
	Txid        []byte                                                                        `protobuf:"bytes,13,opt,name=txid,proto3,oneof" json:"txid,omitempty"`
	FeesMsat    *Amount                                                                       `protobuf:"bytes,14,opt,name=fees_msat,json=feesMsat,proto3,oneof" json:"fees_msat,omitempty"`
	IsRebalance *bool                                                                         `protobuf:"varint,15,opt,name=is_rebalance,json=isRebalance,proto3,oneof" json:"is_rebalance,omitempty"`
	PartId      *uint32                                                                       `protobuf:"varint,16,opt,name=part_id,json=partId,proto3,oneof" json:"part_id,omitempty"`
}

func (x *BkpreditdescriptionbyoutpointUpdated) Reset() {
	*x = BkpreditdescriptionbyoutpointUpdated{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[410]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BkpreditdescriptionbyoutpointUpdated) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BkpreditdescriptionbyoutpointUpdated) ProtoMessage() {}

func (x *BkpreditdescriptionbyoutpointUpdated) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[410]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BkpreditdescriptionbyoutpointUpdated.ProtoReflect.Descriptor instead.
func (*BkpreditdescriptionbyoutpointUpdated) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{410}
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetAccount() string {
	if x != nil {
		return x.Account
	}
	return ""
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetItemType() BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType {
	if x != nil {
		return x.ItemType
	}
	return BkpreditdescriptionbyoutpointUpdated_CHAIN
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetCreditMsat() *Amount {
	if x != nil {
		return x.CreditMsat
	}
	return nil
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetDebitMsat() *Amount {
	if x != nil {
		return x.DebitMsat
	}
	return nil
}

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

func (x *BkpreditdescriptionbyoutpointUpdated) GetTimestamp() uint32 {
	if x != nil {
		return x.Timestamp
	}
	return 0
}

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

func (x *BkpreditdescriptionbyoutpointUpdated) GetOutpoint() string {
	if x != nil && x.Outpoint != nil {
		return *x.Outpoint
	}
	return ""
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetBlockheight() uint32 {
	if x != nil && x.Blockheight != nil {
		return *x.Blockheight
	}
	return 0
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetOrigin() string {
	if x != nil && x.Origin != nil {
		return *x.Origin
	}
	return ""
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetPaymentId() []byte {
	if x != nil {
		return x.PaymentId
	}
	return nil
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetTxid() []byte {
	if x != nil {
		return x.Txid
	}
	return nil
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetFeesMsat() *Amount {
	if x != nil {
		return x.FeesMsat
	}
	return nil
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetIsRebalance() bool {
	if x != nil && x.IsRebalance != nil {
		return *x.IsRebalance
	}
	return false
}

func (x *BkpreditdescriptionbyoutpointUpdated) GetPartId() uint32 {
	if x != nil && x.PartId != nil {
		return *x.PartId
	}
	return 0
}

type BlacklistruneRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Start *uint64 `protobuf:"varint,1,opt,name=start,proto3,oneof" json:"start,omitempty"`
	End   *uint64 `protobuf:"varint,2,opt,name=end,proto3,oneof" json:"end,omitempty"`
}

func (x *BlacklistruneRequest) Reset() {
	*x = BlacklistruneRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[411]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BlacklistruneRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BlacklistruneRequest) ProtoMessage() {}

func (x *BlacklistruneRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[411]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BlacklistruneRequest.ProtoReflect.Descriptor instead.
func (*BlacklistruneRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{411}
}

func (x *BlacklistruneRequest) GetStart() uint64 {
	if x != nil && x.Start != nil {
		return *x.Start
	}
	return 0
}

func (x *BlacklistruneRequest) GetEnd() uint64 {
	if x != nil && x.End != nil {
		return *x.End
	}
	return 0
}

type BlacklistruneResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Blacklist []*BlacklistruneBlacklist `protobuf:"bytes,1,rep,name=blacklist,proto3" json:"blacklist,omitempty"`
}

func (x *BlacklistruneResponse) Reset() {
	*x = BlacklistruneResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[412]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BlacklistruneResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BlacklistruneResponse) ProtoMessage() {}

func (x *BlacklistruneResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[412]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BlacklistruneResponse.ProtoReflect.Descriptor instead.
func (*BlacklistruneResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{412}
}

func (x *BlacklistruneResponse) GetBlacklist() []*BlacklistruneBlacklist {
	if x != nil {
		return x.Blacklist
	}
	return nil
}

type BlacklistruneBlacklist struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Start uint64 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"`
	End   uint64 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
}

func (x *BlacklistruneBlacklist) Reset() {
	*x = BlacklistruneBlacklist{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[413]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BlacklistruneBlacklist) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BlacklistruneBlacklist) ProtoMessage() {}

func (x *BlacklistruneBlacklist) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[413]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BlacklistruneBlacklist.ProtoReflect.Descriptor instead.
func (*BlacklistruneBlacklist) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{413}
}

func (x *BlacklistruneBlacklist) GetStart() uint64 {
	if x != nil {
		return x.Start
	}
	return 0
}

func (x *BlacklistruneBlacklist) GetEnd() uint64 {
	if x != nil {
		return x.End
	}
	return 0
}

type CheckruneRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Rune   string   `protobuf:"bytes,1,opt,name=rune,proto3" json:"rune,omitempty"`
	Nodeid *string  `protobuf:"bytes,2,opt,name=nodeid,proto3,oneof" json:"nodeid,omitempty"`
	Method *string  `protobuf:"bytes,3,opt,name=method,proto3,oneof" json:"method,omitempty"`
	Params []string `protobuf:"bytes,4,rep,name=params,proto3" json:"params,omitempty"`
}

func (x *CheckruneRequest) Reset() {
	*x = CheckruneRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[414]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CheckruneRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CheckruneRequest) ProtoMessage() {}

func (x *CheckruneRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[414]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CheckruneRequest.ProtoReflect.Descriptor instead.
func (*CheckruneRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{414}
}

func (x *CheckruneRequest) GetRune() string {
	if x != nil {
		return x.Rune
	}
	return ""
}

func (x *CheckruneRequest) GetNodeid() string {
	if x != nil && x.Nodeid != nil {
		return *x.Nodeid
	}
	return ""
}

func (x *CheckruneRequest) GetMethod() string {
	if x != nil && x.Method != nil {
		return *x.Method
	}
	return ""
}

func (x *CheckruneRequest) GetParams() []string {
	if x != nil {
		return x.Params
	}
	return nil
}

type CheckruneResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Valid bool `protobuf:"varint,1,opt,name=valid,proto3" json:"valid,omitempty"`
}

func (x *CheckruneResponse) Reset() {
	*x = CheckruneResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[415]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CheckruneResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CheckruneResponse) ProtoMessage() {}

func (x *CheckruneResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[415]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CheckruneResponse.ProtoReflect.Descriptor instead.
func (*CheckruneResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{415}
}

func (x *CheckruneResponse) GetValid() bool {
	if x != nil {
		return x.Valid
	}
	return false
}

type CreateruneRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Rune         *string  `protobuf:"bytes,1,opt,name=rune,proto3,oneof" json:"rune,omitempty"`
	Restrictions []string `protobuf:"bytes,2,rep,name=restrictions,proto3" json:"restrictions,omitempty"`
}

func (x *CreateruneRequest) Reset() {
	*x = CreateruneRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[416]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateruneRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateruneRequest) ProtoMessage() {}

func (x *CreateruneRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[416]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateruneRequest.ProtoReflect.Descriptor instead.
func (*CreateruneRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{416}
}

func (x *CreateruneRequest) GetRune() string {
	if x != nil && x.Rune != nil {
		return *x.Rune
	}
	return ""
}

func (x *CreateruneRequest) GetRestrictions() []string {
	if x != nil {
		return x.Restrictions
	}
	return nil
}

type CreateruneResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Rune                    string  `protobuf:"bytes,1,opt,name=rune,proto3" json:"rune,omitempty"`
	UniqueId                string  `protobuf:"bytes,2,opt,name=unique_id,json=uniqueId,proto3" json:"unique_id,omitempty"`
	WarningUnrestrictedRune *string `protobuf:"bytes,3,opt,name=warning_unrestricted_rune,json=warningUnrestrictedRune,proto3,oneof" json:"warning_unrestricted_rune,omitempty"`
}

func (x *CreateruneResponse) Reset() {
	*x = CreateruneResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[417]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CreateruneResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateruneResponse) ProtoMessage() {}

func (x *CreateruneResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[417]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateruneResponse.ProtoReflect.Descriptor instead.
func (*CreateruneResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{417}
}

func (x *CreateruneResponse) GetRune() string {
	if x != nil {
		return x.Rune
	}
	return ""
}

func (x *CreateruneResponse) GetUniqueId() string {
	if x != nil {
		return x.UniqueId
	}
	return ""
}

func (x *CreateruneResponse) GetWarningUnrestrictedRune() string {
	if x != nil && x.WarningUnrestrictedRune != nil {
		return *x.WarningUnrestrictedRune
	}
	return ""
}

type ShowrunesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Rune *string `protobuf:"bytes,1,opt,name=rune,proto3,oneof" json:"rune,omitempty"`
}

func (x *ShowrunesRequest) Reset() {
	*x = ShowrunesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[418]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowrunesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowrunesRequest) ProtoMessage() {}

func (x *ShowrunesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[418]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ShowrunesRequest.ProtoReflect.Descriptor instead.
func (*ShowrunesRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{418}
}

func (x *ShowrunesRequest) GetRune() string {
	if x != nil && x.Rune != nil {
		return *x.Rune
	}
	return ""
}

type ShowrunesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Runes []*ShowrunesRunes `protobuf:"bytes,1,rep,name=runes,proto3" json:"runes,omitempty"`
}

func (x *ShowrunesResponse) Reset() {
	*x = ShowrunesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[419]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowrunesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowrunesResponse) ProtoMessage() {}

func (x *ShowrunesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[419]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ShowrunesResponse.ProtoReflect.Descriptor instead.
func (*ShowrunesResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{419}
}

func (x *ShowrunesResponse) GetRunes() []*ShowrunesRunes {
	if x != nil {
		return x.Runes
	}
	return nil
}

type ShowrunesRunes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Rune                  string                        `protobuf:"bytes,1,opt,name=rune,proto3" json:"rune,omitempty"`
	UniqueId              string                        `protobuf:"bytes,2,opt,name=unique_id,json=uniqueId,proto3" json:"unique_id,omitempty"`
	Restrictions          []*ShowrunesRunesRestrictions `protobuf:"bytes,3,rep,name=restrictions,proto3" json:"restrictions,omitempty"`
	RestrictionsAsEnglish string                        `protobuf:"bytes,4,opt,name=restrictions_as_english,json=restrictionsAsEnglish,proto3" json:"restrictions_as_english,omitempty"`
	Stored                *bool                         `protobuf:"varint,5,opt,name=stored,proto3,oneof" json:"stored,omitempty"`
	Blacklisted           *bool                         `protobuf:"varint,6,opt,name=blacklisted,proto3,oneof" json:"blacklisted,omitempty"`
	LastUsed              *float64                      `protobuf:"fixed64,7,opt,name=last_used,json=lastUsed,proto3,oneof" json:"last_used,omitempty"`
	OurRune               *bool                         `protobuf:"varint,8,opt,name=our_rune,json=ourRune,proto3,oneof" json:"our_rune,omitempty"`
}

func (x *ShowrunesRunes) Reset() {
	*x = ShowrunesRunes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[420]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowrunesRunes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowrunesRunes) ProtoMessage() {}

func (x *ShowrunesRunes) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[420]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ShowrunesRunes.ProtoReflect.Descriptor instead.
func (*ShowrunesRunes) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{420}
}

func (x *ShowrunesRunes) GetRune() string {
	if x != nil {
		return x.Rune
	}
	return ""
}

func (x *ShowrunesRunes) GetUniqueId() string {
	if x != nil {
		return x.UniqueId
	}
	return ""
}

func (x *ShowrunesRunes) GetRestrictions() []*ShowrunesRunesRestrictions {
	if x != nil {
		return x.Restrictions
	}
	return nil
}

func (x *ShowrunesRunes) GetRestrictionsAsEnglish() string {
	if x != nil {
		return x.RestrictionsAsEnglish
	}
	return ""
}

func (x *ShowrunesRunes) GetStored() bool {
	if x != nil && x.Stored != nil {
		return *x.Stored
	}
	return false
}

func (x *ShowrunesRunes) GetBlacklisted() bool {
	if x != nil && x.Blacklisted != nil {
		return *x.Blacklisted
	}
	return false
}

func (x *ShowrunesRunes) GetLastUsed() float64 {
	if x != nil && x.LastUsed != nil {
		return *x.LastUsed
	}
	return 0
}

func (x *ShowrunesRunes) GetOurRune() bool {
	if x != nil && x.OurRune != nil {
		return *x.OurRune
	}
	return false
}

type ShowrunesRunesRestrictions struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Alternatives []*ShowrunesRunesRestrictionsAlternatives `protobuf:"bytes,1,rep,name=alternatives,proto3" json:"alternatives,omitempty"`
	English      string                                    `protobuf:"bytes,2,opt,name=english,proto3" json:"english,omitempty"`
}

func (x *ShowrunesRunesRestrictions) Reset() {
	*x = ShowrunesRunesRestrictions{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[421]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowrunesRunesRestrictions) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowrunesRunesRestrictions) ProtoMessage() {}

func (x *ShowrunesRunesRestrictions) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[421]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ShowrunesRunesRestrictions.ProtoReflect.Descriptor instead.
func (*ShowrunesRunesRestrictions) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{421}
}

func (x *ShowrunesRunesRestrictions) GetAlternatives() []*ShowrunesRunesRestrictionsAlternatives {
	if x != nil {
		return x.Alternatives
	}
	return nil
}

func (x *ShowrunesRunesRestrictions) GetEnglish() string {
	if x != nil {
		return x.English
	}
	return ""
}

type ShowrunesRunesRestrictionsAlternatives struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Fieldname string `protobuf:"bytes,1,opt,name=fieldname,proto3" json:"fieldname,omitempty"`
	Value     string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	Condition string `protobuf:"bytes,3,opt,name=condition,proto3" json:"condition,omitempty"`
	English   string `protobuf:"bytes,4,opt,name=english,proto3" json:"english,omitempty"`
}

func (x *ShowrunesRunesRestrictionsAlternatives) Reset() {
	*x = ShowrunesRunesRestrictionsAlternatives{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[422]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ShowrunesRunesRestrictionsAlternatives) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ShowrunesRunesRestrictionsAlternatives) ProtoMessage() {}

func (x *ShowrunesRunesRestrictionsAlternatives) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[422]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ShowrunesRunesRestrictionsAlternatives.ProtoReflect.Descriptor instead.
func (*ShowrunesRunesRestrictionsAlternatives) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{422}
}

func (x *ShowrunesRunesRestrictionsAlternatives) GetFieldname() string {
	if x != nil {
		return x.Fieldname
	}
	return ""
}

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

func (x *ShowrunesRunesRestrictionsAlternatives) GetCondition() string {
	if x != nil {
		return x.Condition
	}
	return ""
}

func (x *ShowrunesRunesRestrictionsAlternatives) GetEnglish() string {
	if x != nil {
		return x.English
	}
	return ""
}

type AskreneunreserveRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Path []*AskreneunreservePath `protobuf:"bytes,1,rep,name=path,proto3" json:"path,omitempty"`
}

func (x *AskreneunreserveRequest) Reset() {
	*x = AskreneunreserveRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[423]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneunreserveRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneunreserveRequest) ProtoMessage() {}

func (x *AskreneunreserveRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[423]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneunreserveRequest.ProtoReflect.Descriptor instead.
func (*AskreneunreserveRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{423}
}

func (x *AskreneunreserveRequest) GetPath() []*AskreneunreservePath {
	if x != nil {
		return x.Path
	}
	return nil
}

type AskreneunreserveResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AskreneunreserveResponse) Reset() {
	*x = AskreneunreserveResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[424]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneunreserveResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneunreserveResponse) ProtoMessage() {}

func (x *AskreneunreserveResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[424]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneunreserveResponse.ProtoReflect.Descriptor instead.
func (*AskreneunreserveResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{424}
}

type AskreneunreservePath struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AmountMsat        *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	ShortChannelIdDir *string `protobuf:"bytes,4,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3,oneof" json:"short_channel_id_dir,omitempty"`
}

func (x *AskreneunreservePath) Reset() {
	*x = AskreneunreservePath{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[425]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneunreservePath) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneunreservePath) ProtoMessage() {}

func (x *AskreneunreservePath) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[425]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneunreservePath.ProtoReflect.Descriptor instead.
func (*AskreneunreservePath) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{425}
}

func (x *AskreneunreservePath) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *AskreneunreservePath) GetShortChannelIdDir() string {
	if x != nil && x.ShortChannelIdDir != nil {
		return *x.ShortChannelIdDir
	}
	return ""
}

type AskrenelistlayersRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer *string `protobuf:"bytes,1,opt,name=layer,proto3,oneof" json:"layer,omitempty"`
}

func (x *AskrenelistlayersRequest) Reset() {
	*x = AskrenelistlayersRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[426]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistlayersRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistlayersRequest) ProtoMessage() {}

func (x *AskrenelistlayersRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[426]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistlayersRequest.ProtoReflect.Descriptor instead.
func (*AskrenelistlayersRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{426}
}

func (x *AskrenelistlayersRequest) GetLayer() string {
	if x != nil && x.Layer != nil {
		return *x.Layer
	}
	return ""
}

type AskrenelistlayersResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layers []*AskrenelistlayersLayers `protobuf:"bytes,1,rep,name=layers,proto3" json:"layers,omitempty"`
}

func (x *AskrenelistlayersResponse) Reset() {
	*x = AskrenelistlayersResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[427]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistlayersResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistlayersResponse) ProtoMessage() {}

func (x *AskrenelistlayersResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[427]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistlayersResponse.ProtoReflect.Descriptor instead.
func (*AskrenelistlayersResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{427}
}

func (x *AskrenelistlayersResponse) GetLayers() []*AskrenelistlayersLayers {
	if x != nil {
		return x.Layers
	}
	return nil
}

type AskrenelistlayersLayers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer            string                                    `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	DisabledNodes    [][]byte                                  `protobuf:"bytes,2,rep,name=disabled_nodes,json=disabledNodes,proto3" json:"disabled_nodes,omitempty"`
	CreatedChannels  []*AskrenelistlayersLayersCreatedChannels `protobuf:"bytes,3,rep,name=created_channels,json=createdChannels,proto3" json:"created_channels,omitempty"`
	Constraints      []*AskrenelistlayersLayersConstraints     `protobuf:"bytes,4,rep,name=constraints,proto3" json:"constraints,omitempty"`
	Persistent       *bool                                     `protobuf:"varint,5,opt,name=persistent,proto3,oneof" json:"persistent,omitempty"`
	DisabledChannels []string                                  `protobuf:"bytes,6,rep,name=disabled_channels,json=disabledChannels,proto3" json:"disabled_channels,omitempty"`
	ChannelUpdates   []*AskrenelistlayersLayersChannelUpdates  `protobuf:"bytes,7,rep,name=channel_updates,json=channelUpdates,proto3" json:"channel_updates,omitempty"`
	Biases           []*AskrenelistlayersLayersBiases          `protobuf:"bytes,8,rep,name=biases,proto3" json:"biases,omitempty"`
}

func (x *AskrenelistlayersLayers) Reset() {
	*x = AskrenelistlayersLayers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[428]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistlayersLayers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistlayersLayers) ProtoMessage() {}

func (x *AskrenelistlayersLayers) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[428]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistlayersLayers.ProtoReflect.Descriptor instead.
func (*AskrenelistlayersLayers) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{428}
}

func (x *AskrenelistlayersLayers) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskrenelistlayersLayers) GetDisabledNodes() [][]byte {
	if x != nil {
		return x.DisabledNodes
	}
	return nil
}

func (x *AskrenelistlayersLayers) GetCreatedChannels() []*AskrenelistlayersLayersCreatedChannels {
	if x != nil {
		return x.CreatedChannels
	}
	return nil
}

func (x *AskrenelistlayersLayers) GetConstraints() []*AskrenelistlayersLayersConstraints {
	if x != nil {
		return x.Constraints
	}
	return nil
}

func (x *AskrenelistlayersLayers) GetPersistent() bool {
	if x != nil && x.Persistent != nil {
		return *x.Persistent
	}
	return false
}

func (x *AskrenelistlayersLayers) GetDisabledChannels() []string {
	if x != nil {
		return x.DisabledChannels
	}
	return nil
}

func (x *AskrenelistlayersLayers) GetChannelUpdates() []*AskrenelistlayersLayersChannelUpdates {
	if x != nil {
		return x.ChannelUpdates
	}
	return nil
}

func (x *AskrenelistlayersLayers) GetBiases() []*AskrenelistlayersLayersBiases {
	if x != nil {
		return x.Biases
	}
	return nil
}

type AskrenelistlayersLayersCreatedChannels struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Source         []byte  `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
	Destination    []byte  `protobuf:"bytes,2,opt,name=destination,proto3" json:"destination,omitempty"`
	ShortChannelId string  `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
	CapacityMsat   *Amount `protobuf:"bytes,4,opt,name=capacity_msat,json=capacityMsat,proto3" json:"capacity_msat,omitempty"`
}

func (x *AskrenelistlayersLayersCreatedChannels) Reset() {
	*x = AskrenelistlayersLayersCreatedChannels{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[429]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistlayersLayersCreatedChannels) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistlayersLayersCreatedChannels) ProtoMessage() {}

func (x *AskrenelistlayersLayersCreatedChannels) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[429]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistlayersLayersCreatedChannels.ProtoReflect.Descriptor instead.
func (*AskrenelistlayersLayersCreatedChannels) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{429}
}

func (x *AskrenelistlayersLayersCreatedChannels) GetSource() []byte {
	if x != nil {
		return x.Source
	}
	return nil
}

func (x *AskrenelistlayersLayersCreatedChannels) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *AskrenelistlayersLayersCreatedChannels) GetShortChannelId() string {
	if x != nil {
		return x.ShortChannelId
	}
	return ""
}

func (x *AskrenelistlayersLayersCreatedChannels) GetCapacityMsat() *Amount {
	if x != nil {
		return x.CapacityMsat
	}
	return nil
}

type AskrenelistlayersLayersChannelUpdates struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ShortChannelIdDir         string  `protobuf:"bytes,1,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3" json:"short_channel_id_dir,omitempty"`
	Enabled                   *bool   `protobuf:"varint,2,opt,name=enabled,proto3,oneof" json:"enabled,omitempty"`
	HtlcMinimumMsat           *Amount `protobuf:"bytes,3,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
	HtlcMaximumMsat           *Amount `protobuf:"bytes,4,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
	FeeBaseMsat               *Amount `protobuf:"bytes,5,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
	FeeProportionalMillionths *uint32 `protobuf:"varint,6,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
	CltvExpiryDelta           *uint32 `protobuf:"varint,7,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3,oneof" json:"cltv_expiry_delta,omitempty"`
}

func (x *AskrenelistlayersLayersChannelUpdates) Reset() {
	*x = AskrenelistlayersLayersChannelUpdates{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[430]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistlayersLayersChannelUpdates) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistlayersLayersChannelUpdates) ProtoMessage() {}

func (x *AskrenelistlayersLayersChannelUpdates) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[430]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistlayersLayersChannelUpdates.ProtoReflect.Descriptor instead.
func (*AskrenelistlayersLayersChannelUpdates) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{430}
}

func (x *AskrenelistlayersLayersChannelUpdates) GetShortChannelIdDir() string {
	if x != nil {
		return x.ShortChannelIdDir
	}
	return ""
}

func (x *AskrenelistlayersLayersChannelUpdates) GetEnabled() bool {
	if x != nil && x.Enabled != nil {
		return *x.Enabled
	}
	return false
}

func (x *AskrenelistlayersLayersChannelUpdates) GetHtlcMinimumMsat() *Amount {
	if x != nil {
		return x.HtlcMinimumMsat
	}
	return nil
}

func (x *AskrenelistlayersLayersChannelUpdates) GetHtlcMaximumMsat() *Amount {
	if x != nil {
		return x.HtlcMaximumMsat
	}
	return nil
}

func (x *AskrenelistlayersLayersChannelUpdates) GetFeeBaseMsat() *Amount {
	if x != nil {
		return x.FeeBaseMsat
	}
	return nil
}

func (x *AskrenelistlayersLayersChannelUpdates) GetFeeProportionalMillionths() uint32 {
	if x != nil && x.FeeProportionalMillionths != nil {
		return *x.FeeProportionalMillionths
	}
	return 0
}

func (x *AskrenelistlayersLayersChannelUpdates) GetCltvExpiryDelta() uint32 {
	if x != nil && x.CltvExpiryDelta != nil {
		return *x.CltvExpiryDelta
	}
	return 0
}

type AskrenelistlayersLayersConstraints struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	MaximumMsat       *Amount `protobuf:"bytes,3,opt,name=maximum_msat,json=maximumMsat,proto3,oneof" json:"maximum_msat,omitempty"`
	MinimumMsat       *Amount `protobuf:"bytes,4,opt,name=minimum_msat,json=minimumMsat,proto3,oneof" json:"minimum_msat,omitempty"`
	ShortChannelIdDir *string `protobuf:"bytes,5,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3,oneof" json:"short_channel_id_dir,omitempty"`
	Timestamp         *uint64 `protobuf:"varint,6,opt,name=timestamp,proto3,oneof" json:"timestamp,omitempty"`
}

func (x *AskrenelistlayersLayersConstraints) Reset() {
	*x = AskrenelistlayersLayersConstraints{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[431]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistlayersLayersConstraints) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistlayersLayersConstraints) ProtoMessage() {}

func (x *AskrenelistlayersLayersConstraints) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[431]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistlayersLayersConstraints.ProtoReflect.Descriptor instead.
func (*AskrenelistlayersLayersConstraints) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{431}
}

func (x *AskrenelistlayersLayersConstraints) GetMaximumMsat() *Amount {
	if x != nil {
		return x.MaximumMsat
	}
	return nil
}

func (x *AskrenelistlayersLayersConstraints) GetMinimumMsat() *Amount {
	if x != nil {
		return x.MinimumMsat
	}
	return nil
}

func (x *AskrenelistlayersLayersConstraints) GetShortChannelIdDir() string {
	if x != nil && x.ShortChannelIdDir != nil {
		return *x.ShortChannelIdDir
	}
	return ""
}

func (x *AskrenelistlayersLayersConstraints) GetTimestamp() uint64 {
	if x != nil && x.Timestamp != nil {
		return *x.Timestamp
	}
	return 0
}

type AskrenelistlayersLayersBiases struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ShortChannelIdDir string  `protobuf:"bytes,1,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3" json:"short_channel_id_dir,omitempty"`
	Bias              int64   `protobuf:"zigzag64,2,opt,name=bias,proto3" json:"bias,omitempty"`
	Description       *string `protobuf:"bytes,3,opt,name=description,proto3,oneof" json:"description,omitempty"`
}

func (x *AskrenelistlayersLayersBiases) Reset() {
	*x = AskrenelistlayersLayersBiases{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[432]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistlayersLayersBiases) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistlayersLayersBiases) ProtoMessage() {}

func (x *AskrenelistlayersLayersBiases) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[432]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistlayersLayersBiases.ProtoReflect.Descriptor instead.
func (*AskrenelistlayersLayersBiases) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{432}
}

func (x *AskrenelistlayersLayersBiases) GetShortChannelIdDir() string {
	if x != nil {
		return x.ShortChannelIdDir
	}
	return ""
}

func (x *AskrenelistlayersLayersBiases) GetBias() int64 {
	if x != nil {
		return x.Bias
	}
	return 0
}

func (x *AskrenelistlayersLayersBiases) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

type AskrenecreatelayerRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer      string `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	Persistent *bool  `protobuf:"varint,2,opt,name=persistent,proto3,oneof" json:"persistent,omitempty"`
}

func (x *AskrenecreatelayerRequest) Reset() {
	*x = AskrenecreatelayerRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[433]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatelayerRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatelayerRequest) ProtoMessage() {}

func (x *AskrenecreatelayerRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[433]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatelayerRequest.ProtoReflect.Descriptor instead.
func (*AskrenecreatelayerRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{433}
}

func (x *AskrenecreatelayerRequest) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskrenecreatelayerRequest) GetPersistent() bool {
	if x != nil && x.Persistent != nil {
		return *x.Persistent
	}
	return false
}

type AskrenecreatelayerResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layers []*AskrenecreatelayerLayers `protobuf:"bytes,1,rep,name=layers,proto3" json:"layers,omitempty"`
}

func (x *AskrenecreatelayerResponse) Reset() {
	*x = AskrenecreatelayerResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[434]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatelayerResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatelayerResponse) ProtoMessage() {}

func (x *AskrenecreatelayerResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[434]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatelayerResponse.ProtoReflect.Descriptor instead.
func (*AskrenecreatelayerResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{434}
}

func (x *AskrenecreatelayerResponse) GetLayers() []*AskrenecreatelayerLayers {
	if x != nil {
		return x.Layers
	}
	return nil
}

type AskrenecreatelayerLayers struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer            string                                     `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	Persistent       bool                                       `protobuf:"varint,2,opt,name=persistent,proto3" json:"persistent,omitempty"`
	DisabledNodes    [][]byte                                   `protobuf:"bytes,3,rep,name=disabled_nodes,json=disabledNodes,proto3" json:"disabled_nodes,omitempty"`
	DisabledChannels []string                                   `protobuf:"bytes,4,rep,name=disabled_channels,json=disabledChannels,proto3" json:"disabled_channels,omitempty"`
	CreatedChannels  []*AskrenecreatelayerLayersCreatedChannels `protobuf:"bytes,5,rep,name=created_channels,json=createdChannels,proto3" json:"created_channels,omitempty"`
	ChannelUpdates   []*AskrenecreatelayerLayersChannelUpdates  `protobuf:"bytes,6,rep,name=channel_updates,json=channelUpdates,proto3" json:"channel_updates,omitempty"`
	Constraints      []*AskrenecreatelayerLayersConstraints     `protobuf:"bytes,7,rep,name=constraints,proto3" json:"constraints,omitempty"`
	Biases           []*AskrenecreatelayerLayersBiases          `protobuf:"bytes,8,rep,name=biases,proto3" json:"biases,omitempty"`
}

func (x *AskrenecreatelayerLayers) Reset() {
	*x = AskrenecreatelayerLayers{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[435]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatelayerLayers) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatelayerLayers) ProtoMessage() {}

func (x *AskrenecreatelayerLayers) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[435]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatelayerLayers.ProtoReflect.Descriptor instead.
func (*AskrenecreatelayerLayers) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{435}
}

func (x *AskrenecreatelayerLayers) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskrenecreatelayerLayers) GetPersistent() bool {
	if x != nil {
		return x.Persistent
	}
	return false
}

func (x *AskrenecreatelayerLayers) GetDisabledNodes() [][]byte {
	if x != nil {
		return x.DisabledNodes
	}
	return nil
}

func (x *AskrenecreatelayerLayers) GetDisabledChannels() []string {
	if x != nil {
		return x.DisabledChannels
	}
	return nil
}

func (x *AskrenecreatelayerLayers) GetCreatedChannels() []*AskrenecreatelayerLayersCreatedChannels {
	if x != nil {
		return x.CreatedChannels
	}
	return nil
}

func (x *AskrenecreatelayerLayers) GetChannelUpdates() []*AskrenecreatelayerLayersChannelUpdates {
	if x != nil {
		return x.ChannelUpdates
	}
	return nil
}

func (x *AskrenecreatelayerLayers) GetConstraints() []*AskrenecreatelayerLayersConstraints {
	if x != nil {
		return x.Constraints
	}
	return nil
}

func (x *AskrenecreatelayerLayers) GetBiases() []*AskrenecreatelayerLayersBiases {
	if x != nil {
		return x.Biases
	}
	return nil
}

type AskrenecreatelayerLayersCreatedChannels struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Source         []byte  `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
	Destination    []byte  `protobuf:"bytes,2,opt,name=destination,proto3" json:"destination,omitempty"`
	ShortChannelId string  `protobuf:"bytes,3,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
	CapacityMsat   *Amount `protobuf:"bytes,4,opt,name=capacity_msat,json=capacityMsat,proto3" json:"capacity_msat,omitempty"`
}

func (x *AskrenecreatelayerLayersCreatedChannels) Reset() {
	*x = AskrenecreatelayerLayersCreatedChannels{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[436]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatelayerLayersCreatedChannels) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatelayerLayersCreatedChannels) ProtoMessage() {}

func (x *AskrenecreatelayerLayersCreatedChannels) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[436]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatelayerLayersCreatedChannels.ProtoReflect.Descriptor instead.
func (*AskrenecreatelayerLayersCreatedChannels) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{436}
}

func (x *AskrenecreatelayerLayersCreatedChannels) GetSource() []byte {
	if x != nil {
		return x.Source
	}
	return nil
}

func (x *AskrenecreatelayerLayersCreatedChannels) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *AskrenecreatelayerLayersCreatedChannels) GetShortChannelId() string {
	if x != nil {
		return x.ShortChannelId
	}
	return ""
}

func (x *AskrenecreatelayerLayersCreatedChannels) GetCapacityMsat() *Amount {
	if x != nil {
		return x.CapacityMsat
	}
	return nil
}

type AskrenecreatelayerLayersChannelUpdates struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	HtlcMinimumMsat           *Amount `protobuf:"bytes,1,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
	HtlcMaximumMsat           *Amount `protobuf:"bytes,2,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
	FeeBaseMsat               *Amount `protobuf:"bytes,3,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
	FeeProportionalMillionths *uint32 `protobuf:"varint,4,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
	Delay                     *uint32 `protobuf:"varint,5,opt,name=delay,proto3,oneof" json:"delay,omitempty"`
}

func (x *AskrenecreatelayerLayersChannelUpdates) Reset() {
	*x = AskrenecreatelayerLayersChannelUpdates{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[437]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatelayerLayersChannelUpdates) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatelayerLayersChannelUpdates) ProtoMessage() {}

func (x *AskrenecreatelayerLayersChannelUpdates) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[437]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatelayerLayersChannelUpdates.ProtoReflect.Descriptor instead.
func (*AskrenecreatelayerLayersChannelUpdates) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{437}
}

func (x *AskrenecreatelayerLayersChannelUpdates) GetHtlcMinimumMsat() *Amount {
	if x != nil {
		return x.HtlcMinimumMsat
	}
	return nil
}

func (x *AskrenecreatelayerLayersChannelUpdates) GetHtlcMaximumMsat() *Amount {
	if x != nil {
		return x.HtlcMaximumMsat
	}
	return nil
}

func (x *AskrenecreatelayerLayersChannelUpdates) GetFeeBaseMsat() *Amount {
	if x != nil {
		return x.FeeBaseMsat
	}
	return nil
}

func (x *AskrenecreatelayerLayersChannelUpdates) GetFeeProportionalMillionths() uint32 {
	if x != nil && x.FeeProportionalMillionths != nil {
		return *x.FeeProportionalMillionths
	}
	return 0
}

func (x *AskrenecreatelayerLayersChannelUpdates) GetDelay() uint32 {
	if x != nil && x.Delay != nil {
		return *x.Delay
	}
	return 0
}

type AskrenecreatelayerLayersConstraints struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ShortChannelId string  `protobuf:"bytes,1,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
	Direction      uint32  `protobuf:"varint,2,opt,name=direction,proto3" json:"direction,omitempty"`
	MaximumMsat    *Amount `protobuf:"bytes,3,opt,name=maximum_msat,json=maximumMsat,proto3,oneof" json:"maximum_msat,omitempty"`
	MinimumMsat    *Amount `protobuf:"bytes,4,opt,name=minimum_msat,json=minimumMsat,proto3,oneof" json:"minimum_msat,omitempty"`
}

func (x *AskrenecreatelayerLayersConstraints) Reset() {
	*x = AskrenecreatelayerLayersConstraints{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[438]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatelayerLayersConstraints) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatelayerLayersConstraints) ProtoMessage() {}

func (x *AskrenecreatelayerLayersConstraints) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[438]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatelayerLayersConstraints.ProtoReflect.Descriptor instead.
func (*AskrenecreatelayerLayersConstraints) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{438}
}

func (x *AskrenecreatelayerLayersConstraints) GetShortChannelId() string {
	if x != nil {
		return x.ShortChannelId
	}
	return ""
}

func (x *AskrenecreatelayerLayersConstraints) GetDirection() uint32 {
	if x != nil {
		return x.Direction
	}
	return 0
}

func (x *AskrenecreatelayerLayersConstraints) GetMaximumMsat() *Amount {
	if x != nil {
		return x.MaximumMsat
	}
	return nil
}

func (x *AskrenecreatelayerLayersConstraints) GetMinimumMsat() *Amount {
	if x != nil {
		return x.MinimumMsat
	}
	return nil
}

type AskrenecreatelayerLayersBiases struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ShortChannelIdDir string  `protobuf:"bytes,1,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3" json:"short_channel_id_dir,omitempty"`
	Bias              int64   `protobuf:"zigzag64,2,opt,name=bias,proto3" json:"bias,omitempty"`
	Description       *string `protobuf:"bytes,3,opt,name=description,proto3,oneof" json:"description,omitempty"`
}

func (x *AskrenecreatelayerLayersBiases) Reset() {
	*x = AskrenecreatelayerLayersBiases{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[439]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatelayerLayersBiases) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatelayerLayersBiases) ProtoMessage() {}

func (x *AskrenecreatelayerLayersBiases) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[439]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatelayerLayersBiases.ProtoReflect.Descriptor instead.
func (*AskrenecreatelayerLayersBiases) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{439}
}

func (x *AskrenecreatelayerLayersBiases) GetShortChannelIdDir() string {
	if x != nil {
		return x.ShortChannelIdDir
	}
	return ""
}

func (x *AskrenecreatelayerLayersBiases) GetBias() int64 {
	if x != nil {
		return x.Bias
	}
	return 0
}

func (x *AskrenecreatelayerLayersBiases) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

type AskreneremovelayerRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer string `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
}

func (x *AskreneremovelayerRequest) Reset() {
	*x = AskreneremovelayerRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[440]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneremovelayerRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneremovelayerRequest) ProtoMessage() {}

func (x *AskreneremovelayerRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[440]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneremovelayerRequest.ProtoReflect.Descriptor instead.
func (*AskreneremovelayerRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{440}
}

func (x *AskreneremovelayerRequest) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

type AskreneremovelayerResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AskreneremovelayerResponse) Reset() {
	*x = AskreneremovelayerResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[441]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneremovelayerResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneremovelayerResponse) ProtoMessage() {}

func (x *AskreneremovelayerResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[441]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneremovelayerResponse.ProtoReflect.Descriptor instead.
func (*AskreneremovelayerResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{441}
}

type AskrenereserveRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Path []*AskrenereservePath `protobuf:"bytes,1,rep,name=path,proto3" json:"path,omitempty"`
}

func (x *AskrenereserveRequest) Reset() {
	*x = AskrenereserveRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[442]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenereserveRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenereserveRequest) ProtoMessage() {}

func (x *AskrenereserveRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[442]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenereserveRequest.ProtoReflect.Descriptor instead.
func (*AskrenereserveRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{442}
}

func (x *AskrenereserveRequest) GetPath() []*AskrenereservePath {
	if x != nil {
		return x.Path
	}
	return nil
}

type AskrenereserveResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AskrenereserveResponse) Reset() {
	*x = AskrenereserveResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[443]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenereserveResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenereserveResponse) ProtoMessage() {}

func (x *AskrenereserveResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[443]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenereserveResponse.ProtoReflect.Descriptor instead.
func (*AskrenereserveResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{443}
}

type AskrenereservePath struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AmountMsat        *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	ShortChannelIdDir *string `protobuf:"bytes,4,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3,oneof" json:"short_channel_id_dir,omitempty"`
}

func (x *AskrenereservePath) Reset() {
	*x = AskrenereservePath{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[444]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenereservePath) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenereservePath) ProtoMessage() {}

func (x *AskrenereservePath) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[444]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenereservePath.ProtoReflect.Descriptor instead.
func (*AskrenereservePath) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{444}
}

func (x *AskrenereservePath) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *AskrenereservePath) GetShortChannelIdDir() string {
	if x != nil && x.ShortChannelIdDir != nil {
		return *x.ShortChannelIdDir
	}
	return ""
}

type AskreneageRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer  string `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	Cutoff uint64 `protobuf:"varint,2,opt,name=cutoff,proto3" json:"cutoff,omitempty"`
}

func (x *AskreneageRequest) Reset() {
	*x = AskreneageRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[445]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneageRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneageRequest) ProtoMessage() {}

func (x *AskreneageRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[445]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneageRequest.ProtoReflect.Descriptor instead.
func (*AskreneageRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{445}
}

func (x *AskreneageRequest) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskreneageRequest) GetCutoff() uint64 {
	if x != nil {
		return x.Cutoff
	}
	return 0
}

type AskreneageResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer      string `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	NumRemoved uint64 `protobuf:"varint,2,opt,name=num_removed,json=numRemoved,proto3" json:"num_removed,omitempty"`
}

func (x *AskreneageResponse) Reset() {
	*x = AskreneageResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[446]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneageResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneageResponse) ProtoMessage() {}

func (x *AskreneageResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[446]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneageResponse.ProtoReflect.Descriptor instead.
func (*AskreneageResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{446}
}

func (x *AskreneageResponse) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskreneageResponse) GetNumRemoved() uint64 {
	if x != nil {
		return x.NumRemoved
	}
	return 0
}

type GetroutesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Source      []byte   `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
	Destination []byte   `protobuf:"bytes,2,opt,name=destination,proto3" json:"destination,omitempty"`
	AmountMsat  *Amount  `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	Layers      []string `protobuf:"bytes,4,rep,name=layers,proto3" json:"layers,omitempty"`
	MaxfeeMsat  *Amount  `protobuf:"bytes,5,opt,name=maxfee_msat,json=maxfeeMsat,proto3" json:"maxfee_msat,omitempty"`
	FinalCltv   *uint32  `protobuf:"varint,7,opt,name=final_cltv,json=finalCltv,proto3,oneof" json:"final_cltv,omitempty"`
}

func (x *GetroutesRequest) Reset() {
	*x = GetroutesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[447]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetroutesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetroutesRequest) ProtoMessage() {}

func (x *GetroutesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[447]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetroutesRequest.ProtoReflect.Descriptor instead.
func (*GetroutesRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{447}
}

func (x *GetroutesRequest) GetSource() []byte {
	if x != nil {
		return x.Source
	}
	return nil
}

func (x *GetroutesRequest) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *GetroutesRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *GetroutesRequest) GetLayers() []string {
	if x != nil {
		return x.Layers
	}
	return nil
}

func (x *GetroutesRequest) GetMaxfeeMsat() *Amount {
	if x != nil {
		return x.MaxfeeMsat
	}
	return nil
}

func (x *GetroutesRequest) GetFinalCltv() uint32 {
	if x != nil && x.FinalCltv != nil {
		return *x.FinalCltv
	}
	return 0
}

type GetroutesResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ProbabilityPpm uint64             `protobuf:"varint,1,opt,name=probability_ppm,json=probabilityPpm,proto3" json:"probability_ppm,omitempty"`
	Routes         []*GetroutesRoutes `protobuf:"bytes,2,rep,name=routes,proto3" json:"routes,omitempty"`
}

func (x *GetroutesResponse) Reset() {
	*x = GetroutesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[448]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetroutesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetroutesResponse) ProtoMessage() {}

func (x *GetroutesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[448]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetroutesResponse.ProtoReflect.Descriptor instead.
func (*GetroutesResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{448}
}

func (x *GetroutesResponse) GetProbabilityPpm() uint64 {
	if x != nil {
		return x.ProbabilityPpm
	}
	return 0
}

func (x *GetroutesResponse) GetRoutes() []*GetroutesRoutes {
	if x != nil {
		return x.Routes
	}
	return nil
}

type GetroutesRoutes struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ProbabilityPpm uint64                 `protobuf:"varint,1,opt,name=probability_ppm,json=probabilityPpm,proto3" json:"probability_ppm,omitempty"`
	AmountMsat     *Amount                `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	Path           []*GetroutesRoutesPath `protobuf:"bytes,3,rep,name=path,proto3" json:"path,omitempty"`
	FinalCltv      *uint32                `protobuf:"varint,4,opt,name=final_cltv,json=finalCltv,proto3,oneof" json:"final_cltv,omitempty"`
}

func (x *GetroutesRoutes) Reset() {
	*x = GetroutesRoutes{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[449]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetroutesRoutes) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetroutesRoutes) ProtoMessage() {}

func (x *GetroutesRoutes) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[449]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetroutesRoutes.ProtoReflect.Descriptor instead.
func (*GetroutesRoutes) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{449}
}

func (x *GetroutesRoutes) GetProbabilityPpm() uint64 {
	if x != nil {
		return x.ProbabilityPpm
	}
	return 0
}

func (x *GetroutesRoutes) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *GetroutesRoutes) GetPath() []*GetroutesRoutesPath {
	if x != nil {
		return x.Path
	}
	return nil
}

func (x *GetroutesRoutes) GetFinalCltv() uint32 {
	if x != nil && x.FinalCltv != nil {
		return *x.FinalCltv
	}
	return 0
}

type GetroutesRoutesPath struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AmountMsat        *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	NextNodeId        []byte  `protobuf:"bytes,4,opt,name=next_node_id,json=nextNodeId,proto3" json:"next_node_id,omitempty"`
	Delay             uint32  `protobuf:"varint,5,opt,name=delay,proto3" json:"delay,omitempty"`
	ShortChannelIdDir *string `protobuf:"bytes,6,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3,oneof" json:"short_channel_id_dir,omitempty"`
}

func (x *GetroutesRoutesPath) Reset() {
	*x = GetroutesRoutesPath{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[450]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetroutesRoutesPath) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetroutesRoutesPath) ProtoMessage() {}

func (x *GetroutesRoutesPath) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[450]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetroutesRoutesPath.ProtoReflect.Descriptor instead.
func (*GetroutesRoutesPath) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{450}
}

func (x *GetroutesRoutesPath) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *GetroutesRoutesPath) GetNextNodeId() []byte {
	if x != nil {
		return x.NextNodeId
	}
	return nil
}

func (x *GetroutesRoutesPath) GetDelay() uint32 {
	if x != nil {
		return x.Delay
	}
	return 0
}

func (x *GetroutesRoutesPath) GetShortChannelIdDir() string {
	if x != nil && x.ShortChannelIdDir != nil {
		return *x.ShortChannelIdDir
	}
	return ""
}

type AskrenedisablenodeRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer string `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	Node  []byte `protobuf:"bytes,2,opt,name=node,proto3" json:"node,omitempty"`
}

func (x *AskrenedisablenodeRequest) Reset() {
	*x = AskrenedisablenodeRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[451]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenedisablenodeRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenedisablenodeRequest) ProtoMessage() {}

func (x *AskrenedisablenodeRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[451]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenedisablenodeRequest.ProtoReflect.Descriptor instead.
func (*AskrenedisablenodeRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{451}
}

func (x *AskrenedisablenodeRequest) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskrenedisablenodeRequest) GetNode() []byte {
	if x != nil {
		return x.Node
	}
	return nil
}

type AskrenedisablenodeResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AskrenedisablenodeResponse) Reset() {
	*x = AskrenedisablenodeResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[452]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenedisablenodeResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenedisablenodeResponse) ProtoMessage() {}

func (x *AskrenedisablenodeResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[452]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenedisablenodeResponse.ProtoReflect.Descriptor instead.
func (*AskrenedisablenodeResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{452}
}

type AskreneinformchannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer             string                                                  `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	ShortChannelIdDir *string                                                 `protobuf:"bytes,6,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3,oneof" json:"short_channel_id_dir,omitempty"`
	AmountMsat        *Amount                                                 `protobuf:"bytes,7,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Inform            *AskreneinformchannelRequest_AskreneinformchannelInform `protobuf:"varint,8,opt,name=inform,proto3,enum=cln.AskreneinformchannelRequest_AskreneinformchannelInform,oneof" json:"inform,omitempty"`
}

func (x *AskreneinformchannelRequest) Reset() {
	*x = AskreneinformchannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[453]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneinformchannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneinformchannelRequest) ProtoMessage() {}

func (x *AskreneinformchannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[453]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneinformchannelRequest.ProtoReflect.Descriptor instead.
func (*AskreneinformchannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{453}
}

func (x *AskreneinformchannelRequest) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskreneinformchannelRequest) GetShortChannelIdDir() string {
	if x != nil && x.ShortChannelIdDir != nil {
		return *x.ShortChannelIdDir
	}
	return ""
}

func (x *AskreneinformchannelRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *AskreneinformchannelRequest) GetInform() AskreneinformchannelRequest_AskreneinformchannelInform {
	if x != nil && x.Inform != nil {
		return *x.Inform
	}
	return AskreneinformchannelRequest_CONSTRAINED
}

type AskreneinformchannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Constraints []*AskreneinformchannelConstraints `protobuf:"bytes,2,rep,name=constraints,proto3" json:"constraints,omitempty"`
}

func (x *AskreneinformchannelResponse) Reset() {
	*x = AskreneinformchannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[454]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneinformchannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneinformchannelResponse) ProtoMessage() {}

func (x *AskreneinformchannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[454]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneinformchannelResponse.ProtoReflect.Descriptor instead.
func (*AskreneinformchannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{454}
}

func (x *AskreneinformchannelResponse) GetConstraints() []*AskreneinformchannelConstraints {
	if x != nil {
		return x.Constraints
	}
	return nil
}

type AskreneinformchannelConstraints struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ShortChannelIdDir string  `protobuf:"bytes,1,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3" json:"short_channel_id_dir,omitempty"`
	Layer             string  `protobuf:"bytes,2,opt,name=layer,proto3" json:"layer,omitempty"`
	Timestamp         uint64  `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	MaximumMsat       *Amount `protobuf:"bytes,4,opt,name=maximum_msat,json=maximumMsat,proto3,oneof" json:"maximum_msat,omitempty"`
	MinimumMsat       *Amount `protobuf:"bytes,5,opt,name=minimum_msat,json=minimumMsat,proto3,oneof" json:"minimum_msat,omitempty"`
}

func (x *AskreneinformchannelConstraints) Reset() {
	*x = AskreneinformchannelConstraints{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[455]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneinformchannelConstraints) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneinformchannelConstraints) ProtoMessage() {}

func (x *AskreneinformchannelConstraints) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[455]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneinformchannelConstraints.ProtoReflect.Descriptor instead.
func (*AskreneinformchannelConstraints) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{455}
}

func (x *AskreneinformchannelConstraints) GetShortChannelIdDir() string {
	if x != nil {
		return x.ShortChannelIdDir
	}
	return ""
}

func (x *AskreneinformchannelConstraints) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskreneinformchannelConstraints) GetTimestamp() uint64 {
	if x != nil {
		return x.Timestamp
	}
	return 0
}

func (x *AskreneinformchannelConstraints) GetMaximumMsat() *Amount {
	if x != nil {
		return x.MaximumMsat
	}
	return nil
}

func (x *AskreneinformchannelConstraints) GetMinimumMsat() *Amount {
	if x != nil {
		return x.MinimumMsat
	}
	return nil
}

type AskrenecreatechannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer          string  `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	Source         []byte  `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
	Destination    []byte  `protobuf:"bytes,3,opt,name=destination,proto3" json:"destination,omitempty"`
	ShortChannelId string  `protobuf:"bytes,4,opt,name=short_channel_id,json=shortChannelId,proto3" json:"short_channel_id,omitempty"`
	CapacityMsat   *Amount `protobuf:"bytes,5,opt,name=capacity_msat,json=capacityMsat,proto3" json:"capacity_msat,omitempty"`
}

func (x *AskrenecreatechannelRequest) Reset() {
	*x = AskrenecreatechannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[456]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatechannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatechannelRequest) ProtoMessage() {}

func (x *AskrenecreatechannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[456]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatechannelRequest.ProtoReflect.Descriptor instead.
func (*AskrenecreatechannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{456}
}

func (x *AskrenecreatechannelRequest) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskrenecreatechannelRequest) GetSource() []byte {
	if x != nil {
		return x.Source
	}
	return nil
}

func (x *AskrenecreatechannelRequest) GetDestination() []byte {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *AskrenecreatechannelRequest) GetShortChannelId() string {
	if x != nil {
		return x.ShortChannelId
	}
	return ""
}

func (x *AskrenecreatechannelRequest) GetCapacityMsat() *Amount {
	if x != nil {
		return x.CapacityMsat
	}
	return nil
}

type AskrenecreatechannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AskrenecreatechannelResponse) Reset() {
	*x = AskrenecreatechannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[457]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenecreatechannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenecreatechannelResponse) ProtoMessage() {}

func (x *AskrenecreatechannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[457]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenecreatechannelResponse.ProtoReflect.Descriptor instead.
func (*AskrenecreatechannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{457}
}

type AskreneupdatechannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer                     string  `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	ShortChannelIdDir         string  `protobuf:"bytes,2,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3" json:"short_channel_id_dir,omitempty"`
	Enabled                   *bool   `protobuf:"varint,3,opt,name=enabled,proto3,oneof" json:"enabled,omitempty"`
	HtlcMinimumMsat           *Amount `protobuf:"bytes,4,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3,oneof" json:"htlc_minimum_msat,omitempty"`
	HtlcMaximumMsat           *Amount `protobuf:"bytes,5,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3,oneof" json:"htlc_maximum_msat,omitempty"`
	FeeBaseMsat               *Amount `protobuf:"bytes,6,opt,name=fee_base_msat,json=feeBaseMsat,proto3,oneof" json:"fee_base_msat,omitempty"`
	FeeProportionalMillionths *uint32 `protobuf:"varint,7,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3,oneof" json:"fee_proportional_millionths,omitempty"`
	CltvExpiryDelta           *uint32 `protobuf:"varint,8,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3,oneof" json:"cltv_expiry_delta,omitempty"`
}

func (x *AskreneupdatechannelRequest) Reset() {
	*x = AskreneupdatechannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[458]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneupdatechannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneupdatechannelRequest) ProtoMessage() {}

func (x *AskreneupdatechannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[458]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneupdatechannelRequest.ProtoReflect.Descriptor instead.
func (*AskreneupdatechannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{458}
}

func (x *AskreneupdatechannelRequest) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskreneupdatechannelRequest) GetShortChannelIdDir() string {
	if x != nil {
		return x.ShortChannelIdDir
	}
	return ""
}

func (x *AskreneupdatechannelRequest) GetEnabled() bool {
	if x != nil && x.Enabled != nil {
		return *x.Enabled
	}
	return false
}

func (x *AskreneupdatechannelRequest) GetHtlcMinimumMsat() *Amount {
	if x != nil {
		return x.HtlcMinimumMsat
	}
	return nil
}

func (x *AskreneupdatechannelRequest) GetHtlcMaximumMsat() *Amount {
	if x != nil {
		return x.HtlcMaximumMsat
	}
	return nil
}

func (x *AskreneupdatechannelRequest) GetFeeBaseMsat() *Amount {
	if x != nil {
		return x.FeeBaseMsat
	}
	return nil
}

func (x *AskreneupdatechannelRequest) GetFeeProportionalMillionths() uint32 {
	if x != nil && x.FeeProportionalMillionths != nil {
		return *x.FeeProportionalMillionths
	}
	return 0
}

func (x *AskreneupdatechannelRequest) GetCltvExpiryDelta() uint32 {
	if x != nil && x.CltvExpiryDelta != nil {
		return *x.CltvExpiryDelta
	}
	return 0
}

type AskreneupdatechannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AskreneupdatechannelResponse) Reset() {
	*x = AskreneupdatechannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[459]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskreneupdatechannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskreneupdatechannelResponse) ProtoMessage() {}

func (x *AskreneupdatechannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[459]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskreneupdatechannelResponse.ProtoReflect.Descriptor instead.
func (*AskreneupdatechannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{459}
}

type AskrenebiaschannelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer             string  `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	ShortChannelIdDir string  `protobuf:"bytes,2,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3" json:"short_channel_id_dir,omitempty"`
	Bias              int64   `protobuf:"zigzag64,3,opt,name=bias,proto3" json:"bias,omitempty"`
	Description       *string `protobuf:"bytes,4,opt,name=description,proto3,oneof" json:"description,omitempty"`
}

func (x *AskrenebiaschannelRequest) Reset() {
	*x = AskrenebiaschannelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[460]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenebiaschannelRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenebiaschannelRequest) ProtoMessage() {}

func (x *AskrenebiaschannelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[460]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenebiaschannelRequest.ProtoReflect.Descriptor instead.
func (*AskrenebiaschannelRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{460}
}

func (x *AskrenebiaschannelRequest) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskrenebiaschannelRequest) GetShortChannelIdDir() string {
	if x != nil {
		return x.ShortChannelIdDir
	}
	return ""
}

func (x *AskrenebiaschannelRequest) GetBias() int64 {
	if x != nil {
		return x.Bias
	}
	return 0
}

func (x *AskrenebiaschannelRequest) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

type AskrenebiaschannelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Biases []*AskrenebiaschannelBiases `protobuf:"bytes,1,rep,name=biases,proto3" json:"biases,omitempty"`
}

func (x *AskrenebiaschannelResponse) Reset() {
	*x = AskrenebiaschannelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[461]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenebiaschannelResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenebiaschannelResponse) ProtoMessage() {}

func (x *AskrenebiaschannelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[461]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenebiaschannelResponse.ProtoReflect.Descriptor instead.
func (*AskrenebiaschannelResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{461}
}

func (x *AskrenebiaschannelResponse) GetBiases() []*AskrenebiaschannelBiases {
	if x != nil {
		return x.Biases
	}
	return nil
}

type AskrenebiaschannelBiases struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Layer             string  `protobuf:"bytes,1,opt,name=layer,proto3" json:"layer,omitempty"`
	ShortChannelIdDir string  `protobuf:"bytes,2,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3" json:"short_channel_id_dir,omitempty"`
	Bias              int64   `protobuf:"zigzag64,3,opt,name=bias,proto3" json:"bias,omitempty"`
	Description       *string `protobuf:"bytes,4,opt,name=description,proto3,oneof" json:"description,omitempty"`
}

func (x *AskrenebiaschannelBiases) Reset() {
	*x = AskrenebiaschannelBiases{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[462]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenebiaschannelBiases) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenebiaschannelBiases) ProtoMessage() {}

func (x *AskrenebiaschannelBiases) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[462]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenebiaschannelBiases.ProtoReflect.Descriptor instead.
func (*AskrenebiaschannelBiases) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{462}
}

func (x *AskrenebiaschannelBiases) GetLayer() string {
	if x != nil {
		return x.Layer
	}
	return ""
}

func (x *AskrenebiaschannelBiases) GetShortChannelIdDir() string {
	if x != nil {
		return x.ShortChannelIdDir
	}
	return ""
}

func (x *AskrenebiaschannelBiases) GetBias() int64 {
	if x != nil {
		return x.Bias
	}
	return 0
}

func (x *AskrenebiaschannelBiases) GetDescription() string {
	if x != nil && x.Description != nil {
		return *x.Description
	}
	return ""
}

type AskrenelistreservationsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AskrenelistreservationsRequest) Reset() {
	*x = AskrenelistreservationsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[463]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistreservationsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistreservationsRequest) ProtoMessage() {}

func (x *AskrenelistreservationsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[463]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistreservationsRequest.ProtoReflect.Descriptor instead.
func (*AskrenelistreservationsRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{463}
}

type AskrenelistreservationsResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Reservations []*AskrenelistreservationsReservations `protobuf:"bytes,1,rep,name=reservations,proto3" json:"reservations,omitempty"`
}

func (x *AskrenelistreservationsResponse) Reset() {
	*x = AskrenelistreservationsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[464]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistreservationsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistreservationsResponse) ProtoMessage() {}

func (x *AskrenelistreservationsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[464]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistreservationsResponse.ProtoReflect.Descriptor instead.
func (*AskrenelistreservationsResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{464}
}

func (x *AskrenelistreservationsResponse) GetReservations() []*AskrenelistreservationsReservations {
	if x != nil {
		return x.Reservations
	}
	return nil
}

type AskrenelistreservationsReservations struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ShortChannelIdDir string  `protobuf:"bytes,1,opt,name=short_channel_id_dir,json=shortChannelIdDir,proto3" json:"short_channel_id_dir,omitempty"`
	AmountMsat        *Amount `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	AgeInSeconds      uint64  `protobuf:"varint,3,opt,name=age_in_seconds,json=ageInSeconds,proto3" json:"age_in_seconds,omitempty"`
	CommandId         string  `protobuf:"bytes,4,opt,name=command_id,json=commandId,proto3" json:"command_id,omitempty"`
}

func (x *AskrenelistreservationsReservations) Reset() {
	*x = AskrenelistreservationsReservations{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[465]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AskrenelistreservationsReservations) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AskrenelistreservationsReservations) ProtoMessage() {}

func (x *AskrenelistreservationsReservations) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[465]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AskrenelistreservationsReservations.ProtoReflect.Descriptor instead.
func (*AskrenelistreservationsReservations) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{465}
}

func (x *AskrenelistreservationsReservations) GetShortChannelIdDir() string {
	if x != nil {
		return x.ShortChannelIdDir
	}
	return ""
}

func (x *AskrenelistreservationsReservations) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *AskrenelistreservationsReservations) GetAgeInSeconds() uint64 {
	if x != nil {
		return x.AgeInSeconds
	}
	return 0
}

func (x *AskrenelistreservationsReservations) GetCommandId() string {
	if x != nil {
		return x.CommandId
	}
	return ""
}

type InjectpaymentonionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Onion           []byte  `protobuf:"bytes,1,opt,name=onion,proto3" json:"onion,omitempty"`
	PaymentHash     []byte  `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"`
	AmountMsat      *Amount `protobuf:"bytes,3,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	CltvExpiry      uint32  `protobuf:"varint,4,opt,name=cltv_expiry,json=cltvExpiry,proto3" json:"cltv_expiry,omitempty"`
	Partid          uint64  `protobuf:"varint,5,opt,name=partid,proto3" json:"partid,omitempty"`
	Groupid         uint64  `protobuf:"varint,6,opt,name=groupid,proto3" json:"groupid,omitempty"`
	Label           *string `protobuf:"bytes,7,opt,name=label,proto3,oneof" json:"label,omitempty"`
	Invstring       *string `protobuf:"bytes,8,opt,name=invstring,proto3,oneof" json:"invstring,omitempty"`
	Localinvreqid   []byte  `protobuf:"bytes,9,opt,name=localinvreqid,proto3,oneof" json:"localinvreqid,omitempty"`
	DestinationMsat *Amount `protobuf:"bytes,10,opt,name=destination_msat,json=destinationMsat,proto3,oneof" json:"destination_msat,omitempty"`
}

func (x *InjectpaymentonionRequest) Reset() {
	*x = InjectpaymentonionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[466]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InjectpaymentonionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InjectpaymentonionRequest) ProtoMessage() {}

func (x *InjectpaymentonionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[466]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InjectpaymentonionRequest.ProtoReflect.Descriptor instead.
func (*InjectpaymentonionRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{466}
}

func (x *InjectpaymentonionRequest) GetOnion() []byte {
	if x != nil {
		return x.Onion
	}
	return nil
}

func (x *InjectpaymentonionRequest) GetPaymentHash() []byte {
	if x != nil {
		return x.PaymentHash
	}
	return nil
}

func (x *InjectpaymentonionRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *InjectpaymentonionRequest) GetCltvExpiry() uint32 {
	if x != nil {
		return x.CltvExpiry
	}
	return 0
}

func (x *InjectpaymentonionRequest) GetPartid() uint64 {
	if x != nil {
		return x.Partid
	}
	return 0
}

func (x *InjectpaymentonionRequest) GetGroupid() uint64 {
	if x != nil {
		return x.Groupid
	}
	return 0
}

func (x *InjectpaymentonionRequest) GetLabel() string {
	if x != nil && x.Label != nil {
		return *x.Label
	}
	return ""
}

func (x *InjectpaymentonionRequest) GetInvstring() string {
	if x != nil && x.Invstring != nil {
		return *x.Invstring
	}
	return ""
}

func (x *InjectpaymentonionRequest) GetLocalinvreqid() []byte {
	if x != nil {
		return x.Localinvreqid
	}
	return nil
}

func (x *InjectpaymentonionRequest) GetDestinationMsat() *Amount {
	if x != nil {
		return x.DestinationMsat
	}
	return nil
}

type InjectpaymentonionResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CreatedAt       uint64 `protobuf:"varint,1,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	CompletedAt     uint64 `protobuf:"varint,2,opt,name=completed_at,json=completedAt,proto3" json:"completed_at,omitempty"`
	CreatedIndex    uint64 `protobuf:"varint,3,opt,name=created_index,json=createdIndex,proto3" json:"created_index,omitempty"`
	PaymentPreimage []byte `protobuf:"bytes,4,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
}

func (x *InjectpaymentonionResponse) Reset() {
	*x = InjectpaymentonionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[467]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InjectpaymentonionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InjectpaymentonionResponse) ProtoMessage() {}

func (x *InjectpaymentonionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[467]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InjectpaymentonionResponse.ProtoReflect.Descriptor instead.
func (*InjectpaymentonionResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{467}
}

func (x *InjectpaymentonionResponse) GetCreatedAt() uint64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *InjectpaymentonionResponse) GetCompletedAt() uint64 {
	if x != nil {
		return x.CompletedAt
	}
	return 0
}

func (x *InjectpaymentonionResponse) GetCreatedIndex() uint64 {
	if x != nil {
		return x.CreatedIndex
	}
	return 0
}

func (x *InjectpaymentonionResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

type XpayRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Invstring   string   `protobuf:"bytes,1,opt,name=invstring,proto3" json:"invstring,omitempty"`
	AmountMsat  *Amount  `protobuf:"bytes,2,opt,name=amount_msat,json=amountMsat,proto3,oneof" json:"amount_msat,omitempty"`
	Maxfee      *Amount  `protobuf:"bytes,3,opt,name=maxfee,proto3,oneof" json:"maxfee,omitempty"`
	Layers      []string `protobuf:"bytes,4,rep,name=layers,proto3" json:"layers,omitempty"`
	RetryFor    *uint32  `protobuf:"varint,5,opt,name=retry_for,json=retryFor,proto3,oneof" json:"retry_for,omitempty"`
	PartialMsat *Amount  `protobuf:"bytes,6,opt,name=partial_msat,json=partialMsat,proto3,oneof" json:"partial_msat,omitempty"`
}

func (x *XpayRequest) Reset() {
	*x = XpayRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[468]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *XpayRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*XpayRequest) ProtoMessage() {}

func (x *XpayRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[468]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use XpayRequest.ProtoReflect.Descriptor instead.
func (*XpayRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{468}
}

func (x *XpayRequest) GetInvstring() string {
	if x != nil {
		return x.Invstring
	}
	return ""
}

func (x *XpayRequest) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *XpayRequest) GetMaxfee() *Amount {
	if x != nil {
		return x.Maxfee
	}
	return nil
}

func (x *XpayRequest) GetLayers() []string {
	if x != nil {
		return x.Layers
	}
	return nil
}

func (x *XpayRequest) GetRetryFor() uint32 {
	if x != nil && x.RetryFor != nil {
		return *x.RetryFor
	}
	return 0
}

func (x *XpayRequest) GetPartialMsat() *Amount {
	if x != nil {
		return x.PartialMsat
	}
	return nil
}

type XpayResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PaymentPreimage []byte  `protobuf:"bytes,1,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"`
	FailedParts     uint64  `protobuf:"varint,2,opt,name=failed_parts,json=failedParts,proto3" json:"failed_parts,omitempty"`
	SuccessfulParts uint64  `protobuf:"varint,3,opt,name=successful_parts,json=successfulParts,proto3" json:"successful_parts,omitempty"`
	AmountMsat      *Amount `protobuf:"bytes,4,opt,name=amount_msat,json=amountMsat,proto3" json:"amount_msat,omitempty"`
	AmountSentMsat  *Amount `protobuf:"bytes,5,opt,name=amount_sent_msat,json=amountSentMsat,proto3" json:"amount_sent_msat,omitempty"`
}

func (x *XpayResponse) Reset() {
	*x = XpayResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[469]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *XpayResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*XpayResponse) ProtoMessage() {}

func (x *XpayResponse) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[469]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use XpayResponse.ProtoReflect.Descriptor instead.
func (*XpayResponse) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{469}
}

func (x *XpayResponse) GetPaymentPreimage() []byte {
	if x != nil {
		return x.PaymentPreimage
	}
	return nil
}

func (x *XpayResponse) GetFailedParts() uint64 {
	if x != nil {
		return x.FailedParts
	}
	return 0
}

func (x *XpayResponse) GetSuccessfulParts() uint64 {
	if x != nil {
		return x.SuccessfulParts
	}
	return 0
}

func (x *XpayResponse) GetAmountMsat() *Amount {
	if x != nil {
		return x.AmountMsat
	}
	return nil
}

func (x *XpayResponse) GetAmountSentMsat() *Amount {
	if x != nil {
		return x.AmountSentMsat
	}
	return nil
}

type StreamBlockAddedRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StreamBlockAddedRequest) Reset() {
	*x = StreamBlockAddedRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[470]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StreamBlockAddedRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StreamBlockAddedRequest) ProtoMessage() {}

func (x *StreamBlockAddedRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[470]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StreamBlockAddedRequest.ProtoReflect.Descriptor instead.
func (*StreamBlockAddedRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{470}
}

type BlockAddedNotification struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Hash   []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
	Height uint32 `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`
}

func (x *BlockAddedNotification) Reset() {
	*x = BlockAddedNotification{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[471]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BlockAddedNotification) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BlockAddedNotification) ProtoMessage() {}

func (x *BlockAddedNotification) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[471]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BlockAddedNotification.ProtoReflect.Descriptor instead.
func (*BlockAddedNotification) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{471}
}

func (x *BlockAddedNotification) GetHash() []byte {
	if x != nil {
		return x.Hash
	}
	return nil
}

func (x *BlockAddedNotification) GetHeight() uint32 {
	if x != nil {
		return x.Height
	}
	return 0
}

type StreamChannelOpenFailedRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StreamChannelOpenFailedRequest) Reset() {
	*x = StreamChannelOpenFailedRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[472]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StreamChannelOpenFailedRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StreamChannelOpenFailedRequest) ProtoMessage() {}

func (x *StreamChannelOpenFailedRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[472]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StreamChannelOpenFailedRequest.ProtoReflect.Descriptor instead.
func (*StreamChannelOpenFailedRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{472}
}

type ChannelOpenFailedNotification struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ChannelId []byte `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
}

func (x *ChannelOpenFailedNotification) Reset() {
	*x = ChannelOpenFailedNotification{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[473]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ChannelOpenFailedNotification) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ChannelOpenFailedNotification) ProtoMessage() {}

func (x *ChannelOpenFailedNotification) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[473]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ChannelOpenFailedNotification.ProtoReflect.Descriptor instead.
func (*ChannelOpenFailedNotification) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{473}
}

func (x *ChannelOpenFailedNotification) GetChannelId() []byte {
	if x != nil {
		return x.ChannelId
	}
	return nil
}

type StreamChannelOpenedRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StreamChannelOpenedRequest) Reset() {
	*x = StreamChannelOpenedRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[474]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StreamChannelOpenedRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StreamChannelOpenedRequest) ProtoMessage() {}

func (x *StreamChannelOpenedRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[474]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StreamChannelOpenedRequest.ProtoReflect.Descriptor instead.
func (*StreamChannelOpenedRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{474}
}

type ChannelOpenedNotification struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id           []byte  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	FundingMsat  *Amount `protobuf:"bytes,2,opt,name=funding_msat,json=fundingMsat,proto3" json:"funding_msat,omitempty"`
	FundingTxid  []byte  `protobuf:"bytes,3,opt,name=funding_txid,json=fundingTxid,proto3" json:"funding_txid,omitempty"`
	ChannelReady bool    `protobuf:"varint,4,opt,name=channel_ready,json=channelReady,proto3" json:"channel_ready,omitempty"`
}

func (x *ChannelOpenedNotification) Reset() {
	*x = ChannelOpenedNotification{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[475]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ChannelOpenedNotification) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ChannelOpenedNotification) ProtoMessage() {}

func (x *ChannelOpenedNotification) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[475]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ChannelOpenedNotification.ProtoReflect.Descriptor instead.
func (*ChannelOpenedNotification) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{475}
}

func (x *ChannelOpenedNotification) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *ChannelOpenedNotification) GetFundingMsat() *Amount {
	if x != nil {
		return x.FundingMsat
	}
	return nil
}

func (x *ChannelOpenedNotification) GetFundingTxid() []byte {
	if x != nil {
		return x.FundingTxid
	}
	return nil
}

func (x *ChannelOpenedNotification) GetChannelReady() bool {
	if x != nil {
		return x.ChannelReady
	}
	return false
}

type StreamConnectRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StreamConnectRequest) Reset() {
	*x = StreamConnectRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[476]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StreamConnectRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StreamConnectRequest) ProtoMessage() {}

func (x *StreamConnectRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[476]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StreamConnectRequest.ProtoReflect.Descriptor instead.
func (*StreamConnectRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{476}
}

type PeerConnectNotification struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id        []byte                                       `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Direction PeerConnectNotification_PeerConnectDirection `protobuf:"varint,2,opt,name=direction,proto3,enum=cln.PeerConnectNotification_PeerConnectDirection" json:"direction,omitempty"`
	Address   *PeerConnectAddress                          `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"`
}

func (x *PeerConnectNotification) Reset() {
	*x = PeerConnectNotification{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[477]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PeerConnectNotification) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PeerConnectNotification) ProtoMessage() {}

func (x *PeerConnectNotification) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[477]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PeerConnectNotification.ProtoReflect.Descriptor instead.
func (*PeerConnectNotification) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{477}
}

func (x *PeerConnectNotification) GetId() []byte {
	if x != nil {
		return x.Id
	}
	return nil
}

func (x *PeerConnectNotification) GetDirection() PeerConnectNotification_PeerConnectDirection {
	if x != nil {
		return x.Direction
	}
	return PeerConnectNotification_IN
}

func (x *PeerConnectNotification) GetAddress() *PeerConnectAddress {
	if x != nil {
		return x.Address
	}
	return nil
}

type PeerConnectAddress struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ItemType PeerConnectAddress_PeerConnectAddressType `protobuf:"varint,1,opt,name=item_type,json=itemType,proto3,enum=cln.PeerConnectAddress_PeerConnectAddressType" json:"item_type,omitempty"`
	Socket   *string                                   `protobuf:"bytes,2,opt,name=socket,proto3,oneof" json:"socket,omitempty"`
	Address  *string                                   `protobuf:"bytes,3,opt,name=address,proto3,oneof" json:"address,omitempty"`
	Port     *uint32                                   `protobuf:"varint,4,opt,name=port,proto3,oneof" json:"port,omitempty"`
}

func (x *PeerConnectAddress) Reset() {
	*x = PeerConnectAddress{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[478]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *PeerConnectAddress) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PeerConnectAddress) ProtoMessage() {}

func (x *PeerConnectAddress) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[478]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use PeerConnectAddress.ProtoReflect.Descriptor instead.
func (*PeerConnectAddress) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{478}
}

func (x *PeerConnectAddress) GetItemType() PeerConnectAddress_PeerConnectAddressType {
	if x != nil {
		return x.ItemType
	}
	return PeerConnectAddress_LOCAL_SOCKET
}

func (x *PeerConnectAddress) GetSocket() string {
	if x != nil && x.Socket != nil {
		return *x.Socket
	}
	return ""
}

func (x *PeerConnectAddress) GetAddress() string {
	if x != nil && x.Address != nil {
		return *x.Address
	}
	return ""
}

func (x *PeerConnectAddress) GetPort() uint32 {
	if x != nil && x.Port != nil {
		return *x.Port
	}
	return 0
}

type StreamCustomMsgRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *StreamCustomMsgRequest) Reset() {
	*x = StreamCustomMsgRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[479]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *StreamCustomMsgRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*StreamCustomMsgRequest) ProtoMessage() {}

func (x *StreamCustomMsgRequest) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[479]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use StreamCustomMsgRequest.ProtoReflect.Descriptor instead.
func (*StreamCustomMsgRequest) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{479}
}

type CustomMsgNotification struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PeerId  []byte `protobuf:"bytes,1,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
	Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
}

func (x *CustomMsgNotification) Reset() {
	*x = CustomMsgNotification{}
	if protoimpl.UnsafeEnabled {
		mi := &file_cln_node_proto_msgTypes[480]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CustomMsgNotification) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CustomMsgNotification) ProtoMessage() {}

func (x *CustomMsgNotification) ProtoReflect() protoreflect.Message {
	mi := &file_cln_node_proto_msgTypes[480]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CustomMsgNotification.ProtoReflect.Descriptor instead.
func (*CustomMsgNotification) Descriptor() ([]byte, []int) {
	return file_cln_node_proto_rawDescGZIP(), []int{480}
}

func (x *CustomMsgNotification) GetPeerId() []byte {
	if x != nil {
		return x.PeerId
	}
	return nil
}

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

var File_cln_node_proto protoreflect.FileDescriptor

var file_cln_node_proto_rawDesc = []byte{
	0x0a, 0x0e, 0x63, 0x6c, 0x6e, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x12, 0x03, 0x63, 0x6c, 0x6e, 0x1a, 0x14, 0x63, 0x6c, 0x6e, 0x2f, 0x70, 0x72, 0x69, 0x6d, 0x69,
	0x74, 0x69, 0x76, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x10, 0x0a, 0x0e, 0x47,
	0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa4, 0x06,
	0x0a, 0x0f, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x19, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x00, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x05,
	0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x63, 0x6f, 0x6c,
	0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12,
	0x30, 0x0a, 0x14, 0x6e, 0x75, 0x6d, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6e,
	0x75, 0x6d, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x73, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x75, 0x6d, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11,
	0x6e, 0x75, 0x6d, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x73, 0x12, 0x32, 0x0a, 0x15, 0x6e, 0x75, 0x6d, 0x5f, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76,
	0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x13, 0x6e, 0x75, 0x6d, 0x49, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
	0x23, 0x0a, 0x0d, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e,
	0x67, 0x44, 0x69, 0x72, 0x12, 0x40, 0x0a, 0x0c, 0x6f, 0x75, 0x72, 0x5f, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x4f, 0x75, 0x72, 0x5f, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x73, 0x48, 0x01, 0x52, 0x0b, 0x6f, 0x75, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68,
	0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f,
	0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x12, 0x3b, 0x0a, 0x13, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65,
	0x63, 0x74, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x11, 0x66, 0x65,
	0x65, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x12,
	0x2d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2d,
	0x0a, 0x07, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e,
	0x64, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x37, 0x0a,
	0x15, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e,
	0x64, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x13,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x42, 0x69, 0x74, 0x63, 0x6f, 0x69, 0x6e, 0x64, 0x53,
	0x79, 0x6e, 0x63, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x5f, 0x73, 0x79, 0x6e,
	0x63, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x15, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x53, 0x79, 0x6e, 0x63,
	0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x0f, 0x0a,
	0x0d, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x18,
	0x0a, 0x16, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x69, 0x74, 0x63, 0x6f,
	0x69, 0x6e, 0x64, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x77, 0x61, 0x72,
	0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x5f,
	0x73, 0x79, 0x6e, 0x63, 0x22, 0x71, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x4f,
	0x75, 0x72, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69,
	0x6e, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x69, 0x6e, 0x69, 0x74, 0x12,
	0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x6e,
	0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x18, 0x0a,
	0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x22, 0xdd, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x69,
	0x6e, 0x66, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x69, 0x74,
	0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70,
	0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88,
	0x01, 0x01, 0x22, 0x47, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x44, 0x4e, 0x53, 0x10,
	0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49,
	0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03,
	0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x33, 0x10, 0x04, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xd6, 0x02, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x69,
	0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x43, 0x0a, 0x09, 0x69, 0x74,
	0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e, 0x64, 0x69,
	0x6e, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x69, 0x6e, 0x64, 0x69, 0x6e,
	0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17,
	0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x04,
	0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65,
	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x07, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65,
	0x88, 0x01, 0x01, 0x22, 0x5f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x42, 0x69,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43,
	0x41, 0x4c, 0x5f, 0x53, 0x4f, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49,
	0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12,
	0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f,
	0x52, 0x56, 0x33, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x57, 0x45, 0x42, 0x53, 0x4f, 0x43, 0x4b,
	0x45, 0x54, 0x10, 0x05, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
	0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f,
	0x63, 0x6b, 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65,
	0x22, 0xc0, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x05, 0x6c, 0x65,
	0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x48,
	0x01, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x22, 0x45, 0x0a, 0x0e, 0x4c,
	0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x06, 0x0a,
	0x02, 0x49, 0x4f, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x01,
	0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e,
	0x55, 0x53, 0x55, 0x41, 0x4c, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45,
	0x10, 0x04, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x65,
	0x76, 0x65, 0x6c, 0x22, 0x3e, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x05, 0x70, 0x65, 0x65, 0x72,
	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x52, 0x05, 0x70, 0x65,
	0x65, 0x72, 0x73, 0x22, 0x9f, 0x02, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
	0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65,
	0x63, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x03, 0x6c, 0x6f, 0x67, 0x18, 0x03, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
	0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x4c, 0x6f, 0x67, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x12, 0x18,
	0x0a, 0x07, 0x6e, 0x65, 0x74, 0x61, 0x64, 0x64, 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x07, 0x6e, 0x65, 0x74, 0x61, 0x64, 0x64, 0x72, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x08, 0x66, 0x65,
	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x72, 0x65, 0x6d,
	0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01,
	0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12,
	0x26, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74,
	0x75, 0x72, 0x65, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xbf, 0x03, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
	0x65, 0x72, 0x73, 0x50, 0x65, 0x65, 0x72, 0x73, 0x4c, 0x6f, 0x67, 0x12, 0x49, 0x0a, 0x09, 0x69,
	0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65,
	0x65, 0x72, 0x73, 0x4c, 0x6f, 0x67, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73,
	0x50, 0x65, 0x65, 0x72, 0x73, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74,
	0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x6b,
	0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0a, 0x6e,
	0x75, 0x6d, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04,
	0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x74, 0x69,
	0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x88,
	0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x6c, 0x6f, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x03, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x6e, 0x6f, 0x64,
	0x65, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x06, 0x6e, 0x6f,
	0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01,
	0x22, 0x74, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x50, 0x65, 0x65,
	0x72, 0x73, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x4b, 0x49,
	0x50, 0x50, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x52, 0x4f, 0x4b, 0x45, 0x4e,
	0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x55, 0x53, 0x55, 0x41, 0x4c, 0x10, 0x02, 0x12,
	0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42,
	0x55, 0x47, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4f, 0x5f, 0x49, 0x4e, 0x10, 0x05, 0x12,
	0x0a, 0x0a, 0x06, 0x49, 0x4f, 0x5f, 0x4f, 0x55, 0x54, 0x10, 0x06, 0x12, 0x09, 0x0a, 0x05, 0x54,
	0x52, 0x41, 0x43, 0x45, 0x10, 0x07, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x73,
	0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42,
	0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x6c,
	0x6f, 0x67, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x07,
	0x0a, 0x05, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x22, 0x37, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x66,
	0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x73,
	0x70, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x73, 0x70,
	0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x74,
	0x22, 0x78, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x52, 0x07, 0x6f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xa8, 0x04, 0x0a, 0x10, 0x4c,
	0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74,
	0x78, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x2c, 0x0a, 0x0b, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a,
	0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
	0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0c,
	0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x0c, 0x48, 0x01, 0x52, 0x0c, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x62,
	0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d,
	0x48, 0x02, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x09,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x2f,
	0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c,
	0x6f, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x64, 0x54, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x88, 0x01, 0x01, 0x22,
	0x51, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x4f, 0x75, 0x74, 0x70,
	0x75, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x43,
	0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f,
	0x4e, 0x46, 0x49, 0x52, 0x4d, 0x45, 0x44, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x50, 0x45,
	0x4e, 0x54, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4d, 0x4d, 0x41, 0x54, 0x55, 0x52, 0x45,
	0x10, 0x03, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x0f,
	0x0a, 0x0d, 0x5f, 0x72, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42,
	0x0e, 0x0a, 0x0c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42,
	0x14, 0x0a, 0x12, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f,
	0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x97, 0x03, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75,
	0x6e, 0x64, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70,
	0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65,
	0x65, 0x72, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x0f, 0x6f, 0x75, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0d, 0x6f, 0x75, 0x72, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69,
	0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66,
	0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x70, 0x75,
	0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12,
	0x27, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x74, 0x61, 0x74,
	0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72,
	0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x09, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f,
	0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x22,
	0xb7, 0x04, 0x0a, 0x0e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x27, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x19,
	0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x31, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02,
	0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x04, 0x48, 0x03, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04,
	0x48, 0x04, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x31,
	0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x05, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
	0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
	0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x06, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61,
	0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x08, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a,
	0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72,
	0x65, 0x71, 0x69, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe5, 0x06, 0x0a, 0x0f, 0x53, 0x65,
	0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a,
	0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00,
	0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12,
	0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52,
	0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73,
	0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c,
	0x61, 0x62, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x05, 0x6c, 0x61,
	0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64,
	0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x0b, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01,
	0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x06, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a,
	0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
	0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
	0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08,
	0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c,
	0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01,
	0x28, 0x04, 0x48, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a, 0x52, 0x0c, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28,
	0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
	0x11, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x22, 0x2a, 0x0a, 0x0d, 0x53, 0x65, 0x6e, 0x64,
	0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e,
	0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45,
	0x54, 0x45, 0x10, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64,
	0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70,
	0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
	0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x0f, 0x0a, 0x0d,
	0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x10, 0x0a,
	0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
	0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x22, 0x7c, 0x0a, 0x0c, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x22,
	0xb8, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74,
	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73,
	0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42,
	0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64,
	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52,
	0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0x80, 0x05, 0x0a, 0x14, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65,
	0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10,
	0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x2c,
	0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x23, 0x0a, 0x0d,
	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6c, 0x61, 0x67,
	0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x6c, 0x61,
	0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1f,
	0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12,
	0x32, 0x0a, 0x15, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x69, 0x6c, 0x6c,
	0x69, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13,
	0x62, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x61, 0x74, 0x6f,
	0x73, 0x68, 0x69, 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6d,
	0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f,
	0x66, 0x65, 0x65, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x12,
	0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05,
	0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x37, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69,
	0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x68,
	0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3c,
	0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61,
	0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1a, 0x0a, 0x08,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
	0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0x2c, 0x0a, 0x10,
	0x41, 0x64, 0x64, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x13, 0x0a, 0x11, 0x41, 0x64,
	0x64, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0xd9, 0x01, 0x0a, 0x14, 0x41, 0x64, 0x64, 0x70, 0x73, 0x62, 0x74, 0x6f, 0x75, 0x74, 0x70, 0x75,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x25, 0x0a, 0x07, 0x73, 0x61, 0x74, 0x6f,
	0x73, 0x68, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12,
	0x1f, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x00, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01,
	0x12, 0x25, 0x0a, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c,
	0x70, 0x73, 0x62, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0b,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0b,
	0x0a, 0x09, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x79, 0x0a, 0x15, 0x41,
	0x64, 0x64, 0x70, 0x73, 0x62, 0x74, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x65, 0x73, 0x74, 0x69,
	0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x77, 0x65, 0x69, 0x67,
	0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61,
	0x74, 0x65, 0x64, 0x41, 0x64, 0x64, 0x65, 0x64, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x16,
	0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06,
	0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0x5f, 0x0a, 0x14, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
	0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35,
	0x0a, 0x09, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61,
	0x6e, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73,
	0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x03, 0x61, 0x67, 0x65, 0x22, 0x52, 0x0a, 0x15, 0x41, 0x75, 0x74, 0x6f, 0x63,
	0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x39, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
	0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x52, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x22, 0x8e, 0x05, 0x0a, 0x16,
	0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74,
	0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x12, 0x5f, 0x0a, 0x11, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65,
	0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61,
	0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75,
	0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x48,
	0x00, 0x52, 0x11, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77,
	0x61, 0x72, 0x64, 0x73, 0x88, 0x01, 0x01, 0x12, 0x56, 0x0a, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x65,
	0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f,
	0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c,
	0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x48, 0x01, 0x52, 0x0e, 0x66, 0x61,
	0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x88, 0x01, 0x01, 0x12,
	0x53, 0x0a, 0x0d, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74,
	0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
	0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73,
	0x48, 0x02, 0x52, 0x0d, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79,
	0x73, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61,
	0x79, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x48,
	0x03, 0x52, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x88, 0x01, 0x01,
	0x12, 0x50, 0x0a, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74,
	0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
	0x65, 0x61, 0x6e, 0x50, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x48,
	0x04, 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x88,
	0x01, 0x01, 0x12, 0x59, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41,
	0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x48, 0x05, 0x52, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72,
	0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x14, 0x0a,
	0x12, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61,
	0x72, 0x64, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f,
	0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65,
	0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66, 0x61, 0x69,
	0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x69, 0x64,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x65, 0x78, 0x70,
	0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x22, 0x61, 0x0a, 0x27,
	0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74,
	0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66,
	0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65,
	0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22,
	0x5e, 0x0a, 0x24, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65,
	0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66,
	0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65,
	0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22,
	0x5d, 0x0a, 0x23, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65,
	0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64,
	0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64,
	0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22, 0x5a,
	0x0a, 0x20, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41,
	0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61,
	0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09,
	0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
	0x09, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22, 0x5c, 0x0a, 0x22, 0x41, 0x75,
	0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63,
	0x6c, 0x65, 0x61, 0x6e, 0x50, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
	0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x6e,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x75,
	0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22, 0x5f, 0x0a, 0x25, 0x41, 0x75, 0x74, 0x6f,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
	0x61, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x75,
	0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09,
	0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x22, 0x62, 0x0a, 0x16, 0x41, 0x75, 0x74,
	0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74,
	0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x48,
	0x00, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x88, 0x01, 0x01, 0x42,
	0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x22, 0x56, 0x0a,
	0x17, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x6f,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x52, 0x09, 0x61, 0x75, 0x74, 0x6f,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x22, 0x9c, 0x05, 0x0a, 0x18, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
	0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
	0x61, 0x6e, 0x12, 0x61, 0x0a, 0x11, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66,
	0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63,
	0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x48, 0x00, 0x52,
	0x11, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
	0x64, 0x73, 0x88, 0x01, 0x01, 0x12, 0x58, 0x0a, 0x0e, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66,
	0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c,
	0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x48, 0x01, 0x52, 0x0e, 0x66, 0x61,
	0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x88, 0x01, 0x01, 0x12,
	0x55, 0x0a, 0x0d, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74,
	0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61,
	0x79, 0x73, 0x48, 0x02, 0x52, 0x0d, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70,
	0x61, 0x79, 0x73, 0x88, 0x01, 0x01, 0x12, 0x4c, 0x0a, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64,
	0x70, 0x61, 0x79, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70,
	0x61, 0x79, 0x73, 0x48, 0x03, 0x52, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79,
	0x73, 0x88, 0x01, 0x01, 0x12, 0x52, 0x0a, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x50, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x73, 0x48, 0x04, 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x5b, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x69,
	0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61,
	0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x48,
	0x05, 0x52, 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65,
	0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f,
	0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x42, 0x10,
	0x0a, 0x0e, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73,
	0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x42,
	0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
	0x42, 0x12, 0x0a, 0x10, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x73, 0x22, 0x7e, 0x0a, 0x29, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61,
	0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
	0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63,
	0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c,
	0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x04, 0x48, 0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04,
	0x5f, 0x61, 0x67, 0x65, 0x22, 0x7b, 0x0a, 0x26, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61,
	0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18,
	0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61,
	0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x65, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48,
	0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67,
	0x65, 0x22, 0x7a, 0x0a, 0x25, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x75, 0x63,
	0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e,
	0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61,
	0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x15,
	0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x03, 0x61,
	0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22, 0x77, 0x0a,
	0x22, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x70,
	0x61, 0x79, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a,
	0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07,
	0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06,
	0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22, 0x79, 0x0a, 0x24, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c,
	0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65,
	0x61, 0x6e, 0x50, 0x61, 0x69, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18,
	0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61,
	0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e,
	0x65, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48,
	0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67,
	0x65, 0x22, 0x7c, 0x0a, 0x27, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x45, 0x78, 0x70,
	0x69, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07,
	0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65,
	0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x65, 0x64,
	0x12, 0x15, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52,
	0x03, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x61, 0x67, 0x65, 0x22,
	0x6d, 0x0a, 0x13, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
	0x12, 0x14, 0x0a, 0x05, 0x7a, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x05, 0x7a, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79,
	0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x4a,
	0x0a, 0x14, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69,
	0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69,
	0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0xad, 0x03, 0x0a, 0x0c, 0x43,
	0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x31, 0x0a, 0x11, 0x75,
	0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x11, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74,
	0x65, 0x72, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x14, 0x66, 0x65, 0x65, 0x5f, 0x6e, 0x65, 0x67,
	0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x12, 0x66, 0x65, 0x65, 0x4e, 0x65, 0x67, 0x6f, 0x74, 0x69,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x65, 0x70, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x0d,
	0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69,
	0x6e, 0x74, 0x48, 0x03, 0x52, 0x0c, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x69,
	0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6c,
	0x65, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x04, 0x52, 0x10, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x43,
	0x6c, 0x6f, 0x73, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x72,
	0x61, 0x6e, 0x67, 0x65, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x08, 0x66, 0x65, 0x65, 0x72, 0x61, 0x6e,
	0x67, 0x65, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61,
	0x6c, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x66, 0x65, 0x65,
	0x5f, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x65,
	0x70, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64,
	0x69, 0x6e, 0x67, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x65,
	0x61, 0x73, 0x65, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x22, 0xe7, 0x01, 0x0a, 0x0d, 0x43,
	0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09,
	0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69,
	0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x74, 0x78, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04,
	0x74, 0x78, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x04, 0x74, 0x78,
	0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x04, 0x20, 0x03,
	0x28, 0x0c, 0x52, 0x03, 0x74, 0x78, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x78, 0x69, 0x64, 0x73,
	0x18, 0x05, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x05, 0x74, 0x78, 0x69, 0x64, 0x73, 0x22, 0x35, 0x0a,
	0x09, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x55,
	0x54, 0x55, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x4e, 0x49, 0x4c, 0x41, 0x54,
	0x45, 0x52, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4e, 0x4f, 0x50, 0x45, 0x4e,
	0x45, 0x44, 0x10, 0x02, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x74, 0x78, 0x42, 0x07, 0x0a, 0x05, 0x5f,
	0x74, 0x78, 0x69, 0x64, 0x22, 0x64, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x17, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52,
	0x04, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x68, 0x6f, 0x73,
	0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x0f, 0x43,
	0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e,
	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a,
	0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x64, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x2d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x23,
	0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x55,
	0x54, 0x10, 0x01, 0x22, 0x9c, 0x02, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x43,
	0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70,
	0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x73,
	0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x73,
	0x6f, 0x63, 0x6b, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x07, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01,
	0x22, 0x50, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f,
	0x53, 0x4f, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x34,
	0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05,
	0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x33,
	0x10, 0x04, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x0a, 0x0a,
	0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x6f,
	0x72, 0x74, 0x22, 0x66, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e,
	0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69,
	0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
	0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1a,
	0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xc0, 0x07, 0x0a, 0x15, 0x43,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f,
	0x6c, 0x74, 0x31, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62, 0x6f,
	0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x32, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0a, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x46, 0x0a, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f,
	0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65,
	0x73, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64,
	0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
	0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x04, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76,
	0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69,
	0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x06, 0x70, 0x61,
	0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x06, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69,
	0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
	0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x07, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88,
	0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79,
	0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52,
	0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65,
	0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69,
	0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x0c, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a,
	0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x11,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74,
	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x0a, 0x52, 0x0c, 0x70, 0x61, 0x69, 0x64, 0x4f, 0x75, 0x74,
	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22, 0x38, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
	0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50,
	0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44,
	0x10, 0x02, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a,
	0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79,
	0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
	0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x5f, 0x69, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70,
	0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
	0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x48, 0x0a,
	0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61,
	0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74,
	0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12,
	0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xd8, 0x02, 0x0a, 0x10, 0x44, 0x61, 0x74, 0x61,
	0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x03,
	0x68, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x68, 0x65, 0x78,
	0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x48, 0x01, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x88, 0x01, 0x01, 0x22, 0x70, 0x0a, 0x0d, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x55, 0x53, 0x54, 0x5f, 0x43,
	0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x55, 0x53, 0x54, 0x5f,
	0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x52, 0x45,
	0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x10, 0x02,
	0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x55, 0x53, 0x54, 0x5f, 0x41, 0x50, 0x50, 0x45, 0x4e, 0x44, 0x10,
	0x03, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52, 0x5f, 0x41,
	0x50, 0x50, 0x45, 0x4e, 0x44, 0x10, 0x04, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42,
	0x07, 0x0a, 0x05, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e,
	0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x22, 0xa0, 0x01, 0x0a, 0x11, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65,
	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0a,
	0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a,
	0x03, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x03, 0x68, 0x65,
	0x78, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01,
	0x01, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03,
	0x6b, 0x65, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73,
	0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x29, 0x0a, 0x15, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10,
	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
	0x22, 0x63, 0x0a, 0x16, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61,
	0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0e, 0x64, 0x61,
	0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
	0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
	0x75, 0x73, 0x61, 0x67, 0x65, 0x22, 0x51, 0x0a, 0x1c, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
	0x75, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c,
	0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xc5, 0x01, 0x0a, 0x12, 0x43, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x28, 0x0a, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x48,
	0x6f, 0x70, 0x73, 0x52, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x73, 0x73,
	0x6f, 0x63, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x61, 0x73,
	0x73, 0x6f, 0x63, 0x64, 0x61, 0x74, 0x61, 0x12, 0x24, 0x0a, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69,
	0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0a,
	0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a,
	0x0a, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x01, 0x52, 0x09, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x7a, 0x65, 0x88, 0x01,
	0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65,
	0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x7a, 0x65,
	0x22, 0x52, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a,
	0x0e, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18,
	0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x53, 0x65, 0x63,
	0x72, 0x65, 0x74, 0x73, 0x22, 0x43, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x48, 0x6f, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65,
	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12,
	0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x5b, 0x0a, 0x13, 0x44, 0x65, 0x6c,
	0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e, 0x65,
	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa3, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x64, 0x61,
	0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x01, 0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73,
	0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x73,
	0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
	0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67,
	0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65,
	0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0xcf, 0x01, 0x0a,
	0x11, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x3f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
	0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x08, 0x64, 0x65, 0x73,
	0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x08, 0x64,
	0x65, 0x73, 0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x88, 0x01, 0x01, 0x22, 0x35, 0x0a, 0x10, 0x44, 0x65,
	0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08,
	0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49,
	0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10,
	0x02, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0xa8,
	0x07, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74,
	0x31, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74,
	0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
	0x73, 0x68, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x69,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f,
	0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65,
	0x73, 0x41, 0x74, 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0c, 0x6c,
	0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2f,
	0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e,
	0x6f, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0f, 0x69, 0x6e, 0x76,
	0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04,
	0x48, 0x07, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78,
	0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64,
	0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
	0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x09, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76,
	0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69,
	0x64, 0x5f, 0x61, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a, 0x52, 0x06, 0x70, 0x61,
	0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x0b, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69,
	0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x22, 0x35, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x50,
	0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44,
	0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x02, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f,
	0x6c, 0x74, 0x31, 0x32, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76, 0x72,
	0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x10, 0x0a,
	0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
	0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
	0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69,
	0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69,
	0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xc5, 0x01, 0x0a, 0x17, 0x44, 0x65,
	0x76, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x00, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
	0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63,
	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65,
	0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x66, 0x6f, 0x72, 0x63,
	0x65, 0x22, 0x7e, 0x0a, 0x18, 0x44, 0x65, 0x76, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a,
	0x06, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x66,
	0x6f, 0x72, 0x63, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
	0x5f, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x12, 0x21,
	0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69,
	0x64, 0x22, 0x19, 0x0a, 0x17, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x72, 0x65,
	0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x30, 0x0a, 0x18,
	0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x75, 0x62,
	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x05, 0x73, 0x74, 0x75, 0x62, 0x73, 0x22, 0x20,
	0x0a, 0x1e, 0x47, 0x65, 0x74, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x72, 0x65,
	0x63, 0x6f, 0x76, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x22, 0x3d, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79,
	0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x64, 0x61, 0x74, 0x61, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x64, 0x61, 0x74, 0x61, 0x22,
	0x69, 0x0a, 0x13, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x73, 0x73, 0x70, 0x68,
	0x72, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x73, 0x73,
	0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69,
	0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a, 0x69, 0x64,
	0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
	0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x22, 0x50, 0x0a, 0x14, 0x45, 0x78,
	0x70, 0x6f, 0x73, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
	0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x78, 0x33, 0x32, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x64, 0x65, 0x78, 0x33, 0x32, 0x22, 0x2e, 0x0a, 0x0e,
	0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c,
	0x0a, 0x09, 0x68, 0x73, 0x6d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x09, 0x68, 0x73, 0x6d, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0x90, 0x01, 0x0a,
	0x0f, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x3f, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x88, 0x01,
	0x01, 0x22, 0x31, 0x0a, 0x0d, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x12, 0x20, 0x0a, 0x1c, 0x52, 0x45, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x52,
	0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x5f, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f, 0x47, 0x52, 0x45,
	0x53, 0x53, 0x10, 0x00, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22,
	0x29, 0x0a, 0x15, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x63, 0x62, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x03, 0x73, 0x63, 0x62, 0x22, 0x2e, 0x0a, 0x16, 0x52, 0x65,
	0x63, 0x6f, 0x76, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x75, 0x62, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x75, 0x62, 0x73, 0x22, 0x81, 0x03, 0x0a, 0x0e, 0x49,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63,
	0x6b, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61,
	0x63, 0x6b, 0x73, 0x12, 0x1f, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
	0x65, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x01, 0x52, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
	0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52,
	0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x15, 0x65, 0x78,
	0x70, 0x6f, 0x73, 0x65, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x15, 0x65, 0x78, 0x70, 0x6f, 0x73,
	0x65, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x12, 0x27, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x68, 0x61, 0x73, 0x68, 0x6f, 0x6e, 0x6c, 0x79,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x68, 0x61,
	0x73, 0x68, 0x6f, 0x6e, 0x6c, 0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x41, 0x6e, 0x79,
	0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09,
	0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x63, 0x6c,
	0x74, 0x76, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x0f, 0x0a,
	0x0d, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x68, 0x61, 0x73, 0x68, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0xa6,
	0x04, 0x0a, 0x0f, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61,
	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x25, 0x0a,
	0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65,
	0x63, 0x72, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f,
	0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65,
	0x73, 0x41, 0x74, 0x12, 0x2e, 0x0a, 0x10, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x63,
	0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x0f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79,
	0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6f,
	0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0e,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x2e, 0x0a, 0x10, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x61,
	0x64, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0f, 0x77,
	0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x61, 0x64, 0x65, 0x6e, 0x64, 0x73, 0x88, 0x01,
	0x01, 0x12, 0x39, 0x0a, 0x16, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x69,
	0x76, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x03, 0x52, 0x14, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x69, 0x76,
	0x61, 0x74, 0x65, 0x55, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x70, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x04, 0x52, 0x0a, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x70, 0x70, 0x88,
	0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x0c, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11,
	0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74,
	0x79, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66,
	0x66, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x65, 0x6e, 0x64, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x77,
	0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x75,
	0x6e, 0x75, 0x73, 0x65, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x6d, 0x70, 0x70, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0xa0, 0x02, 0x0a, 0x15, 0x49, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x23, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75,
	0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75,
	0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01,
	0x12, 0x2c, 0x0a, 0x0f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70,
	0x69, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x0e, 0x61, 0x62, 0x73,
	0x6f, 0x6c, 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x22,
	0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x03, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x88,
	0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x42, 0x08, 0x0a,
	0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x61, 0x62, 0x73, 0x6f,
	0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
	0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x22, 0xbd, 0x01, 0x0a, 0x16, 0x49,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
	0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69,
	0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
	0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01,
	0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3b, 0x0a, 0x1c, 0x44, 0x69,
	0x73, 0x61, 0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e,
	0x76, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69,
	0x6e, 0x76, 0x72, 0x65, 0x71, 0x49, 0x64, 0x22, 0xc4, 0x01, 0x0a, 0x1d, 0x44, 0x69, 0x73, 0x61,
	0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76,
	0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x69, 0x6e,
	0x76, 0x72, 0x65, 0x71, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1d,
	0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x12, 0x16, 0x0a,
	0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62,
	0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65,
	0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x82,
	0x01, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a,
	0x09, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x00, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x24, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e,
	0x6c, 0x79, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
	0x5f, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f,
	0x6e, 0x6c, 0x79, 0x22, 0x70, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x51, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x73, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0xc9, 0x01, 0x0a, 0x22, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x49, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09,
	0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x08, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74,
	0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76,
	0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65,
	0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05,
	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c,
	0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65,
	0x6c, 0x22, 0x28, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
	0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x52, 0x0a, 0x15, 0x4c,
	0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
	0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73,
	0x74, 0x6f, 0x72, 0x65, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x22,
	0xa5, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
	0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
	0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x0a,
	0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
	0x48, 0x00, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
	0x01, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01,
	0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07,
	0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x9b, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
	0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x69, 0x6e,
	0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
	0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a,
	0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
	0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69,
	0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78,
	0x48, 0x04, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x05, 0x73,
	0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88,
	0x01, 0x01, 0x22, 0x2d, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54,
	0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10,
	0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0c, 0x0a, 0x0a, 0x5f,
	0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61,
	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f,
	0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a,
	0x08, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x73, 0x22, 0xa4, 0x08, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x14, 0x0a,
	0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61,
	0x62, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61,
	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x4c, 0x0a,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
	0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65,
	0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52,
	0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0a,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a,
	0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52,
	0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f,
	0x6c, 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x62, 0x6f,
	0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
	0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x04, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88,
	0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65,
	0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72,
	0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x06, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
	0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69, 0x64,
	0x5f, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x06, 0x70, 0x61, 0x69,
	0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x08, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d,
	0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
	0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72,
	0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a,
	0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01,
	0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x18, 0x11, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x0d, 0x70,
	0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x50, 0x61, 0x69,
	0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x0c, 0x52, 0x0c, 0x70, 0x61,
	0x69, 0x64, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22, 0x3f, 0x0a,
	0x1a, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0a, 0x0a, 0x06, 0x55,
	0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10,
	0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f,
	0x6c, 0x74, 0x31, 0x32, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f,
	0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a,
	0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42,
	0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72,
	0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x70, 0x61,
	0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x4f, 0x0a, 0x21, 0x4c,
	0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x49, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x73, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74,
	0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04,
	0x74, 0x78, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xb6, 0x04, 0x0a,
	0x10, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x09, 0x66, 0x69, 0x72, 0x73, 0x74,
	0x5f, 0x68, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x5f,
	0x68, 0x6f, 0x70, 0x52, 0x08, 0x66, 0x69, 0x72, 0x73, 0x74, 0x48, 0x6f, 0x70, 0x12, 0x21, 0x0a,
	0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68,
	0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0e, 0x73,
	0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x05, 0x20,
	0x03, 0x28, 0x0c, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x53, 0x65, 0x63, 0x72, 0x65,
	0x74, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x03, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x0b,
	0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88,
	0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73,
	0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e,
	0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x06, 0x52, 0x0d,
	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x88, 0x01, 0x01,
	0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65,
	0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07,
	0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76,
	0x72, 0x65, 0x71, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x89, 0x06, 0x0a, 0x11, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x3e,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x31,
	0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
	0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19,
	0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52,
	0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x31, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32,
	0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70,
	0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52,
	0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
	0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0c,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x88,
	0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01,
	0x28, 0x04, 0x48, 0x07, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04,
	0x48, 0x09, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78,
	0x88, 0x01, 0x01, 0x22, 0x2c, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e,
	0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10,
	0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72,
	0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61,
	0x67, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x10, 0x0a,
	0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
	0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x22, 0x68, 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x46, 0x69,
	0x72, 0x73, 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x22, 0xd2, 0x03, 0x0a, 0x13,
	0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01,
	0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88,
	0x01, 0x01, 0x12, 0x45, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64,
	0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x48, 0x03, 0x52,
	0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x22,
	0x3b, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47,
	0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x01,
	0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x22, 0x2d, 0x0a, 0x11,
	0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x49, 0x6e, 0x64, 0x65,
	0x78, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b,
	0x0a, 0x07, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x08, 0x0a, 0x06,
	0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x22, 0x4d, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x08, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22,
	0xc4, 0x07, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73,
	0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61,
	0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x4c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d,
	0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
	0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x10,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d,
	0x73, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x02, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b,
	0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03,
	0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x0c, 0x48, 0x05, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65,
	0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x06, 0x52, 0x0a,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x07, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x0f,
	0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01,
	0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x11, 0x20, 0x01,
	0x28, 0x04, 0x48, 0x0a, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64,
	0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52, 0x0b, 0x63,
	0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x22, 0x43, 0x0a,
	0x1a, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50,
	0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c,
	0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45,
	0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07,
	0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74,
	0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70,
	0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69,
	0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
	0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x22, 0x19, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72,
	0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x22, 0x61, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a,
	0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72,
	0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x22, 0xbf, 0x02, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61,
	0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x61, 0x77,
	0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x72, 0x61, 0x77, 0x74, 0x78, 0x12,
	0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68,
	0x74, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x78, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x07, 0x74, 0x78, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x6c,
	0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c,
	0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x12, 0x3f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e,
	0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75,
	0x74, 0x73, 0x12, 0x42, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x0a, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72,
	0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x52, 0x07, 0x6f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x22, 0x6a, 0x0a, 0x22, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72,
	0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04,
	0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64,
	0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e,
	0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e,
	0x63, 0x65, 0x22, 0x8d, 0x01, 0x0a, 0x23, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73,
	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x12, 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x50, 0x75,
	0x62, 0x4b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73,
	0x61, 0x74, 0x22, 0x5a, 0x0a, 0x11, 0x4d, 0x61, 0x6b, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1b,
	0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01,
	0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f,
	0x68, 0x65, 0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2c,
	0x0a, 0x12, 0x4d, 0x61, 0x6b, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0xa2, 0x05, 0x0a,
	0x0a, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x31, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x29,
	0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x01, 0x48, 0x01, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x70,
	0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x74,
	0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x08,
	0x72, 0x65, 0x74, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d,
	0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52,
	0x08, 0x6d, 0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x09,
	0x65, 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x09,
	0x65, 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a,
	0x72, 0x69, 0x73, 0x6b, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x01,
	0x48, 0x05, 0x52, 0x0a, 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x88, 0x01,
	0x01, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x6d,
	0x61, 0x78, 0x66, 0x65, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x66,
	0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0b, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x08,
	0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x09, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69,
	0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x0c, 0x70, 0x61,
	0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0a, 0x52,
	0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x42,
	0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6d, 0x61,
	0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f,
	0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x61,
	0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x65, 0x78, 0x65, 0x6d, 0x70,
	0x74, 0x66, 0x65, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61, 0x63,
	0x74, 0x6f, 0x72, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10,
	0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64,
	0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x22, 0xf6, 0x03, 0x0a, 0x0b, 0x50, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65,
	0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68,
	0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x0b, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
	0x12, 0x41, 0x0a, 0x1a, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x74,
	0x69, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x18, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x50,
	0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e,
	0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x32, 0x0a, 0x09, 0x50, 0x61, 0x79, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45,
	0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12,
	0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x1d, 0x0a, 0x1b, 0x5f,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f,
	0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2e, 0x0a, 0x10, 0x4c, 0x69,
	0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13,
	0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64,
	0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x11, 0x4c, 0x69,
	0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x29, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f,
	0x64, 0x65, 0x73, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x84, 0x03, 0x0a, 0x0e, 0x4c,
	0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x16, 0x0a,
	0x06, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6e,
	0x6f, 0x64, 0x65, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x0e, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x69,
	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52,
	0x0d, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x88, 0x01,
	0x01, 0x12, 0x19, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x01, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05,
	0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x05, 0x63,
	0x6f, 0x6c, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x08, 0x66, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x10, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x77,
	0x69, 0x6c, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f,
	0x64, 0x65, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x77, 0x69, 0x6c, 0x6c, 0x5f, 0x66,
	0x75, 0x6e, 0x64, 0x48, 0x04, 0x52, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x6c,
	0x6c, 0x46, 0x75, 0x6e, 0x64, 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x61, 0x73,
	0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x08, 0x0a, 0x06, 0x5f,
	0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x42,
	0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x13, 0x0a, 0x11,
	0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x77, 0x69, 0x6c, 0x6c, 0x5f, 0x66, 0x75, 0x6e,
	0x64, 0x22, 0xef, 0x02, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e,
	0x6f, 0x64, 0x65, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x77, 0x69, 0x6c, 0x6c, 0x5f,
	0x66, 0x75, 0x6e, 0x64, 0x12, 0x3a, 0x0a, 0x13, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65,
	0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x10,
	0x6c, 0x65, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74,
	0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61,
	0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6c, 0x65, 0x61, 0x73, 0x65,
	0x46, 0x65, 0x65, 0x42, 0x61, 0x73, 0x69, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64,
	0x69, 0x6e, 0x67, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12,
	0x45, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d,
	0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x15, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x42, 0x61,
	0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x56, 0x0a, 0x28, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72,
	0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74,
	0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x24, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
	0x6e, 0x61, 0x6c, 0x54, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x12, 0x23,
	0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x4c, 0x65,
	0x61, 0x73, 0x65, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65,
	0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12,
	0x55, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64,
	0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74,
	0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64,
	0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x61,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x22, 0x50, 0x0a, 0x1b, 0x4c, 0x69, 0x73,
	0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x44, 0x4e, 0x53, 0x10,
	0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49,
	0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03,
	0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x33, 0x10, 0x04, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x7e, 0x0a, 0x15, 0x57, 0x61, 0x69, 0x74, 0x61,
	0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x70,
	0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69,
	0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x07, 0x74,
	0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x61,
	0x73, 0x74, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
	0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22, 0x85, 0x07, 0x0a, 0x16, 0x57, 0x61, 0x69, 0x74,
	0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
	0x73, 0x68, 0x12, 0x48, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x30, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e,
	0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
	0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52,
	0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b,
	0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02,
	0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f,
	0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x08, 0x70,
	0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1c,
	0x0a, 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48,
	0x06, 0x52, 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e,
	0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52,
	0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
	0x12, 0x4a, 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e,
	0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61,
	0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61, 0x69, 0x64,
	0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x0a, 0x52, 0x0c, 0x70, 0x61, 0x69,
	0x64, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22, 0x2d, 0x0a, 0x14,
	0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b,
	0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x32, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
	0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69,
	0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69,
	0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a,
	0x0e, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22,
	0x49, 0x0a, 0x1b, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x50, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12,
	0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78,
	0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0x2a, 0x0a, 0x12, 0x57, 0x61,
	0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0xf6, 0x06, 0x0a, 0x13, 0x57, 0x61, 0x69, 0x74, 0x69,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14,
	0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c,
	0x61, 0x62, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x42,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x61, 0x74,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41,
	0x74, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01,
	0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x03, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x20,
	0x0a, 0x09, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x04, 0x48, 0x04, 0x52, 0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
	0x12, 0x42, 0x0a, 0x14, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69,
	0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x12, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72,
	0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88,
	0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08, 0x52, 0x0c, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0e, 0x20,
	0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e,
	0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x0d, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f,
	0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50,
	0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x0a, 0x52, 0x0c,
	0x70, 0x61, 0x69, 0x64, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22,
	0x2a, 0x0a, 0x11, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0b,
	0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x32, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
	0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69,
	0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x69,
	0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a,
	0x0e, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22,
	0x46, 0x0a, 0x18, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50, 0x61,
	0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74,
	0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12,
	0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xb5, 0x01, 0x0a, 0x12, 0x57, 0x61, 0x69, 0x74,
	0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21,
	0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73,
	0x68, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x04, 0x48, 0x00, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d,
	0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48,
	0x01, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
	0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02,
	0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07,
	0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65,
	0x6f, 0x75, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x22,
	0xbd, 0x06, 0x0a, 0x13, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61,
	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x31, 0x0a,
	0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
	0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19, 0x0a,
	0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x05,
	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74,
	0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74,
	0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88,
	0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x06, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12,
	0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d,
	0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x0e, 0x20, 0x01, 0x28, 0x01, 0x48, 0x08, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
	0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09,
	0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01,
	0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x22, 0x21, 0x0a, 0x11, 0x57,
	0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x42, 0x0a,
	0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64,
	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c,
	0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42,
	0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63,
	0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a,
	0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22,
	0xa4, 0x01, 0x0a, 0x0e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4e, 0x65,
	0x77, 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4e, 0x65, 0x77,
	0x61, 0x64, 0x64, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x48,
	0x00, 0x52, 0x0b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01,
	0x01, 0x22, 0x33, 0x0a, 0x12, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x45, 0x43, 0x48, 0x33,
	0x32, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4c, 0x4c, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04,
	0x50, 0x32, 0x54, 0x52, 0x10, 0x03, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x22, 0x5b, 0x0a, 0x0f, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x65, 0x63,
	0x68, 0x33, 0x32, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62, 0x65, 0x63,
	0x68, 0x33, 0x32, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x32, 0x74, 0x72, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x70, 0x32, 0x74, 0x72, 0x88, 0x01, 0x01, 0x42,
	0x09, 0x0a, 0x07, 0x5f, 0x62, 0x65, 0x63, 0x68, 0x33, 0x32, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70,
	0x32, 0x74, 0x72, 0x22, 0xe8, 0x01, 0x0a, 0x0f, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65,
	0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x07, 0x73, 0x61, 0x74,
	0x6f, 0x73, 0x68, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x41, 0x6c, 0x6c, 0x52, 0x07, 0x73, 0x61,
	0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e,
	0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69,
	0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65,
	0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f,
	0x6e, 0x66, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0x4a,
	0x0a, 0x10, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02,
	0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x22, 0x9c, 0x04, 0x0a, 0x0e, 0x4b,
	0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
	0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6d, 0x61,
	0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x01, 0x48, 0x01, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x70, 0x65, 0x72, 0x63, 0x65,
	0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x66,
	0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x08, 0x72, 0x65, 0x74, 0x72,
	0x79, 0x46, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x64, 0x65,
	0x6c, 0x61, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x08, 0x6d, 0x61, 0x78,
	0x64, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x09, 0x65, 0x78, 0x65, 0x6d,
	0x70, 0x74, 0x66, 0x65, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x09, 0x65, 0x78, 0x65, 0x6d,
	0x70, 0x74, 0x66, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x0a, 0x72, 0x6f, 0x75, 0x74,
	0x65, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74,
	0x48, 0x05, 0x52, 0x0a, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x88, 0x01,
	0x01, 0x12, 0x31, 0x0a, 0x09, 0x65, 0x78, 0x74, 0x72, 0x61, 0x74, 0x6c, 0x76, 0x73, 0x18, 0x09,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x6c, 0x76, 0x53, 0x74,
	0x72, 0x65, 0x61, 0x6d, 0x48, 0x06, 0x52, 0x09, 0x65, 0x78, 0x74, 0x72, 0x61, 0x74, 0x6c, 0x76,
	0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73,
	0x61, 0x74, 0x12, 0x28, 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x07, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06,
	0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6d, 0x61, 0x78, 0x66, 0x65,
	0x65, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x74,
	0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x61, 0x78, 0x64, 0x65,
	0x6c, 0x61, 0x79, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x65, 0x78, 0x65, 0x6d, 0x70, 0x74, 0x66, 0x65,
	0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x73,
	0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x74, 0x6c, 0x76, 0x73, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x22, 0xed, 0x03, 0x0a, 0x0f, 0x4b, 0x65,
	0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a,
	0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
	0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41,
	0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
	0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x41, 0x0a, 0x1a,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f,
	0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x01, 0x52, 0x18, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x74, 0x69,
	0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x1d, 0x0a, 0x0d, 0x4b,
	0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08,
	0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64,
	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x1d, 0x0a, 0x1b, 0x5f, 0x77,
	0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x63,
	0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa3, 0x04, 0x0a, 0x0f, 0x46, 0x75,
	0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a,
	0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x41, 0x6c, 0x6c,
	0x52, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x26, 0x0a, 0x07, 0x66, 0x65, 0x65,
	0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x77, 0x65, 0x69,
	0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88,
	0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x88,
	0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x6d, 0x69, 0x6e, 0x5f, 0x77, 0x69, 0x74, 0x6e, 0x65, 0x73,
	0x73, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03,
	0x52, 0x10, 0x6d, 0x69, 0x6e, 0x57, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x57, 0x65, 0x69, 0x67,
	0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f,
	0x61, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x48,
	0x04, 0x52, 0x0e, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x41, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x6e, 0x6f, 0x6e, 0x77, 0x72, 0x61, 0x70, 0x70,
	0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x05, 0x52, 0x0a, 0x6e, 0x6f, 0x6e, 0x77,
	0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6f, 0x70, 0x65,
	0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x48, 0x06, 0x52, 0x14, 0x6f, 0x70, 0x65,
	0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x42, 0x0b, 0x0a, 0x09,
	0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6d, 0x69,
	0x6e, 0x5f, 0x77, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74,
	0x42, 0x13, 0x0a, 0x11, 0x5f, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x73, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x67, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6e, 0x6f, 0x6e, 0x77, 0x72, 0x61,
	0x70, 0x70, 0x65, 0x64, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67,
	0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22,
	0xab, 0x02, 0x0a, 0x10, 0x46, 0x75, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x0c, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x34,
	0x0a, 0x16, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x6e, 0x61,
	0x6c, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14,
	0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x57, 0x65,
	0x69, 0x67, 0x68, 0x74, 0x12, 0x2c, 0x0a, 0x0b, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x73,
	0x61, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74,
	0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x68, 0x61,
	0x6e, 0x67, 0x65, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x0c,
	0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x70, 0x73, 0x62,
	0x74, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
	0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xa9, 0x01,
	0x0a, 0x14, 0x46, 0x75, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x6f,
	0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x12, 0x21,
	0x0a, 0x0c, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x77, 0x61, 0x73, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x2a, 0x0a,
	0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f,
	0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x64, 0x54, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x50, 0x0a, 0x0f, 0x53, 0x65, 0x6e,
	0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04,
	0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74,
	0x12, 0x1d, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x00, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x42,
	0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x36, 0x0a, 0x10, 0x53,
	0x65, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74,
	0x78, 0x69, 0x64, 0x22, 0x41, 0x0a, 0x0f, 0x53, 0x69, 0x67, 0x6e, 0x70, 0x73, 0x62, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x69,
	0x67, 0x6e, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x69,
	0x67, 0x6e, 0x6f, 0x6e, 0x6c, 0x79, 0x22, 0x33, 0x0a, 0x10, 0x53, 0x69, 0x67, 0x6e, 0x70, 0x73,
	0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x69,
	0x67, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0a, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x50, 0x73, 0x62, 0x74, 0x22, 0x9d, 0x04, 0x0a, 0x0f,
	0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x2a, 0x0a, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x41,
	0x6c, 0x6c, 0x52, 0x07, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x26, 0x0a, 0x07, 0x66,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x77, 0x65, 0x69, 0x67,
	0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x77,
	0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f,
	0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x12, 0x1d, 0x0a, 0x07, 0x72, 0x65,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x72,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6c, 0x6f, 0x63,
	0x6b, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x08, 0x6c,
	0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x6d, 0x69,
	0x6e, 0x5f, 0x77, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x10, 0x6d, 0x69, 0x6e, 0x57, 0x69, 0x74,
	0x6e, 0x65, 0x73, 0x73, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a,
	0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x88,
	0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x73, 0x5f,
	0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x04, 0x52, 0x0e,
	0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x41, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x39, 0x0a, 0x16, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6e, 0x63,
	0x68, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x05, 0x52, 0x14, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x63, 0x68,
	0x6f, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08,
	0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6c, 0x6f, 0x63,
	0x6b, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x77, 0x69,
	0x74, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x0d, 0x0a, 0x0b,
	0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x42, 0x13, 0x0a, 0x11, 0x5f,
	0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
	0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6e, 0x63,
	0x68, 0x6f, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xab, 0x02, 0x0a, 0x10,
	0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x70, 0x73, 0x62, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f,
	0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x66, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x34, 0x0a, 0x16, 0x65, 0x73,
	0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x77, 0x65,
	0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x65, 0x73, 0x74, 0x69,
	0x6d, 0x61, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74,
	0x12, 0x2c, 0x0a, 0x0b, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x52, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x28,
	0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4f,
	0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72,
	0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x68, 0x61, 0x6e,
	0x67, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0xa9, 0x01, 0x0a, 0x14, 0x55, 0x74,
	0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61,
	0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x0b, 0x77, 0x61, 0x73, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x1a, 0x0a,
	0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x54, 0x6f,
	0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x26, 0x0a, 0x10, 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61,
	0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x48, 0x0a,
	0x11, 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x74,
	0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65,
	0x64, 0x54, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0xc6, 0x01, 0x0a, 0x10, 0x54, 0x78, 0x70, 0x72,
	0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x07,
	0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x07, 0x66,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e,
	0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x6d, 0x69,
	0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f,
	0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75,
	0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x12, 0x29, 0x0a,
	0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x44, 0x65, 0x73, 0x63, 0x52,
	0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65,
	0x72, 0x61, 0x74, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66,
	0x22, 0x5c, 0x0a, 0x11, 0x54, 0x78, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x6e, 0x73,
	0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a,
	0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x54, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78,
	0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x23,
	0x0a, 0x0d, 0x54, 0x78, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74,
	0x78, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x0e, 0x54, 0x78, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69,
	0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x35, 0x0a,
	0x17, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a,
	0x03, 0x5f, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x39, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65,
	0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x73, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xfa, 0x21, 0x0a, 0x18,
	0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72,
	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x70, 0x65, 0x65, 0x72, 0x43,
	0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x51, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x53,
	0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x73,
	0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x54, 0x78, 0x69, 0x64,
	0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70,
	0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x73, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x01, 0x52, 0x07, 0x66, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65,
	0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72,
	0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52,
	0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88,
	0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
	0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52, 0x0b,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2a,
	0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
	0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69, 0x6e,
	0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0e, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x46, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74,
	0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08,
	0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01,
	0x12, 0x26, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x46, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x6e, 0x65, 0x78, 0x74,
	0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x48,
	0x0a, 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x46, 0x65, 0x65, 0x53, 0x74, 0x65, 0x70, 0x88, 0x01,
	0x01, 0x12, 0x41, 0x0a, 0x08, 0x69, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x18, 0x10, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65,
	0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x49, 0x6e, 0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x52, 0x08, 0x69, 0x6e, 0x66, 0x6c,
	0x69, 0x67, 0x68, 0x74, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f,
	0x18, 0x11, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0b, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54,
	0x6f, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18,
	0x12, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0c, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65,
	0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x18, 0x13, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x53, 0x69, 0x64, 0x65, 0x52, 0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x12, 0x2d, 0x0a,
	0x06, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x48,
	0x0d, 0x52, 0x06, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x07,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x75, 0x6e, 0x64,
	0x69, 0x6e, 0x67, 0x48, 0x0e, 0x52, 0x07, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88, 0x01,
	0x01, 0x12, 0x2e, 0x0a, 0x0a, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x0f, 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
	0x01, 0x12, 0x35, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x10, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x55,
	0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f,
	0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x11, 0x52,
	0x0b, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x2f, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1a, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x12, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
	0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x48, 0x13, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d,
	0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72,
	0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69,
	0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x14, 0x52, 0x19, 0x66,
	0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69,
	0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x0f, 0x64,
	0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x1d,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x48, 0x15, 0x52, 0x0d, 0x64, 0x75, 0x73, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x4d, 0x73,
	0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x74,
	0x61, 0x6c, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x16, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x48, 0x74,
	0x6c, 0x63, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x74,
	0x68, 0x65, 0x69, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x48, 0x17, 0x52, 0x10, 0x74, 0x68, 0x65, 0x69, 0x72, 0x52, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x6f,
	0x75, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x18, 0x52, 0x0e, 0x6f, 0x75, 0x72, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x6e, 0x64,
	0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x19, 0x52, 0x0d,
	0x73, 0x70, 0x65, 0x6e, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
	0x12, 0x39, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x1a, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76,
	0x61, 0x62, 0x6c, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x14, 0x6d,
	0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x1b, 0x52, 0x11, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75,
	0x6d, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43,
	0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f,
	0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x1c, 0x52, 0x12, 0x6d, 0x69,
	0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68,
	0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x25, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x1d, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f, 0x75,
	0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x13, 0x74, 0x68, 0x65, 0x69,
	0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18,
	0x26, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1e, 0x52, 0x10, 0x74, 0x68, 0x65, 0x69, 0x72, 0x54, 0x6f,
	0x53, 0x65, 0x6c, 0x66, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x11,
	0x6f, 0x75, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61,
	0x79, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1f, 0x52, 0x0e, 0x6f, 0x75, 0x72, 0x54, 0x6f,
	0x53, 0x65, 0x6c, 0x66, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12,
	0x6d, 0x61, 0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x74, 0x6c,
	0x63, 0x73, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x20, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x41,
	0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x88, 0x01, 0x01, 0x12,
	0x3d, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x6c, 0x69,
	0x61, 0x73, 0x48, 0x21, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x2b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x33, 0x0a, 0x13, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x18, 0x2c, 0x20,
	0x01, 0x28, 0x04, 0x48, 0x22, 0x52, 0x11, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x0f, 0x69,
	0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2d,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x48, 0x23, 0x52, 0x0d, 0x69, 0x6e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x4d, 0x73,
	0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x2e,
	0x20, 0x01, 0x28, 0x04, 0x48, 0x24, 0x52, 0x13, 0x69, 0x6e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3c,
	0x0a, 0x11, 0x69, 0x6e, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x25, 0x52, 0x0f, 0x69, 0x6e, 0x46, 0x75, 0x6c, 0x66,
	0x69, 0x6c, 0x6c, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x14,
	0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66,
	0x65, 0x72, 0x65, 0x64, 0x18, 0x30, 0x20, 0x01, 0x28, 0x04, 0x48, 0x26, 0x52, 0x12, 0x6f, 0x75,
	0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64,
	0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x27, 0x52, 0x0e, 0x6f, 0x75,
	0x74, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x39, 0x0a, 0x16, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f,
	0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x32, 0x20, 0x01, 0x28, 0x04, 0x48,
	0x28, 0x52, 0x14, 0x6f, 0x75, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75,
	0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x6f, 0x75,
	0x74, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x33, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x48, 0x29, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c,
	0x6c, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x05, 0x68, 0x74,
	0x6c, 0x63, 0x73, 0x18, 0x34, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x05, 0x68,
	0x74, 0x6c, 0x63, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f,
	0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x35, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2a, 0x52, 0x0b, 0x63,
	0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a,
	0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69,
	0x74, 0x73, 0x18, 0x36, 0x20, 0x01, 0x28, 0x08, 0x48, 0x2b, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f,
	0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x43,
	0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x73, 0x48, 0x2c, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73,
	0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x16, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x62,
	0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x38, 0x20,
	0x01, 0x28, 0x04, 0x48, 0x2d, 0x52, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x74, 0x61, 0x62, 0x6c,
	0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x22,
	0x0a, 0x0a, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x39, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x2e, 0x52, 0x09, 0x6c, 0x6f, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x88,
	0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73,
	0x68, 0x65, 0x64, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x08, 0x48, 0x2f, 0x52, 0x0d, 0x72, 0x65, 0x65,
	0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a,
	0x10, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x78, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x48, 0x30, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x78, 0x46, 0x65,
	0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x31, 0x52, 0x09, 0x64,
	0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x80, 0x03, 0x0a, 0x1d,
	0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0c, 0x0a,
	0x08, 0x4f, 0x50, 0x45, 0x4e, 0x49, 0x4e, 0x47, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x43,
	0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47,
	0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x48, 0x41,
	0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1a,
	0x0a, 0x16, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x53, 0x48, 0x55, 0x54, 0x54,
	0x49, 0x4e, 0x47, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4c,
	0x4f, 0x53, 0x49, 0x4e, 0x47, 0x44, 0x5f, 0x53, 0x49, 0x47, 0x45, 0x58, 0x43, 0x48, 0x41, 0x4e,
	0x47, 0x45, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4c, 0x4f, 0x53, 0x49, 0x4e, 0x47, 0x44,
	0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x41,
	0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x4e, 0x49, 0x4c, 0x41, 0x54, 0x45, 0x52,
	0x41, 0x4c, 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x55, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f,
	0x53, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x53, 0x45, 0x45, 0x4e, 0x10, 0x07, 0x12, 0x0b, 0x0a, 0x07,
	0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x08, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x55, 0x41,
	0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x49, 0x4e, 0x49, 0x54,
	0x10, 0x09, 0x12, 0x1d, 0x0a, 0x19, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f,
	0x41, 0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x49, 0x4e, 0x10,
	0x0a, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x44, 0x5f, 0x41, 0x57,
	0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x50, 0x4c, 0x49, 0x43, 0x45, 0x10, 0x0b, 0x12,
	0x1c, 0x0a, 0x18, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x50, 0x45,
	0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x54, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x1f, 0x0a,
	0x1b, 0x44, 0x55, 0x41, 0x4c, 0x4f, 0x50, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f,
	0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x0d, 0x42, 0x0f,
	0x0a, 0x0d, 0x5f, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42,
	0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f,
	0x6f, 0x77, 0x6e, 0x65, 0x72, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x66, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66,
	0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x42, 0x12, 0x0a,
	0x10, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61,
	0x74, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x65, 0x65,
	0x5f, 0x73, 0x74, 0x65, 0x70, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
	0x74, 0x6f, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f,
	0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6d, 0x61, 0x78, 0x5f,
	0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x74,
	0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65,
	0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f,
	0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
	0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f,
	0x64, 0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x19, 0x0a, 0x17, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x74,
	0x68, 0x65, 0x69, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x64,
	0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x72, 0x65,
	0x63, 0x65, 0x69, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a,
	0x15, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69,
	0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d,
	0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c,
	0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x74,
	0x68, 0x65, 0x69, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c,
	0x61, 0x79, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x75, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65,
	0x6c, 0x66, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x6d, 0x61, 0x78,
	0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x42,
	0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x6e,
	0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65,
	0x64, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x42,
	0x14, 0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61,
	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x42, 0x13,
	0x0a, 0x11, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x73, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x42, 0x15,
	0x0a, 0x13, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
	0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x67, 0x6e, 0x6f,
	0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x42, 0x0a, 0x0a,
	0x08, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6c, 0x61,
	0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x72, 0x65, 0x65, 0x73, 0x74, 0x61, 0x62, 0x6c,
	0x69, 0x73, 0x68, 0x65, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74,
	0x78, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64,
	0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb6, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73,
	0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x05,
	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x47, 0x0a,
	0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x73, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x6d,
	0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74,
	0x65, 0x22, 0xb5, 0x02, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x73, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x37, 0x0a, 0x11, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d,
	0x73, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69,
	0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x68, 0x74, 0x6c,
	0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11,
	0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74,
	0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x74, 0x76, 0x45, 0x78, 0x70,
	0x69, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f,
	0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66, 0x65,
	0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a, 0x1b, 0x66, 0x65, 0x65,
	0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69,
	0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19,
	0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d,
	0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x22, 0xb6, 0x02, 0x0a, 0x25, 0x4c, 0x69,
	0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x6d,
	0x6f, 0x74, 0x65, 0x12, 0x37, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69,
	0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x68, 0x74, 0x6c,
	0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x11,
	0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75,
	0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78,
	0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x0f, 0x63, 0x6c, 0x74, 0x76, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x74,
	0x61, 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73,
	0x61, 0x74, 0x12, 0x3e, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72,
	0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68,
	0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70,
	0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74,
	0x68, 0x73, 0x22, 0x4d, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x12, 0x14, 0x0a, 0x05, 0x70,
	0x65, 0x72, 0x6b, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x65, 0x72, 0x6b,
	0x62, 0x22, 0xed, 0x02, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x49, 0x6e,
	0x66, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e,
	0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e,
	0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d,
	0x12, 0x18, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x39, 0x0a, 0x12, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e,
	0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x6f, 0x75, 0x72, 0x5f, 0x66, 0x75, 0x6e,
	0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x6f, 0x75,
	0x72, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x26, 0x0a, 0x0c,
	0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x54, 0x78, 0x69,
	0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x12, 0x48, 0x01, 0x52, 0x0c, 0x73,
	0x70, 0x6c, 0x69, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0f,
	0x0a, 0x0d, 0x5f, 0x73, 0x63, 0x72, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42,
	0x10, 0x0a, 0x0e, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x22, 0xe4, 0x02, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x46, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x75, 0x73, 0x68, 0x65,
	0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x10, 0x6c, 0x6f, 0x63, 0x61,
	0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12,
	0x37, 0x0a, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x46,
	0x75, 0x6e, 0x64, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f,
	0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0b,
	0x66, 0x65, 0x65, 0x50, 0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34,
	0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x02, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x52, 0x63, 0x76, 0x64, 0x4d, 0x73, 0x61,
	0x74, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x69,
	0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72,
	0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0x6c, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74,
	0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x6f, 0x63,
	0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61,
	0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x88, 0x01,
	0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0xc6, 0x03, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x70,
	0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x67, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x44, 0x69, 0x72,
	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69,
	0x64, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12,
	0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x6f,
	0x63, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x00, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x54, 0x72, 0x69, 0x6d, 0x6d, 0x65,
	0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01,
	0x01, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x74, 0x6c, 0x63, 0x53, 0x74, 0x61, 0x74, 0x65,
	0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x39, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x70,
	0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x55, 0x54,
	0x10, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x69,
	0x6d, 0x6d, 0x65, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22,
	0x37, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01,
	0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x6b, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x0e, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xd4, 0x0c, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c,
	0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73,
	0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x65,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x70,
	0x65, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74,
	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x01, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c,
	0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61,
	0x73, 0x48, 0x02, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a,
	0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x52,
	0x06, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x06, 0x63, 0x6c, 0x6f, 0x73, 0x65,
	0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x64, 0x65, 0x48, 0x03, 0x52, 0x06, 0x63, 0x6c, 0x6f,
	0x73, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
	0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65,
	0x12, 0x36, 0x0a, 0x17, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f,
	0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x15, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x6f, 0x6d,
	0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d,
	0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x16, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x68, 0x74, 0x6c, 0x63,
	0x73, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12,
	0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75,
	0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
	0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x12, 0x43,
	0x0a, 0x15, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61,
	0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x12, 0x66, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65, 0x50, 0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x15, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66,
	0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x10, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x05, 0x52, 0x12, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65, 0x52, 0x63, 0x76,
	0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x13, 0x66, 0x75, 0x6e, 0x64,
	0x69, 0x6e, 0x67, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x06, 0x52, 0x11, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x75, 0x73,
	0x68, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0a, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x74, 0x6f, 0x74,
	0x61, 0x6c, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f,
	0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0d, 0x66,
	0x69, 0x6e, 0x61, 0x6c, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x30, 0x0a, 0x0e,
	0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x14,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x30,
	0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x55, 0x73, 0x4d, 0x73, 0x61, 0x74,
	0x12, 0x35, 0x0a, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d,
	0x65, 0x6e, 0x74, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07,
	0x52, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74,
	0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x18, 0x6c, 0x61, 0x73, 0x74, 0x5f,
	0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x08, 0x52, 0x15, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f,
	0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x72, 0x0a, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x75, 0x73,
	0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x51, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43,
	0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x75, 0x73, 0x65, 0x52, 0x0a, 0x63, 0x6c, 0x6f, 0x73,
	0x65, 0x43, 0x61, 0x75, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x16, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73,
	0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x19, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x74,
	0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
	0x01, 0x22, 0x76, 0x0a, 0x2b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x75, 0x73, 0x65,
	0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x09, 0x0a,
	0x05, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x55, 0x53, 0x45, 0x52,
	0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x03, 0x12, 0x0c,
	0x0a, 0x08, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x43, 0x4f, 0x4c, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07,
	0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x05, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x65,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61,
	0x6c, 0x69, 0x61, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x42,
	0x18, 0x0a, 0x16, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x5f,
	0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x66, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x63, 0x76, 0x64, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
	0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f,
	0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x74, 0x78, 0x69, 0x64, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f,
	0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x62, 0x6c,
	0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x74, 0x0a, 0x25,
	0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
	0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x88, 0x01, 0x01,
	0x12, 0x1b, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x01, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a,
	0x06, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65, 0x6d, 0x6f,
	0x74, 0x65, 0x22, 0x61, 0x0a, 0x10, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x12, 0x25,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x85, 0x06, 0x0a, 0x11, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
	0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63,
	0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63,
	0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x14,
	0x0a, 0x05, 0x70, 0x61, 0x79, 0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x70,
	0x61, 0x79, 0x65, 0x65, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69,
	0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73,
	0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x2e, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68,
	0x61, 0x73, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0f, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12,
	0x31, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x74,
	0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12,
	0x6d, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x74, 0x76, 0x45, 0x78, 0x70, 0x69,
	0x72, 0x79, 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65,
	0x63, 0x72, 0x65, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x0d, 0x70, 0x61,
	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f,
	0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x04, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12,
	0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64,
	0x61, 0x74, 0x61, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52, 0x0f, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12,
	0x35, 0x0a, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x0e, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70,
	0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x09, 0x66, 0x61, 0x6c,
	0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x29, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18,
	0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f,
	0x64, 0x65, 0x70, 0x61, 0x79, 0x45, 0x78, 0x74, 0x72, 0x61, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72,
	0x61, 0x12, 0x35, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x6f,
	0x75, 0x74, 0x65, 0x68, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x06, 0x52, 0x06, 0x72,
	0x6f, 0x75, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x11, 0x0a,
	0x0f, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x13, 0x0a,
	0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x22, 0xe5, 0x01,
	0x0a, 0x12, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62,
	0x61, 0x63, 0x6b, 0x73, 0x12, 0x4b, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65,
	0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73,
	0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61,
	0x63, 0x6b, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70,
	0x65, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x00, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x65,
	0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x22, 0x4e, 0x0a, 0x16,
	0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63,
	0x6b, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x32, 0x50, 0x4b, 0x48, 0x10,
	0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32, 0x53, 0x48, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x50,
	0x32, 0x57, 0x50, 0x4b, 0x48, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x32, 0x57, 0x53, 0x48,
	0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x32, 0x54, 0x52, 0x10, 0x04, 0x42, 0x07, 0x0a, 0x05,
	0x5f, 0x61, 0x64, 0x64, 0x72, 0x22, 0x36, 0x0a, 0x0e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70,
	0x61, 0x79, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74,
	0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x27, 0x0a,
	0x0d, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0xe7, 0x31, 0x0a, 0x0e, 0x44, 0x65, 0x63, 0x6f, 0x64,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x09, 0x69, 0x74, 0x65,
	0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74,
	0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x08,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00,
	0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03,
	0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x12,
	0x2a, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
	0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72,
	0x65, 0x6e, 0x63, 0x79, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x03, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77,
	0x6e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x88, 0x01,
	0x01, 0x12, 0x33, 0x0a, 0x13, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6d, 0x69,
	0x6e, 0x6f, 0x72, 0x5f, 0x75, 0x6e, 0x69, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04,
	0x52, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x4d, 0x69, 0x6e, 0x6f, 0x72, 0x55,
	0x6e, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x0b,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3c,
	0x0a, 0x11, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x30, 0x0a, 0x11,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x10, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x26,
	0x0a, 0x0c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x0c,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x73, 0x73,
	0x75, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x09,
	0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88,
	0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x62, 0x73, 0x6f,
	0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x04, 0x48, 0x0a, 0x52, 0x13, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x41, 0x62, 0x73, 0x6f, 0x6c, 0x75,
	0x74, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61,
	0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52, 0x10, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x88, 0x01, 0x01, 0x12, 0x37,
	0x0a, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x10, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65,
	0x4f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x52, 0x0a, 0x6f, 0x66, 0x66,
	0x65, 0x72, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0c,
	0x52, 0x0b, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01,
	0x12, 0x45, 0x0a, 0x1d, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73,
	0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69,
	0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0d, 0x52, 0x19, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x4e, 0x6f,
	0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x15, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x0e, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76,
	0x61, 0x6c, 0x69, 0x64, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x16, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x0f, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73,
	0x73, 0x69, 0x6e, 0x67, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x10, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69,
	0x64, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x88, 0x01,
	0x01, 0x12, 0x44, 0x0a, 0x1c, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76,
	0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65,
	0x72, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x48, 0x11, 0x52, 0x19, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x73,
	0x73, 0x75, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65,
	0x71, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x12, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
	0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x13,
	0x52, 0x0d, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x88,
	0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x63, 0x68, 0x61,
	0x69, 0x6e, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x14, 0x52, 0x0b, 0x69, 0x6e, 0x76, 0x72,
	0x65, 0x71, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x69, 0x6e,
	0x76, 0x72, 0x65, 0x71, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x48, 0x15, 0x52, 0x10, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69, 0x6e,
	0x76, 0x72, 0x65, 0x71, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x1d, 0x20,
	0x01, 0x28, 0x0c, 0x48, 0x16, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x46, 0x65, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x72,
	0x65, 0x71, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x1e, 0x20, 0x01, 0x28,
	0x04, 0x48, 0x17, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x51, 0x75, 0x61, 0x6e, 0x74,
	0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
	0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x18, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72,
	0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x69, 0x6e, 0x76, 0x72, 0x65,
	0x71, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x65, 0x72, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x19, 0x52, 0x17, 0x69, 0x6e,
	0x76, 0x72, 0x65, 0x71, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x43, 0x6f,
	0x75, 0x6e, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17, 0x69, 0x6e, 0x76, 0x72,
	0x65, 0x71, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74,
	0x61, 0x72, 0x74, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1a, 0x52, 0x15, 0x69, 0x6e, 0x76,
	0x72, 0x65, 0x71, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x53, 0x74, 0x61,
	0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
	0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
	0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x23, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1b,
	0x52, 0x1c, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
	0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01,
	0x01, 0x12, 0x49, 0x0a, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73,
	0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65,
	0x72, 0x5f, 0x69, 0x64, 0x18, 0x24, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1c, 0x52, 0x1b, 0x77, 0x61,
	0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x72,
	0x65, 0x71, 0x50, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x4d, 0x0a, 0x21,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f,
	0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74,
	0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1d, 0x52, 0x1d, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x50,
	0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x5d, 0x0a, 0x29, 0x77,
	0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73,
	0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x26, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1e,
	0x52, 0x25, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
	0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x69,
	0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x5d, 0x0a, 0x29, 0x77, 0x61,
	0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x69,
	0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x48, 0x1f, 0x52,
	0x25, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x49,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x69, 0x67,
	0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x12, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x29, 0x20, 0x01, 0x28, 0x04, 0x48, 0x20, 0x52, 0x10, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65,
	0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x21, 0x52,
	0x15, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65,
	0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x14, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73,
	0x68, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x22, 0x52, 0x12, 0x69, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01,
	0x12, 0x40, 0x0a, 0x13, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x23, 0x52, 0x11, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x49, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61,
	0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x2d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x10, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x2e, 0x0a,
	0x10, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x73, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x24, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a,
	0x0f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64,
	0x18, 0x2f, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x25, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
	0x5f, 0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x04, 0x48,
	0x26, 0x52, 0x19, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72,
	0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x46, 0x0a, 0x1d, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73,
	0x18, 0x32, 0x20, 0x01, 0x28, 0x09, 0x48, 0x27, 0x52, 0x1a, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x50,
	0x61, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x22, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x5f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x18, 0x33, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x28, 0x52, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69,
	0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x42, 0x6c, 0x69, 0x6e,
	0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x4f, 0x0a, 0x22, 0x77, 0x61, 0x72,
	0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
	0x34, 0x20, 0x01, 0x28, 0x09, 0x48, 0x29, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
	0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x53, 0x0a, 0x24, 0x77, 0x61,
	0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61,
	0x73, 0x68, 0x18, 0x35, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2a, 0x52, 0x20, 0x77, 0x61, 0x72, 0x6e,
	0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12,
	0x48, 0x0a, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x18, 0x36, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2b, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x61, 0x0a, 0x2b, 0x77, 0x61, 0x72,
	0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f,
	0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2c,
	0x52, 0x27, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
	0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
	0x65, 0x42, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x1f,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18,
	0x38, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2d, 0x52, 0x1b, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
	0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x6f,
	0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x39, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x2e, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73,
	0x73, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x21, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x3a, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x2f, 0x52, 0x1e, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76,
	0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62,
	0x61, 0x63, 0x6b, 0x73, 0x18, 0x3b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73,
	0x52, 0x09, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x3c, 0x20, 0x01, 0x28, 0x04, 0x48,
	0x30, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x04, 0x48,
	0x31, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05,
	0x70, 0x61, 0x79, 0x65, 0x65, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x32, 0x52, 0x05, 0x70,
	0x61, 0x79, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x33, 0x52,
	0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12,
	0x2e, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68,
	0x61, 0x73, 0x68, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x34, 0x52, 0x0f, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12,
	0x36, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x74,
	0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x41, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x35,
	0x52, 0x12, 0x6d, 0x69, 0x6e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x74, 0x76, 0x45, 0x78,
	0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x42, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x36, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d,
	0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x37, 0x52,
	0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
	0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x45, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x45,
	0x78, 0x74, 0x72, 0x61, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x20, 0x0a, 0x09, 0x75,
	0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x46, 0x20, 0x01, 0x28, 0x09, 0x48, 0x38,
	0x52, 0x08, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a,
	0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x47, 0x20, 0x01, 0x28, 0x09, 0x48, 0x39,
	0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
	0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x48, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3a, 0x52, 0x06,
	0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x0c, 0x72, 0x65, 0x73,
	0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x49, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x74,
	0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3e, 0x0a, 0x19, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75,
	0x74, 0x66, 0x38, 0x18, 0x4a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3b, 0x52, 0x16, 0x77, 0x61, 0x72,
	0x6e, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6e, 0x65, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x55,
	0x74, 0x66, 0x38, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x68, 0x65, 0x78, 0x18, 0x4b, 0x20,
	0x01, 0x28, 0x0c, 0x48, 0x3c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a,
	0x09, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x18, 0x4c, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x3d, 0x52, 0x09, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x88, 0x01, 0x01,
	0x12, 0x21, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x4d, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x3e, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18,
	0x4e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3f, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
	0x79, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x4f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x40, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x50, 0x20, 0x01, 0x28, 0x09, 0x48, 0x41, 0x52, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1f,
	0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x51, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x42, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12,
	0x35, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x52, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x68, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x43, 0x52, 0x06, 0x72, 0x6f, 0x75,
	0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
	0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x53, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x44, 0x52, 0x0d, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x49, 0x64,
	0x88, 0x01, 0x01, 0x12, 0x49, 0x0a, 0x1f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
	0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73,
	0x75, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x54, 0x20, 0x01, 0x28, 0x09, 0x48, 0x45, 0x52, 0x1b,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x4f, 0x66,
	0x66, 0x65, 0x72, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3a,
	0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x55,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64,
	0x65, 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x52, 0x0b, 0x69,
	0x6e, 0x76, 0x72, 0x65, 0x71, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x40, 0x0a, 0x1a, 0x77, 0x61,
	0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5f, 0x62, 0x6c, 0x69, 0x6e,
	0x64, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x56, 0x20, 0x01, 0x28, 0x09, 0x48, 0x46,
	0x52, 0x17, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x6c,
	0x69, 0x6e, 0x64, 0x65, 0x64, 0x50, 0x61, 0x74, 0x68, 0x88, 0x01, 0x01, 0x22, 0x83, 0x01, 0x0a,
	0x0a, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x42,
	0x4f, 0x4c, 0x54, 0x31, 0x32, 0x5f, 0x4f, 0x46, 0x46, 0x45, 0x52, 0x10, 0x00, 0x12, 0x12, 0x0a,
	0x0e, 0x42, 0x4f, 0x4c, 0x54, 0x31, 0x32, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x10,
	0x01, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x4f, 0x4c, 0x54, 0x31, 0x32, 0x5f, 0x49, 0x4e, 0x56, 0x4f,
	0x49, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x10, 0x02, 0x12, 0x12, 0x0a,
	0x0e, 0x42, 0x4f, 0x4c, 0x54, 0x31, 0x31, 0x5f, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x10,
	0x03, 0x12, 0x08, 0x0a, 0x04, 0x52, 0x55, 0x4e, 0x45, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x45,
	0x4d, 0x45, 0x52, 0x47, 0x45, 0x4e, 0x43, 0x59, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x56, 0x45, 0x52,
	0x10, 0x05, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42,
	0x11, 0x0a, 0x0f, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x21, 0x0a, 0x1f, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
	0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x5f, 0x75, 0x6e, 0x69, 0x74,
	0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x6f, 0x66, 0x66, 0x65,
	0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0f, 0x0a,
	0x0d, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x42, 0x11,
	0x0a, 0x0f, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x73, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x61, 0x62, 0x73, 0x6f,
	0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x15, 0x0a, 0x13, 0x5f,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6d,
	0x61, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64,
	0x65, 0x5f, 0x69, 0x64, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
	0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x6e,
	0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72,
	0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x24, 0x0a, 0x22,
	0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
	0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x42, 0x21, 0x0a, 0x1f, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69,
	0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x1f, 0x0a, 0x1d, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f,
	0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65,
	0x71, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69,
	0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x0f,
	0x0a, 0x0d, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x42,
	0x15, 0x0a, 0x13, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65,
	0x71, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69,
	0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x14,
	0x0a, 0x12, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f,
	0x6e, 0x6f, 0x74, 0x65, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f,
	0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x65, 0x72, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x72, 0x65,
	0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x22,
	0x0a, 0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0x42, 0x22, 0x0a, 0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
	0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61,
	0x79, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x72, 0x65,
	0x71, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x42, 0x2c, 0x0a, 0x2a,
	0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
	0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x2c, 0x0a, 0x2a, 0x5f, 0x77,
	0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x69,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x73,
	0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42,
	0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61,
	0x74, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x17, 0x0a, 0x15, 0x5f,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x68, 0x61, 0x73, 0x68, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11,
	0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
	0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f,
	0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73,
	0x65, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x42, 0x25, 0x0a, 0x23, 0x5f, 0x77, 0x61, 0x72, 0x6e,
	0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x5f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x70, 0x61, 0x79, 0x42, 0x25,
	0x0a, 0x23, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x27, 0x0a, 0x25, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x21,
	0x0a, 0x1f, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69,
	0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x42, 0x2e, 0x0a, 0x2c, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69,
	0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x72, 0x65,
	0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x74, 0x69, 0x6d,
	0x65, 0x42, 0x22, 0x0a, 0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69,
	0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f,
	0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x24, 0x0a, 0x22, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x24, 0x0a, 0x22, 0x5f,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x42, 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x08, 0x0a, 0x06, 0x5f,
	0x70, 0x61, 0x79, 0x65, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x18, 0x0a, 0x16, 0x5f,
	0x6d, 0x69, 0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65,
	0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x0c, 0x0a,
	0x0a, 0x5f, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x72,
	0x75, 0x6e, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x75, 0x74, 0x66, 0x38,
	0x42, 0x06, 0x0a, 0x04, 0x5f, 0x68, 0x65, 0x78, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x65, 0x63,
	0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61,
	0x74, 0x75, 0x72, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
	0x79, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6f, 0x66,
	0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x22, 0x0a,
	0x20, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e,
	0x67, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x5f, 0x69,
	0x64, 0x42, 0x1d, 0x0a, 0x1b, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x6d,
	0x70, 0x74, 0x79, 0x5f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68,
	0x22, 0xab, 0x02, 0x0a, 0x11, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72,
	0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f,
	0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
	0x0b, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x1f, 0x0a, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x01, 0x52, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01,
	0x12, 0x29, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x69, 0x64, 0x5f, 0x64,
	0x69, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0c, 0x66, 0x69, 0x72, 0x73,
	0x74, 0x53, 0x63, 0x69, 0x64, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x66,
	0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x03, 0x52, 0x09, 0x66, 0x69, 0x72, 0x73, 0x74, 0x53, 0x63, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x29, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x6b, 0x65,
	0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0c, 0x66, 0x69, 0x72, 0x73, 0x74,
	0x50, 0x61, 0x74, 0x68, 0x4b, 0x65, 0x79, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66,
	0x69, 0x72, 0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x0b, 0x0a, 0x09,
	0x5f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x69,
	0x72, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x0d, 0x0a, 0x0b,
	0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f,
	0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x22, 0xbb,
	0x01, 0x0a, 0x1f, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x72,
	0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x50, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64,
	0x6f, 0x77, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x62, 0x65,
	0x66, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x65, 0x63, 0x6f,
	0x6e, 0x64, 0x73, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x63,
	0x6f, 0x6e, 0x64, 0x73, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x0c, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x41, 0x66, 0x74, 0x65, 0x72, 0x12, 0x34,
	0x0a, 0x13, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x12, 0x70,
	0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x88, 0x01, 0x01, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74,
	0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xdd, 0x02, 0x0a,
	0x12, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61,
	0x74, 0x68, 0x73, 0x12, 0x29, 0x0a, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x69,
	0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0c, 0x66,
	0x69, 0x72, 0x73, 0x74, 0x53, 0x63, 0x69, 0x64, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1f,
	0x0a, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x01, 0x52, 0x08, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12,
	0x27, 0x0a, 0x0d, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4e,
	0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x69, 0x72, 0x73,
	0x74, 0x5f, 0x73, 0x63, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x09,
	0x66, 0x69, 0x72, 0x73, 0x74, 0x53, 0x63, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x04,
	0x70, 0x61, 0x74, 0x68, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61,
	0x74, 0x68, 0x73, 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x29, 0x0a,
	0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x0c, 0x66, 0x69, 0x72, 0x73, 0x74, 0x50, 0x61,
	0x74, 0x68, 0x4b, 0x65, 0x79, 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x69, 0x72,
	0x73, 0x74, 0x5f, 0x73, 0x63, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
	0x62, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x69, 0x72,
	0x73, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66,
	0x69, 0x72, 0x73, 0x74, 0x5f, 0x73, 0x63, 0x69, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x69,
	0x72, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x6b, 0x65, 0x79, 0x22, 0x7a, 0x0a, 0x16,
	0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x5f, 0x70, 0x61, 0x74,
	0x68, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65,
	0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x0d, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x38,
	0x0a, 0x18, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x63, 0x69,
	0x70, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x16, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x63, 0x69, 0x70,
	0x69, 0x65, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x7b, 0x0a, 0x17, 0x44, 0x65, 0x63, 0x6f,
	0x64, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x50,
	0x61, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x6c, 0x69, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6e,
	0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x62, 0x6c,
	0x69, 0x6e, 0x64, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x18, 0x65,
	0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
	0x6e, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x16, 0x65,
	0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e,
	0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x70, 0x0a, 0x17, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x49,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73,
	0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x65,
	0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x07,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xe6, 0x02, 0x0a, 0x0f, 0x44, 0x65, 0x63, 0x6f,
	0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x5d, 0x0a, 0x29, 0x77,
	0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66,
	0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x5f, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
	0x52, 0x25, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x09, 0x69, 0x74,
	0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61,
	0x63, 0x6b, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61,
	0x63, 0x6b, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70,
	0x65, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x01, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x65,
	0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x68, 0x65, 0x78, 0x22, 0x4b, 0x0a, 0x13,
	0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x32, 0x50, 0x4b, 0x48, 0x10, 0x00, 0x12, 0x08,
	0x0a, 0x04, 0x50, 0x32, 0x53, 0x48, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x32, 0x57, 0x50,
	0x4b, 0x48, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x32, 0x57, 0x53, 0x48, 0x10, 0x03, 0x12,
	0x08, 0x0a, 0x04, 0x50, 0x32, 0x54, 0x52, 0x10, 0x04, 0x42, 0x2c, 0x0a, 0x2a, 0x5f, 0x77, 0x61,
	0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x66, 0x61,
	0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
	0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x22, 0x33, 0x0a, 0x0b, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12,
	0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61,
	0x67, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x52, 0x0a, 0x12, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52,
	0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x61,
	0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12,
	0x18, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0xe8, 0x01, 0x0a, 0x0d, 0x44, 0x65,
	0x6c, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x37,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69,
	0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69,
	0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64,
	0x88, 0x01, 0x01, 0x22, 0x28, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10,
	0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x42, 0x09, 0x0a,
	0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x69, 0x64, 0x22, 0x41, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x08, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
	0x65, 0x6c, 0x70, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x08, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x86, 0x07, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x70,
	0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x04, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65,
	0x78, 0x88, 0x01, 0x01, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65,
	0x6c, 0x70, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x44, 0x65, 0x6c,
	0x70, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
	0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04,
	0x48, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x0c, 0x48, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52,
	0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
	0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
	0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75,
	0x70, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x07, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28,
	0x0c, 0x48, 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69,
	0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88,
	0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x0f, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x0a, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x0b, 0x52, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x88, 0x01,
	0x01, 0x22, 0x3d, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x50, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e,
	0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44,
	0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x02,
	0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0e, 0x0a,
	0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a,
	0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a,
	0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42,
	0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42, 0x13, 0x0a, 0x11,
	0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
	0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x32, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
	0x22, 0xd0, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63,
	0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x69, 0x6e, 0x48, 0x74, 0x6c,
	0x63, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72,
	0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x66,
	0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x22, 0x3d, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61,
	0x72, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54,
	0x4c, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46,
	0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45,
	0x44, 0x10, 0x02, 0x22, 0x14, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
	0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x0a, 0x13, 0x44, 0x69, 0x73,
	0x61, 0x62, 0x6c, 0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x19, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x22, 0xb9, 0x01, 0x0a, 0x14,
	0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x12,
	0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c,
	0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e,
	0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12,
	0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73,
	0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a,
	0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x2f, 0x0a, 0x12, 0x45, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a,
	0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x22, 0xb8, 0x01, 0x0a, 0x13, 0x45, 0x6e, 0x61,
	0x62, 0x6c, 0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x19, 0x0a, 0x08, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61,
	0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74,
	0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55,
	0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73,
	0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19,
	0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61,
	0x62, 0x65, 0x6c, 0x22, 0x48, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65,
	0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0x14, 0x0a,
	0x12, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x72, 0x0a, 0x0f, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x73, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65,
	0x22, 0x25, 0x0a, 0x0d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x53, 0x74, 0x79, 0x6c,
	0x65, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x45, 0x52, 0x4b, 0x42, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05,
	0x50, 0x45, 0x52, 0x4b, 0x57, 0x10, 0x01, 0x22, 0xd7, 0x02, 0x0a, 0x10, 0x46, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x18,
	0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f,
	0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
	0x52, 0x16, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
	0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x05, 0x70,
	0x65, 0x72, 0x6b, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x62, 0x48, 0x01,
	0x52, 0x05, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x05, 0x70, 0x65,
	0x72, 0x6b, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77, 0x48, 0x02, 0x52,
	0x05, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x88, 0x01, 0x01, 0x12, 0x5b, 0x0a, 0x15, 0x6f, 0x6e, 0x63,
	0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74,
	0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x4f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66,
	0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x48, 0x03, 0x52, 0x13,
	0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x65, 0x65, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61,
	0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61,
	0x74, 0x65, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x65, 0x72, 0x6b, 0x62, 0x42, 0x08, 0x0a,
	0x06, 0x5f, 0x70, 0x65, 0x72, 0x6b, 0x77, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x6f, 0x6e, 0x63, 0x68,
	0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65,
	0x73, 0x22, 0xe7, 0x04, 0x0a, 0x0d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65,
	0x72, 0x6b, 0x62, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70,
	0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e,
	0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61,
	0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c,
	0x65, 0x12, 0x1d, 0x0a, 0x07, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01,
	0x12, 0x26, 0x0a, 0x0c, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0b, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c,
	0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x75, 0x6e, 0x69, 0x6c,
	0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x02, 0x52, 0x0f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c,
	0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x61,
	0x79, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48,
	0x03, 0x52, 0x0b, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x54, 0x6f, 0x55, 0x73, 0x88, 0x01,
	0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0e, 0x68, 0x74,
	0x6c, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x1d, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d,
	0x48, 0x05, 0x52, 0x07, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x39,
	0x0a, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73,
	0x50, 0x65, 0x72, 0x6b, 0x62, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x52, 0x09,
	0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6c, 0x6f,
	0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x6f,
	0x72, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a, 0x17, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72,
	0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x07, 0x52, 0x15, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65,
	0x72, 0x61, 0x6c, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01,
	0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x42, 0x0f, 0x0a,
	0x0d, 0x5f, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x13,
	0x0a, 0x11, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c,
	0x6f, 0x73, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f,
	0x74, 0x6f, 0x5f, 0x75, 0x73, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x72,
	0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x65,
	0x6e, 0x61, 0x6c, 0x74, 0x79, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x42,
	0x1a, 0x0a, 0x18, 0x5f, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x61,
	0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x22, 0x7d, 0x0a, 0x16, 0x46,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x62, 0x45, 0x73, 0x74, 0x69,
	0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12,
	0x29, 0x0a, 0x10, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x5f, 0x66, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x6d, 0x6f, 0x6f, 0x74,
	0x68, 0x65, 0x64, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0xe7, 0x04, 0x0a, 0x0d, 0x46,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77, 0x12, 0x25, 0x0a, 0x0e,
	0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61,
	0x62, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70,
	0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x78,
	0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x6f, 0x70,
	0x65, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x6f,
	0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6d, 0x75, 0x74,
	0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48,
	0x01, 0x52, 0x0b, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x2e, 0x0a, 0x10, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f,
	0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0f, 0x75,
	0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x27, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f,
	0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x0b, 0x64, 0x65, 0x6c, 0x61,
	0x79, 0x65, 0x64, 0x54, 0x6f, 0x55, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0e, 0x68, 0x74, 0x6c, 0x63, 0x52, 0x65, 0x73, 0x6f, 0x6c,
	0x75, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x65, 0x6e, 0x61,
	0x6c, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x07, 0x70, 0x65, 0x6e,
	0x61, 0x6c, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d,
	0x61, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x6b, 0x77, 0x45, 0x73,
	0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x52, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74,
	0x65, 0x73, 0x12, 0x19, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x06, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a,
	0x17, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68,
	0x6f, 0x72, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x07,
	0x52, 0x15, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x41, 0x6e, 0x63, 0x68,
	0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f,
	0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6d, 0x75, 0x74, 0x75, 0x61,
	0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x75, 0x6e, 0x69, 0x6c,
	0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x10, 0x0a, 0x0e,
	0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x42, 0x12,
	0x0a, 0x10, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69,
	0x6f, 0x6e, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x42, 0x08,
	0x0a, 0x06, 0x5f, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x75, 0x6e, 0x69,
	0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x63,
	0x6c, 0x6f, 0x73, 0x65, 0x22, 0x7d, 0x0a, 0x16, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73,
	0x50, 0x65, 0x72, 0x6b, 0x77, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x1e,
	0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18,
	0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x6d, 0x6f, 0x6f,
	0x74, 0x68, 0x65, 0x64, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x0f, 0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x65, 0x64, 0x46, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x22, 0xad, 0x03, 0x0a, 0x1d, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73,
	0x4f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x65, 0x73, 0x74, 0x69,
	0x6d, 0x61, 0x74, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67,
	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69,
	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x16, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e, 0x67,
	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12,
	0x32, 0x0a, 0x15, 0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
	0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13,
	0x6d, 0x75, 0x74, 0x75, 0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53, 0x61, 0x74, 0x6f, 0x73,
	0x68, 0x69, 0x73, 0x12, 0x3a, 0x0a, 0x19, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61,
	0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x17, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72,
	0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12,
	0x32, 0x0a, 0x15, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f,
	0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13,
	0x68, 0x74, 0x6c, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x61, 0x74, 0x6f, 0x73,
	0x68, 0x69, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x73, 0x75, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x13, 0x68, 0x74, 0x6c, 0x63, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x53,
	0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12, 0x52, 0x0a, 0x23, 0x75, 0x6e, 0x69, 0x6c, 0x61,
	0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x6e, 0x6f, 0x6e, 0x61,
	0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x20, 0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72,
	0x61, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x4e, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72,
	0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x88, 0x01, 0x01, 0x42, 0x26, 0x0a, 0x24, 0x5f,
	0x75, 0x6e, 0x69, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65,
	0x5f, 0x6e, 0x6f, 0x6e, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73,
	0x68, 0x69, 0x73, 0x22, 0x8e, 0x04, 0x0a, 0x13, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x66, 0x66, 0x65,
	0x72, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69,
	0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x32, 0x0a, 0x12, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65,
	0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x04, 0x48, 0x02, 0x52, 0x11, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x43,
	0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x63,
	0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x01, 0x48, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
	0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x63,
	0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63,
	0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d,
	0x65, 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x48, 0x05, 0x52, 0x07, 0x74, 0x69,
	0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x65,
	0x72, 0x5f, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x09,
	0x70, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e,
	0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x09,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x65, 0x74,
	0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x71, 0x75, 0x61,
	0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72,
	0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x42, 0x13, 0x0a, 0x11,
	0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72,
	0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
	0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f,
	0x75, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x74,
	0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61,
	0x64, 0x61, 0x74, 0x61, 0x22, 0xb8, 0x01, 0x0a, 0x14, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a,
	0x07, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
	0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x73, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0b, 0x6e,
	0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x4e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x48, 0x00,
	0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x88, 0x01, 0x01, 0x42,
	0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22,
	0xc7, 0x02, 0x0a, 0x13, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x14, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x13, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72,
	0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02,
	0x52, 0x0d, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x88,
	0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12,
	0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x48, 0x04, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88,
	0x01, 0x01, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x11, 0x0a, 0x0f, 0x5f,
	0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0xb9, 0x01, 0x0a, 0x17, 0x46, 0x65,
	0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x65, 0x78, 0x74, 0x5f, 0x70,
	0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12,
	0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a,
	0x07, 0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07,
	0x65, 0x6e, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x77, 0x69,
	0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x0e, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x72, 0x74,
	0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x65, 0x6e,
	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x61, 0x79, 0x77, 0x69, 0x6e, 0x64,
	0x6f, 0x77, 0x45, 0x6e, 0x64, 0x22, 0x2b, 0x0a, 0x19, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02,
	0x69, 0x64, 0x22, 0x3a, 0x0a, 0x1a, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x1c, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x65, 0x64, 0x22, 0x41,
	0x0a, 0x1b, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f,
	0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
	0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62,
	0x74, 0x22, 0x6e, 0x0a, 0x1c, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
	0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f,
	0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63,
	0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65,
	0x64, 0x22, 0xf7, 0x04, 0x0a, 0x12, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f, 0x72, 0x41, 0x6c, 0x6c, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x1f, 0x0a, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x01, 0x52, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01,
	0x12, 0x2d, 0x0a, 0x09, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x02, 0x52, 0x08, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x03, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12,
	0x31, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x48, 0x04, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x6d, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65,
	0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d,
	0x70, 0x61, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x0e, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x07,
	0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x06, 0x52,
	0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75,
	0x74, 0x78, 0x6f, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73,
	0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x07, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01,
	0x01, 0x12, 0x2a, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x0d, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x08, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a,
	0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20,
	0x03, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0b, 0x0a, 0x09,
	0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x75,
	0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73,
	0x65, 0x5f, 0x74, 0x6f, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x5f, 0x61, 0x6d, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74,
	0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f,
	0x6e, 0x66, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42,
	0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0xa2, 0x02, 0x0a, 0x13,
	0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75,
	0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1e,
	0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x00, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x1f,
	0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d,
	0x48, 0x01, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12,
	0x44, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x48, 0x02, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79,
	0x70, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
	0x74, 0x6f, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42,
	0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x22, 0x59, 0x0a, 0x17, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62,
	0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12,
	0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65,
	0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xa9, 0x03, 0x0a, 0x18,
	0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a,
	0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x07,
	0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x61, 0x6e,
	0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x08,
	0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x63,
	0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52,
	0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x09, 0x70,
	0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x08, 0x70,
	0x75, 0x73, 0x68, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69,
	0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x08,
	0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x72,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x07, 0x72, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
	0x6e, 0x63, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f,
	0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0b,
	0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
	0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0xc5, 0x02, 0x0a, 0x19, 0x46, 0x75, 0x6e, 0x64,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
	0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x22,
	0x0a, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x70, 0x75, 0x62, 0x6b,
	0x65, 0x79, 0x12, 0x4a, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
	0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74,
	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e,
	0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x01, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x23,
	0x0a, 0x0d, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x55, 0x73,
	0x61, 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74,
	0x68, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
	0x74, 0x6f, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x22,
	0x5f, 0x0a, 0x1d, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73,
	0x74, 0x61, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04,
	0x62, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20,
	0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73,
	0x22, 0xa4, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x39, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65,
	0x6c, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x22, 0x4e, 0x0a,
	0x0b, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x0a, 0x0a, 0x06,
	0x42, 0x52, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x55, 0x53,
	0x55, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x02, 0x12,
	0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x03, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4f,
	0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x05, 0x42, 0x08, 0x0a,
	0x06, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x8d, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x6c,
	0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x79, 0x74,
	0x65, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62,
	0x79, 0x74, 0x65, 0x73, 0x55, 0x73, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x79, 0x74, 0x65,
	0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x79, 0x74,
	0x65, 0x73, 0x4d, 0x61, 0x78, 0x12, 0x20, 0x0a, 0x03, 0x6c, 0x6f, 0x67, 0x18, 0x04, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c,
	0x6f, 0x67, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x22, 0x9f, 0x03, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x6c,
	0x6f, 0x67, 0x4c, 0x6f, 0x67, 0x12, 0x39, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47,
	0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c, 0x6f, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x4c,
	0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65,
	0x12, 0x24, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x53, 0x6b, 0x69, 0x70,
	0x70, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x02, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03,
	0x6c, 0x6f, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x03, 0x6c, 0x6f, 0x67,
	0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x88, 0x01,
	0x01, 0x12, 0x17, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x22, 0x6c, 0x0a, 0x0d, 0x47, 0x65,
	0x74, 0x6c, 0x6f, 0x67, 0x4c, 0x6f, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53,
	0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x52, 0x4f, 0x4b,
	0x45, 0x4e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x55, 0x53, 0x55, 0x41, 0x4c, 0x10,
	0x02, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x44,
	0x45, 0x42, 0x55, 0x47, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4f, 0x5f, 0x49, 0x4e, 0x10,
	0x05, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x4f, 0x5f, 0x4f, 0x55, 0x54, 0x10, 0x06, 0x12, 0x09, 0x0a,
	0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x07, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x75, 0x6d,
	0x5f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x69, 0x6d,
	0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x06, 0x0a, 0x04,
	0x5f, 0x6c, 0x6f, 0x67, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64,
	0x42, 0x07, 0x0a, 0x05, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x22, 0xf2, 0x0a, 0x0a, 0x13, 0x46, 0x75,
	0x6e, 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x48, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x75, 0x6e, 0x64,
	0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x48, 0x00,
	0x52, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a, 0x70,
	0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x09,
	0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4d, 0x6f, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b,
	0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x02, 0x52, 0x0a, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x88,
	0x01, 0x01, 0x12, 0x45, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x03, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x54, 0x68, 0x65, 0x69, 0x72, 0x46, 0x75, 0x6e, 0x64, 0x69,
	0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x16, 0x6d, 0x61, 0x78,
	0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x54, 0x68, 0x65,
	0x69, 0x72, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
	0x12, 0x41, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x6d, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x11, 0x70,
	0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x14, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06,
	0x52, 0x11, 0x70, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x61, 0x78, 0x4d,
	0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x5f, 0x74, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x07,
	0x52, 0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x54, 0x61, 0x6e, 0x6b, 0x4d, 0x73, 0x61,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x66, 0x75, 0x7a, 0x7a, 0x5f, 0x70, 0x65, 0x72,
	0x63, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x08, 0x52, 0x0b, 0x66, 0x75,
	0x7a, 0x7a, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10,
	0x66, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x09, 0x52, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x50, 0x72,
	0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x13,
	0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0a, 0x52, 0x10, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x46,
	0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a,
	0x0f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x69, 0x73,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x0b, 0x52, 0x0d, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x46,
	0x65, 0x65, 0x42, 0x61, 0x73, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x66, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0d, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x0c, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x57, 0x65, 0x69,
	0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0d, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x5b, 0x0a, 0x28, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65,
	0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e,
	0x61, 0x6c, 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x18, 0x0f,
	0x20, 0x01, 0x28, 0x0d, 0x48, 0x0e, 0x52, 0x24, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46,
	0x65, 0x65, 0x4d, 0x61, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61,
	0x6c, 0x54, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12,
	0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65,
	0x18, 0x10, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x0f, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63,
	0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x22, 0x39, 0x0a, 0x12, 0x46, 0x75, 0x6e,
	0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12,
	0x09, 0x0a, 0x05, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x56,
	0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x46, 0x49, 0x58,
	0x45, 0x44, 0x10, 0x02, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42,
	0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x42, 0x19,
	0x0a, 0x17, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e,
	0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x6d, 0x61,
	0x78, 0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a,
	0x15, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x61,
	0x78, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x5f, 0x74, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0f, 0x0a, 0x0d,
	0x5f, 0x66, 0x75, 0x7a, 0x7a, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x13, 0x0a,
	0x11, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69,
	0x74, 0x79, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65,
	0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6c,
	0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x69, 0x73, 0x42, 0x11,
	0x0a, 0x0f, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68,
	0x74, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65,
	0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x2b, 0x0a, 0x29, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f,
	0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
	0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x42, 0x10, 0x0a, 0x0e,
	0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x22, 0x81,
	0x09, 0x0a, 0x14, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61,
	0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72,
	0x79, 0x12, 0x44, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x46, 0x75, 0x6e,
	0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52,
	0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x6c, 0x69, 0x63,
	0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x4d, 0x6f, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73,
	0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6c, 0x65, 0x61,
	0x73, 0x65, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x40, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x5f, 0x74,
	0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x54, 0x68, 0x65, 0x69, 0x72, 0x46, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x40, 0x0a, 0x16, 0x6d, 0x61, 0x78,
	0x5f, 0x74, 0x68, 0x65, 0x69, 0x72, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x54, 0x68, 0x65, 0x69, 0x72,
	0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3c, 0x0a, 0x14, 0x70,
	0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x11, 0x70, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x4d, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3c, 0x0a, 0x14, 0x70, 0x65, 0x72,
	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x11, 0x70, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x4d, 0x61, 0x78, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x5f, 0x74, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x54, 0x61, 0x6e, 0x6b, 0x4d, 0x73, 0x61, 0x74,
	0x12, 0x21, 0x0a, 0x0c, 0x66, 0x75, 0x7a, 0x7a, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x66, 0x75, 0x7a, 0x7a, 0x50, 0x65, 0x72, 0x63,
	0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x62,
	0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x66,
	0x75, 0x6e, 0x64, 0x50, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x3f,
	0x0a, 0x13, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x10, 0x6c, 0x65, 0x61, 0x73,
	0x65, 0x46, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x2b, 0x0a, 0x0f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73,
	0x69, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0d, 0x6c, 0x65, 0x61, 0x73,
	0x65, 0x46, 0x65, 0x65, 0x42, 0x61, 0x73, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0e,
	0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x57,
	0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x19, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x5b, 0x0a, 0x28, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69,
	0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73,
	0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x24, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x46, 0x65, 0x65, 0x4d, 0x61, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f,
	0x6e, 0x61, 0x6c, 0x54, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73, 0x88, 0x01,
	0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61,
	0x73, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70,
	0x61, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x22, 0x39, 0x0a, 0x12, 0x46,
	0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63,
	0x79, 0x12, 0x09, 0x0a, 0x05, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09,
	0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x46,
	0x49, 0x58, 0x45, 0x44, 0x10, 0x02, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65,
	0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x12,
	0x0a, 0x10, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73,
	0x69, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x77,
	0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x42, 0x2b, 0x0a, 0x29, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x66, 0x65, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69,
	0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x73,
	0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61,
	0x73, 0x65, 0x22, 0xb5, 0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x69, 0x73, 0x6b, 0x66, 0x61,
	0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x72, 0x69, 0x73, 0x6b,
	0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x04, 0x63, 0x6c, 0x74, 0x76, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x66, 0x72, 0x6f, 0x6d, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x01, 0x52, 0x06, 0x66, 0x72, 0x6f, 0x6d, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b,
	0x66, 0x75, 0x7a, 0x7a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x02, 0x52, 0x0b, 0x66, 0x75, 0x7a, 0x7a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x18, 0x07,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x12, 0x1d, 0x0a,
	0x07, 0x6d, 0x61, 0x78, 0x68, 0x6f, 0x70, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03,
	0x52, 0x07, 0x6d, 0x61, 0x78, 0x68, 0x6f, 0x70, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0b,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x63,
	0x6c, 0x74, 0x76, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x69, 0x64, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x66, 0x75, 0x7a, 0x7a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x0a,
	0x0a, 0x08, 0x5f, 0x6d, 0x61, 0x78, 0x68, 0x6f, 0x70, 0x73, 0x22, 0x3c, 0x0a, 0x10, 0x47, 0x65,
	0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28,
	0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74,
	0x65, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x22, 0xf7, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74,
	0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
	0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x3b, 0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72,
	0x6f, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75,
	0x74, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, 0x05, 0x73, 0x74,
	0x79, 0x6c, 0x65, 0x22, 0x1d, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x4c, 0x56,
	0x10, 0x00, 0x22, 0x8b, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x61,
	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07,
	0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74,
	0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x05, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x08, 0x0a, 0x06,
	0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x22, 0x52, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73,
	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x65, 0x73, 0x22, 0x7a, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x61, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x65, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x16,
	0x0a, 0x06, 0x6b, 0x65, 0x79, 0x69, 0x64, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06,
	0x6b, 0x65, 0x79, 0x69, 0x64, 0x78, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x65, 0x63, 0x68, 0x33, 0x32,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x62, 0x65, 0x63, 0x68, 0x33, 0x32,
	0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x32, 0x74, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x01, 0x52, 0x04, 0x70, 0x32, 0x74, 0x72, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07,
	0x5f, 0x62, 0x65, 0x63, 0x68, 0x33, 0x32, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x32, 0x74, 0x72,
	0x22, 0xeb, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88,
	0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x09, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x0a, 0x6f,
	0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x05,
	0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
	0x64, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x48, 0x03, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x04, 0x48, 0x04, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x19,
	0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52,
	0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x22, 0x4c, 0x0a, 0x12, 0x4c, 0x69, 0x73,
	0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
	0x0b, 0x0a, 0x07, 0x4f, 0x46, 0x46, 0x45, 0x52, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07,
	0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43,
	0x41, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x46,
	0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x22, 0x2d, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x66,
	0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x0b, 0x0a, 0x07,
	0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x50, 0x44,
	0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x42, 0x08, 0x0a, 0x06, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73,
	0x74, 0x61, 0x72, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x4d,
	0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72,
	0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61,
	0x72, 0x64, 0x73, 0x52, 0x08, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x22, 0xd7, 0x07,
	0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f,
	0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x24, 0x0a, 0x07, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x4c, 0x0a, 0x06, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f,
	0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61,
	0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x63,
	0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01,
	0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24,
	0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
	0x01, 0x12, 0x2b, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x02, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4e,
	0x0a, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
	0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72,
	0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x79,
	0x6c, 0x65, 0x48, 0x03, 0x52, 0x05, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21,
	0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01,
	0x28, 0x04, 0x48, 0x04, 0x52, 0x08, 0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x64, 0x88, 0x01,
	0x01, 0x12, 0x23, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x64,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x48, 0x74, 0x6c,
	0x63, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52,
	0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
	0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x48, 0x07, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x72, 0x65,
	0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28,
	0x01, 0x48, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x54, 0x69, 0x6d,
	0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x63, 0x6f, 0x64, 0x65,
	0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x09, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x63, 0x6f,
	0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x72, 0x65, 0x61,
	0x73, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0a, 0x52, 0x0a, 0x66, 0x61, 0x69,
	0x6c, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x22, 0x54, 0x0a, 0x1a, 0x4c, 0x69,
	0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72,
	0x64, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46, 0x46, 0x45,
	0x52, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44,
	0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c,
	0x45, 0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03,
	0x22, 0x30, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73,
	0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x0a, 0x0a,
	0x06, 0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x4c, 0x56,
	0x10, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x08, 0x0a, 0x06,
	0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x69, 0x64, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x72, 0x65,
	0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
	0x66, 0x61, 0x69, 0x6c, 0x63, 0x6f, 0x64, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66, 0x61, 0x69,
	0x6c, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x76, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x08,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00,
	0x52, 0x07, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b,
	0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x88,
	0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42,
	0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x22,
	0x43, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x06, 0x6f, 0x66,
	0x66, 0x65, 0x72, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66,
	0x65, 0x72, 0x73, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x66, 0x66,
	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6f, 0x66, 0x66,
	0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1d, 0x0a, 0x0a,
	0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62,
	0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88,
	0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0xb6, 0x03, 0x0a,
	0x0f, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x00, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a,
	0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61,
	0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x70, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x02, 0x52, 0x06, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x70, 0x61, 0x79, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x48, 0x03, 0x52, 0x05, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x88, 0x01,
	0x01, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d,
	0x48, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x22, 0x37, 0x0a, 0x0e,
	0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b,
	0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43,
	0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49,
	0x4c, 0x45, 0x44, 0x10, 0x02, 0x22, 0x29, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79,
	0x73, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45,
	0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01,
	0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x0f, 0x0a, 0x0d, 0x5f,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x09, 0x0a, 0x07,
	0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f,
	0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x39, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x04, 0x70, 0x61, 0x79,
	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x52, 0x04, 0x70, 0x61, 0x79, 0x73,
	0x22, 0x96, 0x07, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61, 0x79,
	0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73,
	0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x48, 0x61, 0x73, 0x68, 0x12, 0x3c, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70,
	0x61, 0x79, 0x73, 0x50, 0x61, 0x79, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73,
	0x50, 0x61, 0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63,
	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
	0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
	0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01,
	0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x03, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a,
	0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x04, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
	0x12, 0x3a, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x06, 0x52, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x88, 0x01,
	0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70,
	0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x48, 0x08,
	0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01,
	0x12, 0x1f, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01,
	0x28, 0x0c, 0x48, 0x09, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x5f, 0x70,
	0x61, 0x72, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0a, 0x52, 0x0d, 0x6e, 0x75,
	0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x50, 0x61, 0x72, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x28,
	0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
	0x0f, 0x20, 0x01, 0x28, 0x04, 0x48, 0x0b, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x48,
	0x0c, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88,
	0x01, 0x01, 0x22, 0x3b, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x50, 0x61,
	0x79, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44,
	0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10,
	0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x02, 0x42,
	0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42,
	0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f,
	0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42,
	0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x13, 0x0a, 0x11, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
	0x64, 0x5f, 0x61, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
	0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x5f,
	0x70, 0x61, 0x72, 0x74, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x2e, 0x0a, 0x10, 0x4c, 0x69, 0x73,
	0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a,
	0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88,
	0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x11, 0x4c, 0x69, 0x73,
	0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29,
	0x0a, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c,
	0x63, 0x73, 0x52, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x22, 0xd0, 0x02, 0x0a, 0x0e, 0x4c, 0x69,
	0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x28, 0x0a, 0x10,
	0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x2c,
	0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x49, 0x0a, 0x09,
	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48,
	0x74, 0x6c, 0x63, 0x73, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74,
	0x6c, 0x63, 0x73, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69,
	0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x74,
	0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x48, 0x74, 0x6c, 0x63, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
	0x22, 0x2a, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x48, 0x74, 0x6c,
	0x63, 0x73, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x07, 0x0a, 0x03, 0x4f,
	0x55, 0x54, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x01, 0x22, 0xf9, 0x02, 0x0a,
	0x17, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x73, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
	0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00,
	0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07,
	0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x48, 0x01, 0x52,
	0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75,
	0x74, 0x78, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73,
	0x12, 0x25, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x12, 0x48, 0x02, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x69,
	0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x48, 0x03, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x46,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e,
	0x66, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x73, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0xb6, 0x01, 0x0a, 0x18, 0x4d, 0x75, 0x6c,
	0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x0b, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x73,
	0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x73, 0x12, 0x33, 0x0a, 0x06,
	0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x06, 0x66, 0x61, 0x69, 0x6c, 0x65,
	0x64, 0x22, 0xd5, 0x03, 0x0a, 0x1c, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x64, 0x12, 0x28, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4f,
	0x72, 0x41, 0x6c, 0x6c, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x08,
	0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00,
	0x52, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a,
	0x09, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52,
	0x08, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08,
	0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02,
	0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b,
	0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03,
	0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x6d, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63,
	0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x69, 0x6e,
	0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x08, 0x6d,
	0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x72, 0x65,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
	0x6e, 0x63, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x42, 0x10,
	0x0a, 0x0e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65,
	0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x74, 0x68, 0x42, 0x0a, 0x0a,
	0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0xf8, 0x01, 0x0a, 0x1b, 0x4d, 0x75,
	0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74,
	0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75,
	0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
	0x12, 0x54, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c,
	0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54,
	0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f,
	0x74, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73,
	0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73,
	0x65, 0x5f, 0x74, 0x6f, 0x22, 0x69, 0x0a, 0x27, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e,
	0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x69, 0x64, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62,
	0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22,
	0xa6, 0x02, 0x0a, 0x16, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x50, 0x0a, 0x06, 0x6d, 0x65,
	0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e,
	0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x4d, 0x65,
	0x74, 0x68, 0x6f, 0x64, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x36, 0x0a, 0x05,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x65,
	0x72, 0x72, 0x6f, 0x72, 0x22, 0x72, 0x0a, 0x1c, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e,
	0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x4d, 0x65,
	0x74, 0x68, 0x6f, 0x64, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x10,
	0x00, 0x12, 0x14, 0x0a, 0x10, 0x4f, 0x50, 0x45, 0x4e, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c,
	0x5f, 0x49, 0x4e, 0x49, 0x54, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x55, 0x4e, 0x44, 0x43,
	0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x02, 0x12, 0x18,
	0x0a, 0x14, 0x46, 0x55, 0x4e, 0x44, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x43, 0x4f,
	0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x03, 0x22, 0x4b, 0x0a, 0x1b, 0x4d, 0x75, 0x6c, 0x74,
	0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x61, 0x69, 0x6c,
	0x65, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x12, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xca, 0x01, 0x0a, 0x14, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x77,
	0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29,
	0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x0f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x44, 0x65, 0x73, 0x63,
	0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65,
	0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f, 0x6e,
	0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x63, 0x6f,
	0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x04,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x6f,
	0x69, 0x6e, 0x74, 0x52, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x69, 0x6e, 0x63, 0x6f,
	0x6e, 0x66, 0x22, 0x3b, 0x0a, 0x15, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x77, 0x69, 0x74, 0x68, 0x64,
	0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74,
	0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74,
	0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22,
	0xc8, 0x05, 0x0a, 0x0c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x01, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05,
	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x05, 0x6c,
	0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x71, 0x75, 0x61, 0x6e, 0x74,
	0x69, 0x74, 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52,
	0x0b, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x88, 0x01, 0x01, 0x12,
	0x2c, 0x0a, 0x0f, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69,
	0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52, 0x0e, 0x61, 0x62, 0x73, 0x6f,
	0x6c, 0x75, 0x74, 0x65, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a,
	0x0a, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x88,
	0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
	0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x0e, 0x72,
	0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01,
	0x12, 0x36, 0x0a, 0x14, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70,
	0x61, 0x79, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07,
	0x52, 0x13, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x50, 0x61, 0x79, 0x77,
	0x69, 0x6e, 0x64, 0x6f, 0x77, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x75,
	0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x08, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65,
	0x4c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67,
	0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x48, 0x09, 0x52, 0x09,
	0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x1b,
	0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74,
	0x5f, 0x61, 0x6e, 0x79, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x0a, 0x52, 0x18, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x53,
	0x74, 0x61, 0x72, 0x74, 0x41, 0x6e, 0x79, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x88, 0x01, 0x01,
	0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x42, 0x09, 0x0a, 0x07, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x42, 0x08, 0x0a, 0x06, 0x5f,
	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69,
	0x74, 0x79, 0x5f, 0x6d, 0x61, 0x78, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x61, 0x62, 0x73, 0x6f, 0x6c,
	0x75, 0x74, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x72,
	0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x72, 0x65,
	0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x42, 0x17, 0x0a,
	0x15, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x79,
	0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x72, 0x65, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
	0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x72,
	0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f,
	0x61, 0x6e, 0x79, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22, 0xcc, 0x01, 0x0a, 0x0d, 0x4f,
	0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12,
	0x1d, 0x0a, 0x0a, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x12, 0x16,
	0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x64, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x42,
	0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x39, 0x0a, 0x18, 0x4f, 0x70, 0x65,
	0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x49, 0x64, 0x22, 0x7d, 0x0a, 0x19, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
	0x12, 0x29, 0x0a, 0x10, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x61, 0x6e, 0x63,
	0x65, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x72,
	0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61,
	0x73, 0x6f, 0x6e, 0x22, 0xcf, 0x01, 0x0a, 0x17, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x20,
	0x0a, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74,
	0x12, 0x3a, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69,
	0x6e, 0x67, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x06,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0xe0, 0x02, 0x0a, 0x18, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
	0x64, 0x12, 0x49, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70,
	0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04,
	0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74,
	0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f,
	0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63,
	0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65,
	0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x72,
	0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69,
	0x6e, 0x67, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x12, 0x3f, 0x0a, 0x19, 0x72, 0x65, 0x71, 0x75,
	0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69,
	0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x17, 0x72,
	0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64,
	0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x72,
	0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0x5e, 0x0a, 0x1c, 0x4f, 0x70, 0x65, 0x6e,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x05,
	0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d,
	0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x96, 0x04, 0x0a, 0x17, 0x4f, 0x70, 0x65,
	0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70,
	0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69,
	0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x12, 0x40, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
	0x48, 0x00, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64,
	0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x48,
	0x01, 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x08, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
	0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74,
	0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x07, 0x63, 0x6c, 0x6f, 0x73, 0x65,
	0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x5f, 0x61, 0x6d, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x04, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x41, 0x6d, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70,
	0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88,
	0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x63,
	0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
	0x63, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42,
	0x0e, 0x0a, 0x0c, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6d, 0x74, 0x42,
	0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x5f, 0x6c, 0x65, 0x61, 0x73,
	0x65, 0x22, 0xe0, 0x02, 0x0a, 0x18, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d,
	0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a,
	0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62,
	0x74, 0x12, 0x49, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70,
	0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x13,
	0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x75,
	0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x69,
	0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x12, 0x25, 0x0a,
	0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x65,
	0x72, 0x69, 0x61, 0x6c, 0x12, 0x3f, 0x0a, 0x19, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73,
	0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74,
	0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x17, 0x72, 0x65, 0x71, 0x75, 0x69,
	0x72, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75,
	0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69,
	0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e,
	0x70, 0x75, 0x74, 0x73, 0x22, 0x5e, 0x0a, 0x1c, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65,
	0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x05, 0x6e,
	0x61, 0x6d, 0x65, 0x73, 0x22, 0x5b, 0x0a, 0x19, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
	0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x73, 0x62, 0x74, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x50, 0x73, 0x62,
	0x74, 0x22, 0x5f, 0x0a, 0x1a, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x0e,
	0x0a, 0x02, 0x74, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12,
	0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78,
	0x69, 0x64, 0x22, 0x4e, 0x0a, 0x19, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x12,
	0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73,
	0x62, 0x74, 0x22, 0x91, 0x03, 0x0a, 0x1a, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
	0x12, 0x4b, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65,
	0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a,
	0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62,
	0x74, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73,
	0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12,
	0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63, 0x75, 0x72,
	0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x75,
	0x74, 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64,
	0x69, 0x6e, 0x67, 0x4f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x08, 0x63, 0x6c, 0x6f,
	0x73, 0x65, 0x5f, 0x74, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x07, 0x63,
	0x6c, 0x6f, 0x73, 0x65, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x72, 0x65, 0x71,
	0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f,
	0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x17,
	0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65,
	0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
	0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x6f, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x72, 0x65, 0x71,
	0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f,
	0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0x60, 0x0a, 0x1e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x74, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x69, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x05,
	0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d,
	0x65, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x0b, 0x50, 0x69, 0x6e, 0x67,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x03, 0x6c, 0x65, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x03, 0x6c, 0x65, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x21,
	0x0a, 0x09, 0x70, 0x6f, 0x6e, 0x67, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x01, 0x52, 0x09, 0x70, 0x6f, 0x6e, 0x67, 0x62, 0x79, 0x74, 0x65, 0x73, 0x88, 0x01,
	0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x6c, 0x65, 0x6e, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x6f,
	0x6e, 0x67, 0x62, 0x79, 0x74, 0x65, 0x73, 0x22, 0x26, 0x0a, 0x0c, 0x50, 0x69, 0x6e, 0x67, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x6f, 0x74, 0x6c, 0x65,
	0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x6f, 0x74, 0x6c, 0x65, 0x6e, 0x22,
	0xb9, 0x01, 0x0a, 0x0d, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x35, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x6c, 0x75, 0x67,
	0x69, 0x6e, 0x53, 0x75, 0x62, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x0a, 0x73, 0x75,
	0x62, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x6c, 0x75, 0x67,
	0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67,
	0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f,
	0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x6f, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x0c, 0x0a,
	0x0a, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x97, 0x01, 0x0a, 0x0e,
	0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f,
	0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x75, 0x62, 0x63,
	0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12,
	0x2c, 0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x50, 0x6c, 0x75,
	0x67, 0x69, 0x6e, 0x73, 0x52, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x1b, 0x0a,
	0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72,
	0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x55, 0x0a, 0x0d, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x50,
	0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63,
	0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69,
	0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x22, 0x47, 0x0a, 0x14,
	0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e,
	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74,
	0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x69, 0x6e, 0x76, 0x73,
	0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x52, 0x0a, 0x15, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39,
	0x0a, 0x09, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73,
	0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x09,
	0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xdb, 0x04, 0x0a, 0x16, 0x52, 0x65,
	0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x61, 0x79, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x12, 0x2e, 0x0a, 0x10,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x01, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x18,
	0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74,
	0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73,
	0x88, 0x01, 0x01, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
	0x74, 0x12, 0x3a, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0e, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x50, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70,
	0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
	0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a,
	0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18,
	0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x22, 0x45, 0x0a, 0x1c,
	0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x61, 0x79,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08,
	0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45,
	0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45,
	0x44, 0x10, 0x02, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x61, 0x72,
	0x74, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb8, 0x03, 0x0a, 0x0e, 0x52, 0x65, 0x6e, 0x65,
	0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e,
	0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69,
	0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x06, 0x6d,
	0x61, 0x78, 0x66, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x66,
	0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x64, 0x65, 0x6c, 0x61,
	0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x64, 0x65,
	0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f,
	0x66, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x03, 0x52, 0x08, 0x72, 0x65, 0x74,
	0x72, 0x79, 0x46, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05,
	0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x0e, 0x64, 0x65,
	0x76, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x68, 0x61, 0x64, 0x6f, 0x77, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x06, 0x52, 0x0c, 0x64, 0x65, 0x76, 0x55, 0x73, 0x65, 0x53, 0x68, 0x61, 0x64,
	0x6f, 0x77, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65,
	0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x42,
	0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x09, 0x0a, 0x07, 0x5f, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d,
	0x61, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x74, 0x72,
	0x79, 0x5f, 0x66, 0x6f, 0x72, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42,
	0x11, 0x0a, 0x0f, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x68, 0x61, 0x64,
	0x6f, 0x77, 0x22, 0x9f, 0x04, 0x0a, 0x0f, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67,
	0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73,
	0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x48, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x41, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3a,
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65,
	0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01,
	0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12, 0x1b,
	0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02,
	0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67,
	0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x07,
	0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x22, 0x36, 0x0a, 0x0d, 0x52, 0x65,
	0x6e, 0x65, 0x70, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x43,
	0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e,
	0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44,
	0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a,
	0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x69, 0x64, 0x22, 0x86, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a,
	0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62,
	0x74, 0x12, 0x21, 0x0a, 0x09, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76,
	0x65, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76,
	0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x5b, 0x0a,
	0x15, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73,
	0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65,
	0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xae, 0x01, 0x0a, 0x19, 0x52,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04,
	0x76, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x6f, 0x75, 0x74,
	0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x77, 0x61, 0x73, 0x52, 0x65, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12,
	0x2a, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x62,
	0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x64, 0x54, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x41, 0x0a, 0x14, 0x53,
	0x65, 0x6e, 0x64, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03,
	0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x2f,
	0x0a, 0x15, 0x53, 0x65, 0x6e, 0x64, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22,
	0xde, 0x01, 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x12, 0x14,
	0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c,
	0x61, 0x62, 0x65, 0x6c, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f,
	0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65,
	0x6f, 0x75, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69,
	0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x08, 0x71, 0x75, 0x61, 0x6e,
	0x74, 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65,
	0x6f, 0x75, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79,
	0x22, 0xea, 0x05, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
	0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x20,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48,
	0x61, 0x73, 0x68, 0x12, 0x42, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65,
	0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72,
	0x65, 0x73, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x65, 0x78, 0x70,
	0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x6c,
	0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52,
	0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01,
	0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61,
	0x79, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x04, 0x52,
	0x08, 0x70, 0x61, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x14,
	0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x12, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01,
	0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x04, 0x48, 0x06, 0x52, 0x06, 0x70, 0x61, 0x69, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2e,
	0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61,
	0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x88, 0x01, 0x01, 0x22, 0x36,
	0x0a, 0x11, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12,
	0x08, 0x0a, 0x04, 0x50, 0x41, 0x49, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50,
	0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x32, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x70, 0x61, 0x79, 0x5f, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72,
	0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0a, 0x0a, 0x08,
	0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xf0, 0x02,
	0x0a, 0x11, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x66, 0x65, 0x65, 0x70, 0x70, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48,
	0x01, 0x52, 0x06, 0x66, 0x65, 0x65, 0x70, 0x70, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07,
	0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x07, 0x68, 0x74,
	0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a, 0x07, 0x68, 0x74, 0x6c, 0x63,
	0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x07, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61,
	0x78, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0c, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64,
	0x65, 0x6c, 0x61, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0c, 0x65, 0x6e,
	0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a,
	0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x48, 0x05, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65,
	0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08,
	0x5f, 0x66, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x66, 0x65, 0x65,
	0x70, 0x70, 0x6d, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x42,
	0x0a, 0x0a, 0x08, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x42, 0x0f, 0x0a, 0x0d, 0x5f,
	0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x42, 0x12, 0x0a, 0x10,
	0x5f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73,
	0x22, 0x49, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
	0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x73, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xfb, 0x04, 0x0a, 0x12,
	0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x10, 0x73, 0x68,
	0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65, 0x65,
	0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66,
	0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a, 0x1b, 0x66, 0x65,
	0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d,
	0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
	0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x12, 0x3e, 0x0a, 0x15, 0x6d, 0x69,
	0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x12, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x48,
	0x74, 0x6c, 0x63, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x17, 0x77, 0x61,
	0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x6f,
	0x6f, 0x5f, 0x6c, 0x6f, 0x77, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x14, 0x77,
	0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x48, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x54, 0x6f, 0x6f,
	0x4c, 0x6f, 0x77, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75,
	0x6d, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x48, 0x74, 0x6c, 0x63, 0x4f,
	0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3c, 0x0a, 0x18, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x68, 0x69,
	0x67, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x15, 0x77, 0x61, 0x72, 0x6e,
	0x69, 0x6e, 0x67, 0x48, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x54, 0x6f, 0x6f, 0x48, 0x69, 0x67,
	0x68, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66,
	0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x48,
	0x03, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69, 0x6d, 0x69,
	0x74, 0x73, 0x88, 0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x77,
	0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x5f, 0x74,
	0x6f, 0x6f, 0x5f, 0x6c, 0x6f, 0x77, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x68,
	0x69, 0x67, 0x68, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66,
	0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x22, 0x49, 0x0a, 0x10, 0x53, 0x65, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x15, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04,
	0x5f, 0x76, 0x61, 0x6c, 0x22, 0x41, 0x0a, 0x11, 0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x06, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
	0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xf5, 0x02, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x70,
	0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x70,
	0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x79, 0x6e, 0x61,
	0x6d, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d,
	0x69, 0x63, 0x12, 0x15, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48,
	0x01, 0x52, 0x03, 0x73, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x08,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x09,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x12, 0x48,
	0x04, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x22,
	0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x05, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x88,
	0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x06, 0x0a,
	0x04, 0x5f, 0x73, 0x65, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
	0x73, 0x74, 0x72, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74,
	0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x22,
	0x45, 0x0a, 0x15, 0x53, 0x65, 0x74, 0x70, 0x73, 0x62, 0x74, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x18, 0x0a, 0x07,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x2c, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x70, 0x73, 0x62,
	0x74, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x70, 0x73, 0x62, 0x74, 0x22, 0x32, 0x0a, 0x12, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e,
	0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69,
	0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x2d, 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x22, 0x2e, 0x0a, 0x12, 0x53, 0x69, 0x67, 0x6e, 0x6d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a,
	0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x5f, 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e, 0x6d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c,
	0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05,
	0x72, 0x65, 0x63, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x72, 0x65, 0x63,
	0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x7a, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x7a, 0x62, 0x61, 0x73, 0x65, 0x22, 0x8d, 0x02, 0x0a, 0x12, 0x53, 0x70, 0x6c,
	0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x27,
	0x0a, 0x0f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76,
	0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69,
	0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b,
	0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70, 0x73, 0x62, 0x74, 0x88, 0x01, 0x01, 0x12, 0x29,
	0x0a, 0x0e, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0c, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x66, 0x6f, 0x72,
	0x63, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
	0x48, 0x02, 0x52, 0x0c, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
	0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x70,
	0x73, 0x62, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f,
	0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65,
	0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x22, 0x29, 0x0a, 0x13, 0x53, 0x70, 0x6c, 0x69,
	0x63, 0x65, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70,
	0x73, 0x62, 0x74, 0x22, 0x7c, 0x0a, 0x14, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69,
	0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
	0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73,
	0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12, 0x22,
	0x0a, 0x0a, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x88,
	0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x5f, 0x66, 0x69, 0x72, 0x73,
	0x74, 0x22, 0x77, 0x0a, 0x15, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e,
	0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x78,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x74, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x1b,
	0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00,
	0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x70,
	0x73, 0x62, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x42,
	0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x22, 0x49, 0x0a, 0x14, 0x53, 0x70,
	0x6c, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
	0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x70, 0x73, 0x62, 0x74, 0x22, 0xa7, 0x01, 0x0a, 0x15, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65,
	0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70,
	0x73, 0x62, 0x74, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e,
	0x74, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x12, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x63,
	0x75, 0x72, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x12, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
	0x65, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
	0x48, 0x00, 0x52, 0x11, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x53, 0x65,
	0x63, 0x75, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x42, 0x15, 0x0a, 0x13, 0x5f, 0x73, 0x69, 0x67,
	0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x22,
	0xff, 0x01, 0x0a, 0x10, 0x44, 0x65, 0x76, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x5f, 0x6f,
	0x72, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x4f, 0x72, 0x4a, 0x73, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x64, 0x72,
	0x79, 0x72, 0x75, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x06, 0x64, 0x72,
	0x79, 0x72, 0x75, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x63, 0x65,
	0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01,
	0x52, 0x0c, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x20, 0x0a, 0x09, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x6c, 0x6f, 0x67, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x08, 0x64, 0x65, 0x62, 0x75, 0x67, 0x4c, 0x6f, 0x67,
	0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x5f, 0x77, 0x65, 0x74, 0x72, 0x75,
	0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x09, 0x64, 0x65, 0x76, 0x57, 0x65,
	0x74, 0x72, 0x75, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x64, 0x72, 0x79, 0x72,
	0x75, 0x6e, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x65,
	0x72, 0x61, 0x74, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x6c,
	0x6f, 0x67, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x77, 0x65, 0x74, 0x72, 0x75,
	0x6e, 0x22, 0x9d, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x76, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x72, 0x79, 0x72, 0x75,
	0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x64, 0x72, 0x79, 0x72, 0x75, 0x6e, 0x12,
	0x17, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x04, 0x70, 0x73, 0x62, 0x74, 0x88, 0x01, 0x01, 0x12, 0x13, 0x0a, 0x02, 0x74, 0x78, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x02, 0x74, 0x78, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a,
	0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x04, 0x74,
	0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x6f, 0x67, 0x18, 0x05, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x70, 0x73, 0x62,
	0x74, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x74, 0x78, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69,
	0x64, 0x22, 0x57, 0x0a, 0x16, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e,
	0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70,
	0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x12,
	0x1d, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
	0x48, 0x00, 0x52, 0x07, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0a,
	0x0a, 0x08, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x22, 0x5f, 0x0a, 0x17, 0x55, 0x6e,
	0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74,
	0x73, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xcb, 0x01, 0x0a, 0x1b,
	0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74,
	0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x12,
	0x12, 0x0a, 0x04, 0x76, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76,
	0x6f, 0x75, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x77, 0x61, 0x73, 0x52, 0x65,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x64, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x74,
	0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52,
	0x0f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x54, 0x6f, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
	0x88, 0x01, 0x01, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64,
	0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x83, 0x01, 0x0a, 0x14, 0x55, 0x70,
	0x67, 0x72, 0x61, 0x64, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x2b, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74,
	0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x23, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f,
	0x6b, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65,
	0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6f, 0x6b, 0x22,
	0xb3, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x65,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x75, 0x70, 0x67,
	0x72, 0x61, 0x64, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
	0x48, 0x00, 0x52, 0x0c, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x73,
	0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x01, 0x52, 0x04, 0x70, 0x73, 0x62, 0x74, 0x88, 0x01, 0x01, 0x12, 0x13, 0x0a, 0x02,
	0x74, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x02, 0x74, 0x78, 0x88, 0x01,
	0x01, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x03, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x75,
	0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x73, 0x42, 0x07, 0x0a, 0x05,
	0x5f, 0x70, 0x73, 0x62, 0x74, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x74, 0x78, 0x42, 0x07, 0x0a, 0x05,
	0x5f, 0x74, 0x78, 0x69, 0x64, 0x22, 0x65, 0x0a, 0x16, 0x57, 0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f,
	0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68,
	0x74, 0x12, 0x1d, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x88, 0x01, 0x01,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22, 0x3b, 0x0a, 0x17,
	0x57, 0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b,
	0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x62, 0x6c,
	0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x9a, 0x02, 0x0a, 0x0b, 0x57, 0x61,
	0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x09, 0x73, 0x75, 0x62,
	0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x57,
	0x61, 0x69, 0x74, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x09, 0x73, 0x75,
	0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x3c, 0x0a, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x57, 0x61, 0x69,
	0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x09, 0x69, 0x6e, 0x64, 0x65,
	0x78, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x22, 0x39, 0x0a, 0x0d, 0x57, 0x61, 0x69, 0x74, 0x53, 0x75, 0x62, 0x73, 0x79,
	0x73, 0x74, 0x65, 0x6d, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x53,
	0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x53, 0x10, 0x01,
	0x12, 0x0c, 0x0a, 0x08, 0x53, 0x45, 0x4e, 0x44, 0x50, 0x41, 0x59, 0x53, 0x10, 0x02, 0x22, 0x36,
	0x0a, 0x0d, 0x57, 0x61, 0x69, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07,
	0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x4c,
	0x45, 0x54, 0x45, 0x44, 0x10, 0x02, 0x22, 0xc6, 0x02, 0x0a, 0x0c, 0x57, 0x61, 0x69, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x73, 0x79,
	0x73, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61,
	0x69, 0x74, 0x53, 0x75, 0x62, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x09, 0x73, 0x75, 0x62,
	0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64,
	0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x44,
	0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x48, 0x03, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x88, 0x01, 0x01, 0x22, 0x39, 0x0a, 0x0d, 0x57, 0x61, 0x69, 0x74, 0x53, 0x75, 0x62, 0x73,
	0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e, 0x56, 0x4f, 0x49, 0x43, 0x45,
	0x53, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x53, 0x10,
	0x01, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x45, 0x4e, 0x44, 0x50, 0x41, 0x59, 0x53, 0x10, 0x02, 0x42,
	0x0a, 0x0a, 0x08, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x64, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22,
	0xef, 0x05, 0x0a, 0x0b, 0x57, 0x61, 0x69, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12,
	0x3f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
	0x73, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01,
	0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x01, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88,
	0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x04, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
	0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x48, 0x05, 0x52, 0x06,
	0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x48, 0x06, 0x52, 0x07, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x07,
	0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01,
	0x12, 0x22, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x09,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x09, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0a, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
	0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x48, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x48, 0x74,
	0x6c, 0x63, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x29, 0x0a, 0x07, 0x69, 0x6e, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x0a, 0x52, 0x06, 0x69, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0b, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x22, 0x89, 0x01, 0x0a, 0x11, 0x57, 0x61, 0x69,
	0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0a,
	0x0a, 0x06, 0x55, 0x4e, 0x50, 0x41, 0x49, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x41,
	0x49, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10,
	0x02, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0a,
	0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f,
	0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46, 0x46, 0x45,
	0x52, 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44,
	0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c,
	0x45, 0x44, 0x10, 0x08, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42,
	0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f,
	0x6c, 0x74, 0x31, 0x31, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x32, 0x42,
	0x09, 0x0a, 0x07, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x67,
	0x72, 0x6f, 0x75, 0x70, 0x69, 0x64, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x69, 0x6e, 0x5f, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x69, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x22, 0x3c, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22,
	0xf9, 0x24, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x48, 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x88, 0x01, 0x01, 0x12,
	0x31, 0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69,
	0x6e, 0x73, 0x12, 0x4d, 0x0a, 0x11, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x5f,
	0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x49,
	0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52,
	0x10, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e,
	0x73, 0x12, 0x17, 0x0a, 0x04, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x01, 0x52, 0x04, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x69,
	0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x02, 0x52, 0x0c, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x69,
	0x72, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x70,
	0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x70, 0x69, 0x73, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x04, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x44, 0x65, 0x70, 0x72, 0x65,
	0x63, 0x61, 0x74, 0x65, 0x64, 0x41, 0x70, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08,
	0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05,
	0x52, 0x07, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0e,
	0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x0a,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6c, 0x75,
	0x67, 0x69, 0x6e, 0x12, 0x2a, 0x0a, 0x0e, 0x62, 0x6f, 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65,
	0x72, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x0d, 0x62,
	0x6f, 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12,
	0x28, 0x0a, 0x0d, 0x62, 0x6f, 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x5f, 0x64, 0x62,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07, 0x52, 0x0c, 0x62, 0x6f, 0x6f, 0x6b, 0x6b, 0x65,
	0x65, 0x70, 0x65, 0x72, 0x44, 0x62, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x61, 0x6c, 0x77,
	0x61, 0x79, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x0d, 0x20,
	0x01, 0x28, 0x08, 0x48, 0x08, 0x52, 0x0e, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x55, 0x73, 0x65,
	0x50, 0x72, 0x6f, 0x78, 0x79, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x64, 0x61, 0x65, 0x6d,
	0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x48, 0x09, 0x52, 0x06, 0x64, 0x61, 0x65, 0x6d,
	0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x18,
	0x0f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x0a, 0x52, 0x06, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0b, 0x52, 0x0d, 0x6c, 0x61,
	0x72, 0x67, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x12, 0x39,
	0x0a, 0x16, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x64,
	0x75, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0c,
	0x52, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x44, 0x75,
	0x61, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x15, 0x65, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69,
	0x6e, 0x67, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0d, 0x52, 0x14, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67,
	0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x61, 0x6c, 0x5f, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
	0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0e, 0x52, 0x19, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x13, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x18,
	0x14, 0x20, 0x01, 0x28, 0x08, 0x48, 0x0f, 0x52, 0x12, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x88, 0x01, 0x01, 0x12, 0x52,
	0x0a, 0x23, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73,
	0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x48, 0x10, 0x52, 0x20, 0x65,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x53, 0x68, 0x75, 0x74, 0x64,
	0x6f, 0x77, 0x6e, 0x57, 0x72, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88,
	0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x61, 0x6c, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18,
	0x16, 0x20, 0x01, 0x28, 0x08, 0x48, 0x11, 0x52, 0x17, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x61, 0x6c, 0x50, 0x65, 0x65, 0x72, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
	0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x61, 0x6c, 0x5f, 0x71, 0x75, 0x69, 0x65, 0x73, 0x63, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28,
	0x08, 0x48, 0x12, 0x52, 0x13, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
	0x6c, 0x51, 0x75, 0x69, 0x65, 0x73, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x1d, 0x65,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x75, 0x70, 0x67, 0x72,
	0x61, 0x64, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x18, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x13, 0x52, 0x1b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x61, 0x6c, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
	0x6c, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x19, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73,
	0x5f, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63,
	0x6b, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x48, 0x14, 0x52, 0x17, 0x69, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x73, 0x4f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x46, 0x61, 0x6c, 0x6c, 0x62, 0x61,
	0x63, 0x6b, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
	0x65, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x08, 0x48,
	0x15, 0x52, 0x0f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61,
	0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x72, 0x67, 0x62, 0x18, 0x1b, 0x20, 0x01,
	0x28, 0x0c, 0x48, 0x16, 0x52, 0x03, 0x72, 0x67, 0x62, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05,
	0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x17, 0x52, 0x05, 0x61,
	0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x70, 0x69, 0x64, 0x5f, 0x66,
	0x69, 0x6c, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x18, 0x52, 0x07, 0x70, 0x69, 0x64,
	0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x69, 0x67, 0x6e, 0x6f, 0x72,
	0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x1e, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x19, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c,
	0x69, 0x6d, 0x69, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x77, 0x61, 0x74, 0x63,
	0x68, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x1f, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x1a, 0x52, 0x0f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65, 0x42,
	0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x13, 0x6d, 0x61, 0x78, 0x5f,
	0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18,
	0x20, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1b, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x4c, 0x6f, 0x63, 0x6b,
	0x74, 0x69, 0x6d, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a,
	0x10, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d,
	0x73, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1c, 0x52, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69,
	0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a,
	0x0a, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x22, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x1d, 0x52, 0x09, 0x63, 0x6c, 0x74, 0x76, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x88, 0x01,
	0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x18,
	0x23, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1e, 0x52, 0x09, 0x63, 0x6c, 0x74, 0x76, 0x46, 0x69, 0x6e,
	0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f,
	0x74, 0x69, 0x6d, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x1f, 0x52, 0x0a, 0x63, 0x6f,
	0x6d, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x66,
	0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x20, 0x52,
	0x07, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x72,
	0x65, 0x73, 0x63, 0x61, 0x6e, 0x18, 0x26, 0x20, 0x01, 0x28, 0x12, 0x48, 0x21, 0x52, 0x06, 0x72,
	0x65, 0x73, 0x63, 0x61, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x66, 0x65, 0x65, 0x5f,
	0x70, 0x65, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x27, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x22, 0x52, 0x0d, 0x66, 0x65, 0x65, 0x50, 0x65, 0x72, 0x53, 0x61, 0x74, 0x6f, 0x73,
	0x68, 0x69, 0x88, 0x01, 0x01, 0x12, 0x35, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e,
	0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x28, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x23, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6e, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11,
	0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x48, 0x24, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69,
	0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x2a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x25, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75,
	0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4e, 0x0a, 0x1b, 0x6d, 0x61, 0x78, 0x5f,
	0x64, 0x75, 0x73, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75,
	0x72, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x26, 0x52, 0x17, 0x6d, 0x61,
	0x78, 0x44, 0x75, 0x73, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72,
	0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x5f,
	0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x2c, 0x20, 0x01,
	0x28, 0x04, 0x48, 0x27, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74,
	0x79, 0x53, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18,
	0x2d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x28, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01,
	0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x29, 0x52, 0x0c, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
	0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x62, 0x69,
	0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x2f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x2a, 0x52,
	0x08, 0x62, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07,
	0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x30, 0x20, 0x01, 0x28, 0x08, 0x48, 0x2b, 0x52,
	0x07, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0a, 0x61,
	0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x18, 0x31, 0x20, 0x01, 0x28, 0x08, 0x48,
	0x2c, 0x52, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x88, 0x01, 0x01,
	0x12, 0x19, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x32, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x2d, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x64,
	0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x6e, 0x73, 0x18, 0x33, 0x20, 0x01, 0x28, 0x08,
	0x48, 0x2e, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x6e, 0x73, 0x88, 0x01,
	0x01, 0x12, 0x3d, 0x0a, 0x18, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64,
	0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x18, 0x34, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x2f, 0x52, 0x16, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41,
	0x64, 0x64, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01,
	0x12, 0x46, 0x0a, 0x1d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x72,
	0x74, 0x18, 0x35, 0x20, 0x01, 0x28, 0x12, 0x48, 0x30, 0x52, 0x1a, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
	0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65,
	0x64, 0x50, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x72,
	0x79, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x73, 0x6d, 0x18, 0x36, 0x20, 0x01, 0x28, 0x08, 0x48,
	0x31, 0x52, 0x0c, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x48, 0x73, 0x6d, 0x88,
	0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6d,
	0x6f, 0x64, 0x65, 0x18, 0x37, 0x20, 0x01, 0x28, 0x09, 0x48, 0x32, 0x52, 0x0b, 0x72, 0x70, 0x63,
	0x46, 0x69, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x6c,
	0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x38, 0x20, 0x01, 0x28, 0x09, 0x48, 0x33,
	0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a,
	0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x39, 0x20, 0x01, 0x28,
	0x09, 0x48, 0x34, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x88, 0x01,
	0x01, 0x12, 0x1e, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x3a, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x35, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x2a, 0x0a, 0x0e, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
	0x6d, 0x70, 0x73, 0x18, 0x3b, 0x20, 0x01, 0x28, 0x08, 0x48, 0x36, 0x52, 0x0d, 0x6c, 0x6f, 0x67,
	0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2a, 0x0a,
	0x0e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x18,
	0x3c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x37, 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x46, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x73, 0x75, 0x62,
	0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x38, 0x52, 0x09,
	0x73, 0x75, 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x16,
	0x66, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x63,
	0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x08, 0x48, 0x39, 0x52, 0x15,
	0x66, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x63, 0x6f,
	0x6e, 0x6e, 0x65, 0x63, 0x74, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x15, 0x61, 0x63, 0x63, 0x65,
	0x70, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x6c, 0x76, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x73, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3a, 0x52, 0x12, 0x61, 0x63, 0x63, 0x65, 0x70,
	0x74, 0x48, 0x74, 0x6c, 0x63, 0x54, 0x6c, 0x76, 0x54, 0x79, 0x70, 0x65, 0x73, 0x88, 0x01, 0x01,
	0x12, 0x35, 0x0a, 0x14, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f,
	0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x40, 0x20, 0x01, 0x28, 0x09, 0x48, 0x3b,
	0x52, 0x12, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x61, 0x73, 0x73,
	0x77, 0x6f, 0x72, 0x64, 0x88, 0x01, 0x01, 0x12, 0x36, 0x0a, 0x14, 0x64, 0x65, 0x76, 0x5f, 0x61,
	0x6c, 0x6c, 0x6f, 0x77, 0x64, 0x75, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18,
	0x41, 0x20, 0x01, 0x28, 0x08, 0x48, 0x3c, 0x52, 0x13, 0x64, 0x65, 0x76, 0x41, 0x6c, 0x6c, 0x6f,
	0x77, 0x64, 0x75, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x2f, 0x0a, 0x11, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x5f, 0x64, 0x6e, 0x73, 0x18, 0x42, 0x20, 0x01, 0x28, 0x08, 0x48, 0x3d, 0x52, 0x0f, 0x61, 0x6e,
	0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x44, 0x6e, 0x73, 0x88, 0x01, 0x01,
	0x12, 0x3d, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x43, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x3e, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x88, 0x01, 0x01, 0x12,
	0x21, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x18, 0x44, 0x20, 0x01,
	0x28, 0x08, 0x48, 0x3f, 0x52, 0x09, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x88,
	0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65,
	0x18, 0x45, 0x20, 0x01, 0x28, 0x04, 0x48, 0x40, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
	0x46, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x12, 0x6d, 0x69, 0x6e, 0x5f, 0x65, 0x6d,
	0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x46, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48,
	0x41, 0x52, 0x10, 0x6d, 0x69, 0x6e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x4d,
	0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
	0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18,
	0x47, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x42, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x3d, 0x0a, 0x18, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x73,
	0x65, 0x65, 0x6b, 0x65, 0x72, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18, 0x48, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x43, 0x52, 0x16, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
	0x53, 0x65, 0x65, 0x6b, 0x65, 0x72, 0x50, 0x65, 0x65, 0x72, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a,
	0x0a, 0x08, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x63,
	0x6f, 0x6e, 0x66, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e,
	0x67, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
	0x6b, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x70, 0x72,
	0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x70, 0x69, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
	0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x62, 0x6f, 0x6f,
	0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f,
	0x62, 0x6f, 0x6f, 0x6b, 0x6b, 0x65, 0x65, 0x70, 0x65, 0x72, 0x5f, 0x64, 0x62, 0x42, 0x13, 0x0a,
	0x11, 0x5f, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x6f,
	0x78, 0x79, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x42, 0x09, 0x0a,
	0x07, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x61, 0x72,
	0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f,
	0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x75, 0x61,
	0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67,
	0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
	0x6c, 0x5f, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
	0x42, 0x16, 0x0a, 0x14, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
	0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x42, 0x26, 0x0a, 0x24, 0x5f, 0x65, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f,
	0x77, 0x6e, 0x5f, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
	0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
	0x6c, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x42, 0x17,
	0x0a, 0x15, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f,
	0x71, 0x75, 0x69, 0x65, 0x73, 0x63, 0x65, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x65, 0x78, 0x70, 0x65,
	0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65,
	0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x69, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x66,
	0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x61, 0x74, 0x61,
	0x62, 0x61, 0x73, 0x65, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x42, 0x06, 0x0a, 0x04,
	0x5f, 0x72, 0x67, 0x62, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x0b,
	0x0a, 0x09, 0x5f, 0x70, 0x69, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x14, 0x0a, 0x12, 0x5f,
	0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74,
	0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65, 0x5f,
	0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6c,
	0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x42, 0x13,
	0x0a, 0x11, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x72, 0x6d, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c,
	0x74, 0x61, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x66, 0x69, 0x6e, 0x61,
	0x6c, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d,
	0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x72, 0x65, 0x73, 0x63, 0x61, 0x6e, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x66, 0x65,
	0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x42, 0x17, 0x0a,
	0x15, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
	0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f,
	0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12,
	0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f,
	0x68, 0x74, 0x6c, 0x63, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63,
	0x69, 0x74, 0x79, 0x5f, 0x73, 0x61, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64,
	0x64, 0x72, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x0d, 0x0a, 0x0b,
	0x5f, 0x61, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f,
	0x70, 0x72, 0x6f, 0x78, 0x79, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x5f, 0x64, 0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
	0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
	0x65, 0x64, 0x42, 0x20, 0x0a, 0x1e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x5f,
	0x70, 0x6f, 0x72, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74,
	0x65, 0x64, 0x5f, 0x68, 0x73, 0x6d, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x72, 0x70, 0x63, 0x5f, 0x66,
	0x69, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6c, 0x6f, 0x67,
	0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x70,
	0x72, 0x65, 0x66, 0x69, 0x78, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69,
	0x6c, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f,
	0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x75, 0x62,
	0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x66, 0x65, 0x74, 0x63, 0x68,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x5f, 0x68, 0x74, 0x6c,
	0x63, 0x5f, 0x74, 0x6c, 0x76, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x42, 0x17, 0x0a, 0x15, 0x5f,
	0x74, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73,
	0x77, 0x6f, 0x72, 0x64, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x64, 0x65, 0x76, 0x5f, 0x61, 0x6c, 0x6c,
	0x6f, 0x77, 0x64, 0x75, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x42, 0x14, 0x0a,
	0x12, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f,
	0x64, 0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73,
	0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x42, 0x0d,
	0x0a, 0x0b, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x42, 0x15, 0x0a,
	0x13, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f,
	0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x42, 0x1b,
	0x0a, 0x19, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x73,
	0x65, 0x65, 0x6b, 0x65, 0x72, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x22, 0xec, 0x37, 0x0a, 0x12,
	0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x12, 0x34, 0x0a, 0x04, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x48, 0x00, 0x52,
	0x04, 0x63, 0x6f, 0x6e, 0x66, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x65,
	0x6c, 0x6f, 0x70, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x44, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x48, 0x01, 0x52,
	0x09, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x4d, 0x0a,
	0x0d, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6c, 0x65,
	0x61, 0x72, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x48, 0x02, 0x52, 0x0c, 0x63, 0x6c, 0x65,
	0x61, 0x72, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x0b,
	0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x70, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x6d, 0x70, 0x70, 0x48, 0x03, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x4d,
	0x70, 0x70, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x07, 0x6d, 0x61, 0x69, 0x6e, 0x6e, 0x65, 0x74,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d,
	0x61, 0x69, 0x6e, 0x6e, 0x65, 0x74, 0x48, 0x04, 0x52, 0x07, 0x6d, 0x61, 0x69, 0x6e, 0x6e, 0x65,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x07, 0x72, 0x65, 0x67, 0x74, 0x65, 0x73, 0x74, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65,
	0x67, 0x74, 0x65, 0x73, 0x74, 0x48, 0x05, 0x52, 0x07, 0x72, 0x65, 0x67, 0x74, 0x65, 0x73, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x74, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x53, 0x69, 0x67, 0x6e,
	0x65, 0x74, 0x48, 0x06, 0x52, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x3d, 0x0a, 0x07, 0x74, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x54, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74,
	0x48, 0x07, 0x52, 0x07, 0x74, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x56,
	0x0a, 0x10, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x70, 0x6c, 0x75, 0x67,
	0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e,
	0x48, 0x08, 0x52, 0x0f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x50, 0x6c, 0x75,
	0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e,
	0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50,
	0x6c, 0x75, 0x67, 0x69, 0x6e, 0x48, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88,
	0x01, 0x01, 0x12, 0x44, 0x0a, 0x0a, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x5f, 0x64, 0x69, 0x72,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50,
	0x6c, 0x75, 0x67, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x48, 0x0a, 0x52, 0x09, 0x70, 0x6c, 0x75, 0x67,
	0x69, 0x6e, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12, 0x4d, 0x0a, 0x0d, 0x6c, 0x69, 0x67, 0x68,
	0x74, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e,
	0x67, 0x64, 0x69, 0x72, 0x48, 0x0b, 0x52, 0x0c, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e,
	0x67, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x48, 0x0c, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x88, 0x01, 0x01, 0x12, 0x63, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f,
	0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x70, 0x69, 0x73, 0x18,
	0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6c,
	0x6c, 0x6f, 0x77, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x61, 0x70, 0x69,
	0x73, 0x48, 0x0d, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63,
	0x61, 0x74, 0x65, 0x64, 0x41, 0x70, 0x69, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x08, 0x72,
	0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x70, 0x63, 0x66, 0x69, 0x6c, 0x65, 0x48, 0x0e, 0x52,
	0x07, 0x72, 0x70, 0x63, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x0e, 0x64,
	0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x10, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73, 0x61,
	0x62, 0x6c, 0x65, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x48, 0x0f, 0x52, 0x0d, 0x64, 0x69, 0x73,
	0x61, 0x62, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x54, 0x0a,
	0x10, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x78,
	0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x75, 0x73, 0x65, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x48, 0x10,
	0x52, 0x0e, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x55, 0x73, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79,
	0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x18, 0x12, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x61, 0x65, 0x6d,
	0x6f, 0x6e, 0x48, 0x11, 0x52, 0x06, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12,
	0x3a, 0x0a, 0x06, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x48, 0x12,
	0x52, 0x06, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x0e, 0x6c,
	0x61, 0x72, 0x67, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x14, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x61, 0x72, 0x67,
	0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x48, 0x13, 0x52, 0x0d, 0x6c, 0x61, 0x72,
	0x67, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x12, 0x66, 0x0a,
	0x16, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x75,
	0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x61, 0x6c, 0x64, 0x75, 0x61, 0x6c, 0x66, 0x75, 0x6e, 0x64, 0x48, 0x14, 0x52, 0x14, 0x65, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x44, 0x75, 0x61, 0x6c, 0x46, 0x75,
	0x6e, 0x64, 0x88, 0x01, 0x01, 0x12, 0x65, 0x0a, 0x15, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x18, 0x16,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e,
	0x67, 0x48, 0x15, 0x52, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61,
	0x6c, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x75, 0x0a, 0x1b,
	0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6f, 0x6e, 0x69,
	0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x30, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61,
	0x67, 0x65, 0x73, 0x48, 0x16, 0x52, 0x19, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x61, 0x6c, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
	0x88, 0x01, 0x01, 0x12, 0x5f, 0x0a, 0x13, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x48, 0x17, 0x52, 0x12, 0x65,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x65, 0x72,
	0x73, 0x88, 0x01, 0x01, 0x12, 0x8b, 0x01, 0x0a, 0x23, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x77,
	0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x19, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x37, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x77,
	0x72, 0x6f, 0x6e, 0x67, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x18, 0x52, 0x20, 0x65,
	0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x53, 0x68, 0x75, 0x74, 0x64,
	0x6f, 0x77, 0x6e, 0x57, 0x72, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x88,
	0x01, 0x01, 0x12, 0x6f, 0x0a, 0x19, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
	0x61, 0x6c, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18,
	0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x70, 0x65, 0x65, 0x72, 0x73, 0x74,
	0x6f, 0x72, 0x61, 0x67, 0x65, 0x48, 0x19, 0x52, 0x17, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
	0x65, 0x6e, 0x74, 0x61, 0x6c, 0x50, 0x65, 0x65, 0x72, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
	0x88, 0x01, 0x01, 0x12, 0x62, 0x0a, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e,
	0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x48, 0x1a, 0x52,
	0x13, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x41, 0x6e, 0x63,
	0x68, 0x6f, 0x72, 0x73, 0x88, 0x01, 0x01, 0x12, 0x56, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x62,
	0x61, 0x73, 0x65, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61,
	0x73, 0x65, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x48, 0x1b, 0x52, 0x0f, 0x64, 0x61, 0x74,
	0x61, 0x62, 0x61, 0x73, 0x65, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12,
	0x31, 0x0a, 0x03, 0x72, 0x67, 0x62, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x67, 0x62, 0x48, 0x1c, 0x52, 0x03, 0x72, 0x67, 0x62, 0x88,
	0x01, 0x01, 0x12, 0x37, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x48,
	0x1d, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x08, 0x70,
	0x69, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x69, 0x64, 0x66, 0x69, 0x6c, 0x65, 0x48, 0x1e, 0x52,
	0x07, 0x70, 0x69, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x57, 0x0a, 0x11, 0x69,
	0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73,
	0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x49,
	0x67, 0x6e, 0x6f, 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x48, 0x1f,
	0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x65, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74,
	0x73, 0x88, 0x01, 0x01, 0x12, 0x56, 0x0a, 0x10, 0x77, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d,
	0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x57, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65,
	0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x48, 0x20, 0x52, 0x0f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x74,
	0x69, 0x6d, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x88, 0x01, 0x01, 0x12, 0x5d, 0x0a, 0x13,
	0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f,
	0x63, 0x6b, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x4d, 0x61, 0x78, 0x6c, 0x6f, 0x63, 0x6b, 0x74, 0x69, 0x6d, 0x65, 0x62, 0x6c, 0x6f,
	0x63, 0x6b, 0x73, 0x48, 0x21, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x4c, 0x6f, 0x63, 0x6b, 0x74, 0x69,
	0x6d, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x88, 0x01, 0x01, 0x12, 0x56, 0x0a, 0x10, 0x66,
	0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x18,
	0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x75,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x48, 0x22, 0x52,
	0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73,
	0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x0a, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x74,
	0x61, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6c, 0x74, 0x76, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x48, 0x23, 0x52, 0x09, 0x63, 0x6c, 0x74,
	0x76, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a, 0x0a, 0x63, 0x6c, 0x74,
	0x76, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6c, 0x74, 0x76, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x48,
	0x24, 0x52, 0x09, 0x63, 0x6c, 0x74, 0x76, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12,
	0x47, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x26,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6d,
	0x6d, 0x69, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x48, 0x25, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69,
	0x74, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f,
	0x62, 0x61, 0x73, 0x65, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x46, 0x65, 0x65, 0x62, 0x61, 0x73, 0x65, 0x48, 0x26, 0x52, 0x07, 0x66, 0x65,
	0x65, 0x42, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x63,
	0x61, 0x6e, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x52, 0x65, 0x73, 0x63, 0x61, 0x6e, 0x48, 0x27, 0x52, 0x06, 0x72, 0x65, 0x73, 0x63, 0x61,
	0x6e, 0x88, 0x01, 0x01, 0x12, 0x51, 0x0a, 0x0f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f,
	0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x18, 0x29, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x65, 0x70, 0x65, 0x72, 0x73, 0x61, 0x74, 0x6f,
	0x73, 0x68, 0x69, 0x48, 0x28, 0x52, 0x0d, 0x66, 0x65, 0x65, 0x50, 0x65, 0x72, 0x53, 0x61, 0x74,
	0x6f, 0x73, 0x68, 0x69, 0x88, 0x01, 0x01, 0x12, 0x60, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x63,
	0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18,
	0x2a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61,
	0x78, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73,
	0x48, 0x29, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
	0x74, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x88, 0x01, 0x01, 0x12, 0x57, 0x0a, 0x11, 0x68, 0x74, 0x6c,
	0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2b,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x48, 0x74, 0x6c,
	0x63, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x6d, 0x73, 0x61, 0x74, 0x48, 0x2a, 0x52, 0x0f,
	0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88,
	0x01, 0x01, 0x12, 0x57, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d,
	0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75,
	0x6d, 0x6d, 0x73, 0x61, 0x74, 0x48, 0x2b, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78,
	0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x71, 0x0a, 0x1b, 0x6d,
	0x61, 0x78, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x65, 0x78, 0x70,
	0x6f, 0x73, 0x75, 0x72, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x2d, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61, 0x78, 0x64, 0x75, 0x73, 0x74,
	0x68, 0x74, 0x6c, 0x63, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x73, 0x61, 0x74,
	0x48, 0x2c, 0x52, 0x17, 0x6d, 0x61, 0x78, 0x44, 0x75, 0x73, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x45,
	0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x54,
	0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x73,
	0x61, 0x74, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x4d, 0x69, 0x6e, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x73, 0x61, 0x74, 0x48,
	0x2d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x53, 0x61,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x2f, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x64, 0x64, 0x72, 0x48,
	0x2e, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x4d, 0x0a, 0x0d, 0x61, 0x6e,
	0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x30, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
	0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x48, 0x2f, 0x52, 0x0c, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
	0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x09, 0x62, 0x69, 0x6e,
	0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x31, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x42, 0x69, 0x6e, 0x64, 0x61, 0x64, 0x64, 0x72, 0x48, 0x30, 0x52,
	0x08, 0x62, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3d, 0x0a, 0x07,
	0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x48, 0x31, 0x52,
	0x07, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x12, 0x46, 0x0a, 0x0a, 0x61,
	0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x18, 0x33, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74,
	0x65, 0x6e, 0x48, 0x32, 0x52, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e,
	0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x34, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79,
	0x48, 0x33, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x0b,
	0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x6e, 0x73, 0x18, 0x35, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x6e, 0x73, 0x48, 0x34, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x44,
	0x6e, 0x73, 0x88, 0x01, 0x01, 0x12, 0x6c, 0x0a, 0x18, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63,
	0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65,
	0x64, 0x18, 0x36, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x69, 0x73, 0x63,
	0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x48, 0x35, 0x52, 0x16, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
	0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64,
	0x88, 0x01, 0x01, 0x12, 0x79, 0x0a, 0x1d, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x5f,
	0x70, 0x6f, 0x72, 0x74, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64,
	0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x70, 0x6f, 0x72, 0x74, 0x48, 0x36, 0x52,
	0x1a, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x44, 0x69, 0x73,
	0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x50, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x4d,
	0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x73, 0x6d, 0x18,
	0x38, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x68, 0x73, 0x6d, 0x48, 0x37, 0x52, 0x0c, 0x65, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x48, 0x73, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x4b, 0x0a,
	0x0d, 0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x39,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x70, 0x63,
	0x66, 0x69, 0x6c, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x48, 0x38, 0x52, 0x0b, 0x72, 0x70, 0x63, 0x46,
	0x69, 0x6c, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x88, 0x01, 0x01, 0x12, 0x41, 0x0a, 0x09, 0x6c, 0x6f,
	0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x3a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x48, 0x39,
	0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x44, 0x0a,
	0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x3b, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x70, 0x72, 0x65,
	0x66, 0x69, 0x78, 0x48, 0x3a, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78,
	0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18,
	0x3c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f,
	0x67, 0x66, 0x69, 0x6c, 0x65, 0x48, 0x3b, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x46, 0x69, 0x6c, 0x65,
	0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x0e, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x73, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
	0x73, 0x48, 0x3c, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
	0x70, 0x73, 0x88, 0x01, 0x01, 0x12, 0x50, 0x0a, 0x0e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x66,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x18, 0x3e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x66, 0x65, 0x65, 0x72, 0x61,
	0x74, 0x65, 0x73, 0x48, 0x3d, 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x46, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x64, 0x61,
	0x65, 0x6d, 0x6f, 0x6e, 0x18, 0x3f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x53, 0x75, 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x48, 0x3e, 0x52, 0x09,
	0x73, 0x75, 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x68, 0x0a, 0x16,
	0x66, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x63,
	0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x48, 0x3f, 0x52, 0x15, 0x66, 0x65,
	0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e,
	0x65, 0x63, 0x74, 0x88, 0x01, 0x01, 0x12, 0x61, 0x0a, 0x15, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74,
	0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74, 0x6c, 0x76, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18,
	0x41, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x63,
	0x63, 0x65, 0x70, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x74, 0x6c, 0x76, 0x74, 0x79, 0x70, 0x65, 0x73,
	0x48, 0x40, 0x52, 0x12, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x54, 0x6c,
	0x76, 0x54, 0x79, 0x70, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x60, 0x0a, 0x14, 0x74, 0x6f, 0x72,
	0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
	0x64, 0x18, 0x42, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x54, 0x6f, 0x72, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f,
	0x72, 0x64, 0x48, 0x41, 0x52, 0x12, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
	0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x88, 0x01, 0x01, 0x12, 0x57, 0x0a, 0x11, 0x61,
	0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x6e, 0x73,
	0x18, 0x43, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41,
	0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x6e, 0x73, 0x48, 0x42,
	0x52, 0x0f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x44, 0x6e,
	0x73, 0x88, 0x01, 0x01, 0x12, 0x6c, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73,
	0x18, 0x44, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x69,
	0x6e, 0x70, 0x75, 0x74, 0x73, 0x48, 0x43, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x88,
	0x01, 0x01, 0x12, 0x44, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65,
	0x18, 0x45, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x66, 0x65, 0x65, 0x48, 0x44, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d,
	0x69, 0x74, 0x46, 0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x63, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d,
	0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65,
	0x74, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x6f, 0x66, 0x66,
	0x73, 0x65, 0x74, 0x48, 0x45, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46, 0x65, 0x65,
	0x72, 0x61, 0x74, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x6c, 0x0a,
	0x18, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x65, 0x65,
	0x6b, 0x65, 0x72, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18, 0x47, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x2d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x6e,
	0x65, 0x63, 0x74, 0x73, 0x65, 0x65, 0x6b, 0x65, 0x72, 0x70, 0x65, 0x65, 0x72, 0x73, 0x48, 0x46,
	0x52, 0x16, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x53, 0x65, 0x65,
	0x6b, 0x65, 0x72, 0x50, 0x65, 0x65, 0x72, 0x73, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f,
	0x63, 0x6f, 0x6e, 0x66, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70,
	0x65, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x5f, 0x70, 0x6c, 0x75,
	0x67, 0x69, 0x6e, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65,
	0x5f, 0x6d, 0x70, 0x70, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6d, 0x61, 0x69, 0x6e, 0x6e, 0x65, 0x74,
	0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x72, 0x65, 0x67, 0x74, 0x65, 0x73, 0x74, 0x42, 0x09, 0x0a, 0x07,
	0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x74, 0x65, 0x73, 0x74,
	0x6e, 0x65, 0x74, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e,
	0x74, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70, 0x6c, 0x75,
	0x67, 0x69, 0x6e, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x5f, 0x64,
	0x69, 0x72, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67,
	0x5f, 0x64, 0x69, 0x72, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
	0x42, 0x18, 0x0a, 0x16, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x70, 0x72, 0x65,
	0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x70, 0x69, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x72,
	0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x64, 0x69, 0x73, 0x61,
	0x62, 0x6c, 0x65, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x61,
	0x6c, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x42,
	0x09, 0x0a, 0x07, 0x5f, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x77,
	0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x5f,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x65, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x64, 0x75, 0x61, 0x6c, 0x5f, 0x66,
	0x75, 0x6e, 0x64, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65,
	0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x6e, 0x67, 0x42, 0x1e, 0x0a,
	0x1c, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6f,
	0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x42, 0x16, 0x0a,
	0x14, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x73, 0x42, 0x26, 0x0a, 0x24, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x5f,
	0x77, 0x72, 0x6f, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x1c, 0x0a,
	0x1a, 0x5f, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x70,
	0x65, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x42, 0x17, 0x0a, 0x15, 0x5f,
	0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6e, 0x63,
	0x68, 0x6f, 0x72, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
	0x65, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x72, 0x67,
	0x62, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f,
	0x70, 0x69, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x69, 0x67, 0x6e,
	0x6f, 0x72, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x42, 0x13,
	0x0a, 0x11, 0x5f, 0x77, 0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f,
	0x63, 0x6b, 0x73, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x6f, 0x63, 0x6b,
	0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x5f,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x73,
	0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x42,
	0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0b,
	0x0a, 0x09, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f,
	0x72, 0x65, 0x73, 0x63, 0x61, 0x6e, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70,
	0x65, 0x72, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x6d,
	0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x74,
	0x6c, 0x63, 0x73, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e,
	0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x1e, 0x0a, 0x1c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x68, 0x74, 0x6c,
	0x63, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x13, 0x0a, 0x11, 0x5f, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79,
	0x5f, 0x73, 0x61, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x42, 0x10, 0x0a,
	0x0e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x42,
	0x0c, 0x0a, 0x0a, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x42, 0x0a, 0x0a,
	0x08, 0x5f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x61, 0x75,
	0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x70, 0x72, 0x6f,
	0x78, 0x79, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64,
	0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f,
	0x61, 0x64, 0x64, 0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x42,
	0x20, 0x0a, 0x1e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64,
	0x72, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x72,
	0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f,
	0x68, 0x73, 0x6d, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x72, 0x70, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x65,
	0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65,
	0x76, 0x65, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x66,
	0x69, 0x78, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42,
	0x11, 0x0a, 0x0f, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
	0x70, 0x73, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x65, 0x65,
	0x72, 0x61, 0x74, 0x65, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x75, 0x62, 0x64, 0x61, 0x65,
	0x6d, 0x6f, 0x6e, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x66, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x42, 0x18,
	0x0a, 0x16, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x74,
	0x6c, 0x76, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x74, 0x6f, 0x72,
	0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72,
	0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x5f, 0x61,
	0x64, 0x64, 0x72, 0x5f, 0x64, 0x6e, 0x73, 0x42, 0x1b, 0x0a, 0x19, 0x5f, 0x72, 0x65, 0x71, 0x75,
	0x69, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x69, 0x6e,
	0x70, 0x75, 0x74, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f,
	0x66, 0x65, 0x65, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66,
	0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x42, 0x1b, 0x0a,
	0x19, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x65,
	0x65, 0x6b, 0x65, 0x72, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x16, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73,
	0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53,
	0x74, 0x72, 0x12, 0x50, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x06, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x22, 0x2b, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x53, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4d, 0x44, 0x4c, 0x49, 0x4e, 0x45, 0x10,
	0x00, 0x22, 0x47, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72,
	0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73,
	0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4a, 0x0a, 0x1e, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6c, 0x65, 0x61, 0x72, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x10, 0x0a, 0x03,
	0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x70, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x69, 0x73, 0x61,
	0x62, 0x6c, 0x65, 0x6d, 0x70, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x12, 0x1b, 0x0a, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x00, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a,
	0x07, 0x5f, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x22, 0x45, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61,
	0x69, 0x6e, 0x6e, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
	0x45, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65, 0x67, 0x74, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03,
	0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x44, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x53, 0x69, 0x67, 0x6e,
	0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x45, 0x0a, 0x19,
	0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x54, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x22, 0x5c, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61,
	0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x73, 0x22, 0x53, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x1d, 0x0a,
	0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x56, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67,
	0x69, 0x6e, 0x64, 0x69, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f,
	0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18,
	0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x55,
	0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x69, 0x72,
	0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x50, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5e, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6c, 0x6c,
	0x6f, 0x77, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x61, 0x70, 0x69, 0x73,
	0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x50, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x70, 0x63,
	0x66, 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74,
	0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5a, 0x0a, 0x1f, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44,
	0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x1d, 0x0a, 0x0a,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x59, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6c, 0x77, 0x61, 0x79,
	0x73, 0x75, 0x73, 0x65, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x22, 0x44, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03,
	0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4f, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x57, 0x61, 0x6c, 0x6c,
	0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4b, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x61, 0x72,
	0x67, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65,
	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69,
	0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x64, 0x75, 0x61, 0x6c, 0x66, 0x75, 0x6e, 0x64, 0x12, 0x10,
	0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74,
	0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78,
	0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x69,
	0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x57, 0x0a, 0x2b,
	0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73,
	0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a,
	0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x50, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72,
	0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x10, 0x0a,
	0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5e, 0x0a, 0x32, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77,
	0x6e, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a,
	0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x55, 0x0a, 0x29, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70,
	0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x70, 0x65, 0x65, 0x72, 0x73, 0x74, 0x6f,
	0x72, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x51,
	0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c,
	0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x22, 0x5a, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x75,
	0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
	0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4c, 0x0a,
	0x15, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x52, 0x67, 0x62, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
	0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4e, 0x0a, 0x17, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
	0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x50, 0x0a, 0x19, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x50, 0x69, 0x64, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5a, 0x0a,
	0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6d, 0x69,
	0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f,
	0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x58, 0x0a, 0x21, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x57,
	0x61, 0x74, 0x63, 0x68, 0x74, 0x69, 0x6d, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x1b,
	0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x22, 0x5a, 0x0a, 0x23, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61, 0x78, 0x6c, 0x6f, 0x63, 0x6b,
	0x74, 0x69, 0x6d, 0x65, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
	0x58, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x72, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e,
	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e,
	0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x1b, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6c, 0x74, 0x76, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a,
	0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6c, 0x74, 0x76, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x1b, 0x0a, 0x09,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x22, 0x53, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x69, 0x6d,
	0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x50, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65, 0x65, 0x62,
	0x61, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74,
	0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4f, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65,
	0x73, 0x63, 0x61, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e,
	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e,
	0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x56, 0x0a, 0x1f, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46,
	0x65, 0x65, 0x70, 0x65, 0x72, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x12, 0x1b, 0x0a, 0x09,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x22, 0x5b, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61, 0x78, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72,
	0x72, 0x65, 0x6e, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x67,
	0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x48, 0x74, 0x6c, 0x63, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x6d,
	0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x67, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x48, 0x74, 0x6c,
	0x63, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x6d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x22, 0x6f, 0x0a, 0x29, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x61, 0x78, 0x64, 0x75, 0x73, 0x74, 0x68, 0x74, 0x6c,
	0x63, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a,
	0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x22, 0x82, 0x01, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4d, 0x69, 0x6e, 0x63, 0x61, 0x70, 0x61, 0x63,
	0x69, 0x74, 0x79, 0x73, 0x61, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
	0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x64,
	0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07,
	0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x64,
	0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x22, 0x51, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x64, 0x64, 0x72,
	0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12,
	0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09,
	0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x59, 0x0a, 0x1e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41,
	0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x73, 0x22, 0x55, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x42, 0x69, 0x6e, 0x64, 0x61, 0x64,
	0x64, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74,
	0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x45, 0x0a, 0x19, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x22, 0x55, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x6c, 0x69, 0x73, 0x74,
	0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f,
	0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x4e, 0x0a, 0x17, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50,
	0x72, 0x6f, 0x78, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74,
	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74,
	0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x48, 0x0a, 0x1c, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x44,
	0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x6e, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x22, 0x94, 0x02, 0x0a, 0x28, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e,
	0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64,
	0x12, 0x7c, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x5f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f,
	0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
	0x65, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64,
	0x72, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65,
	0x5f, 0x73, 0x74, 0x72, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16,
	0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x31, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f,
	0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
	0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x12, 0x08, 0x0a, 0x04, 0x54,
	0x52, 0x55, 0x45, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x01,
	0x12, 0x08, 0x0a, 0x04, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x02, 0x22, 0x63, 0x0a, 0x2c, 0x4c, 0x69,
	0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64, 0x72, 0x64, 0x69, 0x73, 0x63,
	0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
	0x4a, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x68, 0x73,
	0x6d, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03,
	0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x54, 0x0a, 0x1d, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x52, 0x70, 0x63, 0x66, 0x69, 0x6c, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x22, 0x51, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12,
	0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x22, 0x52, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x70, 0x72, 0x65,
	0x66, 0x69, 0x78, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72,
	0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x54, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f,
	0x67, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f,
	0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x73, 0x53, 0x74, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18,
	0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x58,
	0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x4c, 0x6f, 0x67, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
	0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c,
	0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x56, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x6f,
	0x72, 0x63, 0x65, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x22, 0x56, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x53, 0x75, 0x62, 0x64, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x12,
	0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x74, 0x72, 0x12, 0x18,
	0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0x7b, 0x0a, 0x27, 0x4c, 0x69, 0x73, 0x74,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x46, 0x65,
	0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x6e, 0x6f, 0x63, 0x6f, 0x6e, 0x6e,
	0x65, 0x63, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x03, 0x73, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1b, 0x0a,
	0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x70,
	0x6c, 0x75, 0x67, 0x69, 0x6e, 0x22, 0x5b, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x63, 0x63, 0x65, 0x70,
	0x74, 0x68, 0x74, 0x6c, 0x63, 0x74, 0x6c, 0x76, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1b, 0x0a,
	0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x22, 0x5b, 0x0a, 0x24, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x54, 0x6f, 0x72, 0x73, 0x65, 0x72, 0x76, 0x69,
	0x63, 0x65, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
	0x5a, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x64,
	0x72, 0x64, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x62, 0x6f,
	0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42,
	0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x61, 0x0a, 0x28, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65,
	0x64, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x52,
	0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x66, 0x65, 0x65, 0x12, 0x1b, 0x0a,
	0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x22, 0x5c, 0x0a, 0x25, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x66, 0x65,
	0x65, 0x72, 0x61, 0x74, 0x65, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x22, 0x5f, 0x0a, 0x28, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x73, 0x65, 0x65, 0x6b, 0x65, 0x72, 0x70, 0x65, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x22, 0x87, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x12, 0x3d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x73, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x42,
	0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x1b, 0x0a, 0x19, 0x4c,
	0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e,
	0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x99, 0x01, 0x0a, 0x1b, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e,
	0x74, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
	0x12, 0x46, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67,
	0x69, 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x07, 0x6f, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x6f, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x22, 0x24, 0x0a, 0x22, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x6c, 0x75, 0x67,
	0x69, 0x6e, 0x73, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x0d, 0x0a, 0x0b, 0x53, 0x74,
	0x6f, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x79, 0x0a, 0x0c, 0x53, 0x74, 0x6f,
	0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x65, 0x73,
	0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x6f,
	0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c,
	0x74, 0x88, 0x01, 0x01, 0x22, 0x23, 0x0a, 0x0a, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x48, 0x55, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x5f, 0x43,
	0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x00, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x72, 0x65,
	0x73, 0x75, 0x6c, 0x74, 0x22, 0x38, 0x0a, 0x0b, 0x48, 0x65, 0x6c, 0x70, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x88,
	0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0xa7,
	0x01, 0x0a, 0x0c, 0x48, 0x65, 0x6c, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x21, 0x0a, 0x04, 0x68, 0x65, 0x6c, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x65, 0x6c, 0x70, 0x48, 0x65, 0x6c, 0x70, 0x52, 0x04, 0x68, 0x65,
	0x6c, 0x70, 0x12, 0x46, 0x0a, 0x0b, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, 0x68, 0x69, 0x6e,
	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x65,
	0x6c, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, 0x6c, 0x70, 0x46,
	0x6f, 0x72, 0x6d, 0x61, 0x74, 0x68, 0x69, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x66, 0x6f, 0x72,
	0x6d, 0x61, 0x74, 0x48, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x22, 0x1c, 0x0a, 0x0e, 0x48, 0x65,
	0x6c, 0x70, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x68, 0x69, 0x6e, 0x74, 0x12, 0x0a, 0x0a, 0x06,
	0x53, 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x00, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x66, 0x6f, 0x72,
	0x6d, 0x61, 0x74, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x22, 0x24, 0x0a, 0x08, 0x48, 0x65, 0x6c, 0x70,
	0x48, 0x65, 0x6c, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x22, 0x8d,
	0x01, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6b, 0x65, 0x79,
	0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64,
	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a,
	0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68,
	0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x22, 0x1b,
	0x0a, 0x19, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6b, 0x65, 0x79, 0x73,
	0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x0a, 0x18, 0x50,
	0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31,
	0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x6f, 0x6c, 0x74, 0x31, 0x31, 0x22,
	0x1b, 0x0a, 0x19, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x15, 0x0a, 0x13,
	0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x22, 0x28, 0x0a, 0x14, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73,
	0x63, 0x62, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x03, 0x73, 0x63, 0x62, 0x22, 0x78, 0x0a,
	0x16, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x61, 0x70, 0x79,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74,
	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x09, 0x73,
	0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x65,
	0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52,
	0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65,
	0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x5e, 0x0a, 0x17, 0x42, 0x6b, 0x70, 0x72, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x61, 0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x43, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x5f, 0x61,
	0x70, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42,
	0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x61, 0x70, 0x79, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x5f, 0x61, 0x70, 0x79, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x41, 0x70, 0x79, 0x22, 0xc7, 0x09, 0x0a, 0x1b, 0x42, 0x6b, 0x70, 0x72,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x61, 0x70, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x73, 0x5f, 0x61, 0x70, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x12, 0x33, 0x0a, 0x0f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x64, 0x4f,
	0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x31, 0x0a, 0x0e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x64,
	0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0c, 0x72, 0x6f, 0x75,
	0x74, 0x65, 0x64, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3a, 0x0a, 0x13, 0x6c, 0x65, 0x61,
	0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x10, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x50, 0x61, 0x69,
	0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, 0x0a, 0x15, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x5f, 0x66,
	0x65, 0x65, 0x5f, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x52, 0x12, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x46, 0x65, 0x65, 0x45, 0x61, 0x72, 0x6e, 0x65,
	0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x33, 0x0a, 0x0f, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x5f,
	0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0d, 0x70, 0x75, 0x73,
	0x68, 0x65, 0x64, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x31, 0x0a, 0x0e, 0x70, 0x75,
	0x73, 0x68, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x0c, 0x70, 0x75, 0x73, 0x68, 0x65, 0x64, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x40, 0x0a,
	0x16, 0x6f, 0x75, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e,
	0x63, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x13, 0x6f, 0x75, 0x72, 0x53,
	0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12,
	0x48, 0x0a, 0x1a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74,
	0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61,
	0x6c, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2f, 0x0a, 0x0d, 0x66, 0x65, 0x65,
	0x73, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x66,
	0x65, 0x65, 0x73, 0x4f, 0x75, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x32, 0x0a, 0x0c, 0x66, 0x65,
	0x65, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52,
	0x0a, 0x66, 0x65, 0x65, 0x73, 0x49, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x27,
	0x0a, 0x0f, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x75,
	0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x12, 0x3b, 0x0a, 0x17, 0x75, 0x74, 0x69, 0x6c, 0x69,
	0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69,
	0x61, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x15, 0x75, 0x74, 0x69, 0x6c,
	0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61,
	0x6c, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0e, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x75, 0x74,
	0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x12, 0x39, 0x0a, 0x16, 0x75,
	0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x5f, 0x69, 0x6e,
	0x69, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x14, 0x75,
	0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x49, 0x6e, 0x69, 0x74,
	0x69, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, 0x79, 0x5f, 0x6f, 0x75,
	0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x79, 0x4f, 0x75, 0x74, 0x12,
	0x2b, 0x0a, 0x0f, 0x61, 0x70, 0x79, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69,
	0x61, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x0d, 0x61, 0x70, 0x79, 0x4f,
	0x75, 0x74, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x06,
	0x61, 0x70, 0x79, 0x5f, 0x69, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x70,
	0x79, 0x49, 0x6e, 0x12, 0x29, 0x0a, 0x0e, 0x61, 0x70, 0x79, 0x5f, 0x69, 0x6e, 0x5f, 0x69, 0x6e,
	0x69, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0c, 0x61,
	0x70, 0x79, 0x49, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x1b,
	0x0a, 0x09, 0x61, 0x70, 0x79, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x14, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x08, 0x61, 0x70, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2f, 0x0a, 0x11, 0x61,
	0x70, 0x79, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c,
	0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0f, 0x61, 0x70, 0x79, 0x54, 0x6f, 0x74,
	0x61, 0x6c, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09,
	0x61, 0x70, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x06, 0x52, 0x08, 0x61, 0x70, 0x79, 0x4c, 0x65, 0x61, 0x73, 0x65, 0x88, 0x01, 0x01, 0x42, 0x0f,
	0x0a, 0x0d, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x1a, 0x0a, 0x18, 0x5f, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
	0x6f, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x42, 0x19, 0x0a, 0x17, 0x5f,
	0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x5f, 0x69,
	0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x61, 0x70, 0x79, 0x5f, 0x6f,
	0x75, 0x74, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x61,
	0x70, 0x79, 0x5f, 0x69, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x42, 0x14, 0x0a,
	0x12, 0x5f, 0x61, 0x70, 0x79, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74,
	0x69, 0x61, 0x6c, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x61, 0x70, 0x79, 0x5f, 0x6c, 0x65, 0x61, 0x73,
	0x65, 0x22, 0x8b, 0x02, 0x0a, 0x18, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69, 0x6e,
	0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d,
	0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x63, 0x73, 0x76, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a,
	0x08, 0x63, 0x73, 0x76, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x00, 0x52, 0x07, 0x63, 0x73, 0x76, 0x46, 0x69, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a,
	0x10, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x65, 0x65,
	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x73, 0x6f,
	0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a,
	0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x04, 0x48, 0x02, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01,
	0x01, 0x12, 0x1e, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01,
	0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x63, 0x73, 0x76, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x13,
	0x0a, 0x11, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x66,
	0x65, 0x65, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69,
	0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x22,
	0xea, 0x01, 0x0a, 0x19, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69, 0x6e, 0x63, 0x6f,
	0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a,
	0x08, 0x63, 0x73, 0x76, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x63, 0x73, 0x76, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x59, 0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f,
	0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69, 0x6e, 0x63, 0x6f, 0x6d,
	0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x42, 0x6b, 0x70,
	0x72, 0x64, 0x75, 0x6d, 0x70, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x43, 0x73,
	0x76, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x09, 0x63, 0x73, 0x76, 0x46, 0x6f, 0x72,
	0x6d, 0x61, 0x74, 0x22, 0x57, 0x0a, 0x1b, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69,
	0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x43, 0x73, 0x76, 0x5f, 0x66, 0x6f, 0x72, 0x6d,
	0x61, 0x74, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x49, 0x4e, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x45,
	0x52, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4b, 0x4f, 0x49, 0x4e, 0x4c, 0x59, 0x10, 0x01, 0x12,
	0x0b, 0x0a, 0x07, 0x48, 0x41, 0x52, 0x4d, 0x4f, 0x4e, 0x59, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a,
	0x51, 0x55, 0x49, 0x43, 0x4b, 0x42, 0x4f, 0x4f, 0x4b, 0x53, 0x10, 0x03, 0x22, 0x2e, 0x0a, 0x12,
	0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3c, 0x0a, 0x13,
	0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x03, 0x74, 0x78, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65,
	0x63, 0x74, 0x54, 0x78, 0x73, 0x52, 0x03, 0x74, 0x78, 0x73, 0x22, 0xc4, 0x01, 0x0a, 0x0e, 0x42,
	0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x54, 0x78, 0x73, 0x12, 0x12, 0x0a,
	0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x74, 0x78, 0x69,
	0x64, 0x12, 0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68,
	0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x31, 0x0a, 0x0e, 0x66, 0x65, 0x65, 0x73,
	0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0c, 0x66,
	0x65, 0x65, 0x73, 0x50, 0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x07, 0x6f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x54, 0x78,
	0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74,
	0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68,
	0x74, 0x22, 0xc1, 0x04, 0x0a, 0x15, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63,
	0x74, 0x54, 0x78, 0x73, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x37, 0x0a,
	0x11, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x56, 0x61, 0x6c,
	0x75, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
	0x63, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
	0x63, 0x79, 0x12, 0x31, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x4d, 0x73,
	0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x0a, 0x64, 0x65, 0x62, 0x69, 0x74, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x09, 0x64, 0x65, 0x62, 0x69, 0x74, 0x4d,
	0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e,
	0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x12, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6e, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a,
	0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x03, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x61, 0x67, 0x88, 0x01, 0x01,
	0x12, 0x20, 0x0a, 0x09, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x08, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x88,
	0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74,
	0x78, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x05, 0x52, 0x0c, 0x73, 0x70, 0x65,
	0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x06, 0x52, 0x09, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01,
	0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x64, 0x65, 0x62, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x16, 0x0a, 0x14, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f,
	0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6f, 0x75, 0x74, 0x70,
	0x75, 0x74, 0x5f, 0x74, 0x61, 0x67, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x64,
	0x5f, 0x74, 0x61, 0x67, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e,
	0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x69, 0x64, 0x22, 0x7c, 0x0a, 0x1c, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73,
	0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x09, 0x70, 0x61, 0x79, 0x6d,
	0x65, 0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x22, 0x59, 0x0a, 0x1d, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c,
	0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73,
	0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xc1,
	0x06, 0x0a, 0x1b, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x18,
	0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x5d, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d,
	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x42, 0x6b,
	0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65,
	0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69,
	0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x2c, 0x0a, 0x0b, 0x63, 0x72, 0x65,
	0x64, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x72, 0x65,
	0x64, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a, 0x64, 0x65, 0x62, 0x69, 0x74,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x64, 0x65, 0x62, 0x69, 0x74, 0x4d,
	0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12,
	0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1f, 0x0a,
	0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x00, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25,
	0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67,
	0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18,
	0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x88,
	0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x09, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e,
	0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x0c,
	0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d,
	0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x09, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x06, 0x52, 0x08, 0x66, 0x65, 0x65, 0x73, 0x4d, 0x73,
	0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x62, 0x61,
	0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x48, 0x07, 0x52, 0x0b, 0x69,
	0x73, 0x52, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a,
	0x07, 0x70, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x08,
	0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x22, 0x4a, 0x0a, 0x1f, 0x42,
	0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76,
	0x65, 0x6e, 0x74, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f,
	0x0a, 0x0b, 0x4f, 0x4e, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x46, 0x45, 0x45, 0x10, 0x00, 0x12,
	0x09, 0x0a, 0x05, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x48,
	0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x02, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75, 0x74, 0x70,
	0x6f, 0x69, 0x6e, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65,
	0x69, 0x67, 0x68, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x42,
	0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x42, 0x07,
	0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x66, 0x65, 0x65, 0x73,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x62,
	0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x5f,
	0x69, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61,
	0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x55, 0x0a,
	0x18, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x08, 0x61, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63,
	0x65, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x08, 0x61, 0x63, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x73, 0x22, 0x9c, 0x03, 0x0a, 0x18, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73,
	0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x41, 0x0a, 0x08, 0x62,
	0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61,
	0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x42, 0x61, 0x6c, 0x61,
	0x6e, 0x63, 0x65, 0x73, 0x52, 0x08, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x1c,
	0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48,
	0x00, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09,
	0x77, 0x65, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48,
	0x01, 0x52, 0x08, 0x77, 0x65, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2a,
	0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x61, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x65,
	0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65,
	0x64, 0x41, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
	0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x77, 0x65, 0x5f, 0x6f,
	0x70, 0x65, 0x6e, 0x65, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x61, 0x63, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x42, 0x14, 0x0a,
	0x12, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x5f, 0x62, 0x6c,
	0x6f, 0x63, 0x6b, 0x22, 0x6f, 0x0a, 0x20, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62,
	0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x42,
	0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x0c, 0x62, 0x61, 0x6c, 0x61, 0x6e,
	0x63, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0b, 0x62, 0x61, 0x6c, 0x61,
	0x6e, 0x63, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x69, 0x6e, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x69, 0x6e,
	0x54, 0x79, 0x70, 0x65, 0x22, 0xbc, 0x01, 0x0a, 0x15, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73,
	0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e,
	0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x65,
	0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x73,
	0x6f, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x73, 0x88, 0x01, 0x01, 0x12, 0x22,
	0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0d, 0x48, 0x01, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x88,
	0x01, 0x01, 0x12, 0x1e, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x88,
	0x01, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x61,
	0x74, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73, 0x74, 0x61, 0x72,
	0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x74,
	0x69, 0x6d, 0x65, 0x22, 0x5f, 0x0a, 0x16, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69,
	0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a,
	0x0d, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c,
	0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f,
	0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0c, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x45, 0x76,
	0x65, 0x6e, 0x74, 0x73, 0x22, 0x97, 0x03, 0x0a, 0x1b, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73,
	0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x65, 0x76,
	0x65, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x10,
	0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67,
	0x12, 0x2c, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a,
	0x0a, 0x0a, 0x64, 0x65, 0x62, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x09, 0x64, 0x65, 0x62, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75,
	0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75,
	0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
	0x61, 0x6d, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08, 0x6f,
	0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
	0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04,
	0x74, 0x78, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x04, 0x74, 0x78,
	0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x09, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75,
	0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42,
	0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x22, 0x68,
	0x0a, 0x25, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x64,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x79,
	0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6e, 0x0a, 0x26, 0x42, 0x6b, 0x70, 0x72,
	0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62,
	0x79, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x44, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64,
	0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x70,
	0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x52,
	0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x22, 0xc3, 0x06, 0x0a, 0x25, 0x42, 0x6b, 0x70,
	0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x62, 0x79, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x71, 0x0a, 0x09,
	0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x54, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x69, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x42, 0x6b, 0x70, 0x72,
	0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62,
	0x79, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61,
	0x67, 0x12, 0x2c, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12,
	0x2a, 0x0a, 0x0a, 0x64, 0x65, 0x62, 0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x09, 0x64, 0x65, 0x62, 0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63,
	0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63,
	0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65,
	0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f,
	0x69, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x6f, 0x75, 0x74,
	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63,
	0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52,
	0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x1b, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x02, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c,
	0x48, 0x03, 0x52, 0x09, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01,
	0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04,
	0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x2d, 0x0a, 0x09, 0x66, 0x65, 0x65,
	0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x05, 0x52, 0x08, 0x66, 0x65, 0x65,
	0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x72,
	0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x48, 0x06,
	0x52, 0x0b, 0x69, 0x73, 0x52, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01,
	0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x07, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x22, 0x43,
	0x0a, 0x29, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x64,
	0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x43,
	0x48, 0x41, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45,
	0x4c, 0x10, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74,
	0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
	0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
	0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74,
	0x78, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e,
	0x63, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x22, 0x64,
	0x0a, 0x24, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69,
	0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69,
	0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6c, 0x0a, 0x25, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x6f, 0x75, 0x74,
	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a,
	0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73,
	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69,
	0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x64, 0x22, 0xbf, 0x06, 0x0a, 0x24, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x6f, 0x75, 0x74, 0x70,
	0x6f, 0x69, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x6f, 0x0a, 0x09, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x52, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42,
	0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x62, 0x79, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x64, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e,
	0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x69, 0x74,
	0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x2c, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64,
	0x69, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64,
	0x69, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x0a, 0x64, 0x65, 0x62, 0x69, 0x74, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x09, 0x64, 0x65, 0x62, 0x69, 0x74, 0x4d, 0x73,
	0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1c,
	0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x20, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f,
	0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x00, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x0a,
	0x20, 0x01, 0x28, 0x0d, 0x48, 0x01, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69,
	0x67, 0x68, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e,
	0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e,
	0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x03, 0x52, 0x09, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18,
	0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x04, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x88, 0x01, 0x01,
	0x12, 0x2d, 0x0a, 0x09, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0e, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x05, 0x52, 0x08, 0x66, 0x65, 0x65, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x26, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x72, 0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18,
	0x0f, 0x20, 0x01, 0x28, 0x08, 0x48, 0x06, 0x52, 0x0b, 0x69, 0x73, 0x52, 0x65, 0x62, 0x61, 0x6c,
	0x61, 0x6e, 0x63, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x74, 0x5f,
	0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x07, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74,
	0x49, 0x64, 0x88, 0x01, 0x01, 0x22, 0x42, 0x0a, 0x28, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69,
	0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x6f, 0x75,
	0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x54, 0x79, 0x70,
	0x65, 0x12, 0x09, 0x0a, 0x05, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07,
	0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f, 0x75,
	0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b,
	0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69,
	0x6e, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64,
	0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x66, 0x65,
	0x65, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x69, 0x73, 0x5f, 0x72,
	0x65, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x61, 0x72,
	0x74, 0x5f, 0x69, 0x64, 0x22, 0x5a, 0x0a, 0x14, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73,
	0x74, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x05,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x05, 0x73,
	0x74, 0x61, 0x72, 0x74, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x88, 0x01, 0x01, 0x42, 0x08,
	0x0a, 0x06, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x65, 0x6e, 0x64,
	0x22, 0x52, 0x0a, 0x15, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x75, 0x6e,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x62, 0x6c, 0x61,
	0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x75, 0x6e, 0x65,
	0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x09, 0x62, 0x6c, 0x61, 0x63, 0x6b,
	0x6c, 0x69, 0x73, 0x74, 0x22, 0x40, 0x0a, 0x16, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73,
	0x74, 0x72, 0x75, 0x6e, 0x65, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x14,
	0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x73,
	0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, 0x8e, 0x01, 0x0a, 0x10, 0x43, 0x68, 0x65, 0x63, 0x6b,
	0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72,
	0x75, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x12,
	0x1b, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x00, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
	0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x06,
	0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72,
	0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d,
	0x73, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x69, 0x64, 0x42, 0x09, 0x0a, 0x07,
	0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x22, 0x29, 0x0a, 0x11, 0x43, 0x68, 0x65, 0x63, 0x6b,
	0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05,
	0x76, 0x61, 0x6c, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c,
	0x69, 0x64, 0x22, 0x59, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x75, 0x6e, 0x65,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x88, 0x01, 0x01,
	0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x22, 0xa4, 0x01,
	0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x71,
	0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69,
	0x71, 0x75, 0x65, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x19, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67,
	0x5f, 0x75, 0x6e, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x75,
	0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x17, 0x77, 0x61, 0x72, 0x6e,
	0x69, 0x6e, 0x67, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x52,
	0x75, 0x6e, 0x65, 0x88, 0x01, 0x01, 0x42, 0x1c, 0x0a, 0x1a, 0x5f, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x5f, 0x75, 0x6e, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f,
	0x72, 0x75, 0x6e, 0x65, 0x22, 0x34, 0x0a, 0x10, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x72, 0x75, 0x6e, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x72, 0x75, 0x6e, 0x65, 0x88, 0x01,
	0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x22, 0x3e, 0x0a, 0x11, 0x53, 0x68,
	0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x29, 0x0a, 0x05, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x75,
	0x6e, 0x65, 0x73, 0x52, 0x05, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x22, 0xfa, 0x02, 0x0a, 0x0e, 0x53,
	0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x12, 0x0a,
	0x04, 0x72, 0x75, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x75, 0x6e,
	0x65, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x49, 0x64, 0x12, 0x43,
	0x0a, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x72,
	0x75, 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x5f, 0x61, 0x73, 0x5f, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x41, 0x73, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x06, 0x73,
	0x74, 0x6f, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x06, 0x73,
	0x74, 0x6f, 0x72, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x62, 0x6c, 0x61, 0x63,
	0x6b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52,
	0x0b, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12,
	0x20, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x01, 0x48, 0x02, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x73, 0x65, 0x64, 0x88, 0x01,
	0x01, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x75, 0x72, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x07, 0x6f, 0x75, 0x72, 0x52, 0x75, 0x6e, 0x65, 0x88, 0x01,
	0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x42, 0x0e, 0x0a, 0x0c,
	0x5f, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x42, 0x0c, 0x0a, 0x0a,
	0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x64, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6f,
	0x75, 0x72, 0x5f, 0x72, 0x75, 0x6e, 0x65, 0x22, 0x87, 0x01, 0x0a, 0x1a, 0x53, 0x68, 0x6f, 0x77,
	0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4f, 0x0a, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x75, 0x6e, 0x65,
	0x73, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x6c, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x52, 0x0c, 0x61, 0x6c, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x67, 0x6c, 0x69,
	0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73,
	0x68, 0x22, 0x94, 0x01, 0x0a, 0x26, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52,
	0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09,
	0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x09, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18,
	0x0a, 0x07, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x22, 0x48, 0x0a, 0x17, 0x41, 0x73, 0x6b, 0x72,
	0x65, 0x6e, 0x65, 0x75, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x75,
	0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, 0x70, 0x61,
	0x74, 0x68, 0x22, 0x1a, 0x0a, 0x18, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x75, 0x6e, 0x72,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x93,
	0x01, 0x0a, 0x14, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x75, 0x6e, 0x72, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x42, 0x17, 0x0a, 0x15, 0x5f,
	0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x5f, 0x64, 0x69, 0x72, 0x22, 0x3f, 0x0a, 0x18, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c,
	0x69, 0x73, 0x74, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48,
	0x00, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x22, 0x51, 0x0a, 0x19, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65,
	0x6c, 0x69, 0x73, 0x74, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x34, 0x0a, 0x06, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65,
	0x6c, 0x69, 0x73, 0x74, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73,
	0x52, 0x06, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0xed, 0x03, 0x0a, 0x17, 0x41, 0x73, 0x6b,
	0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4c, 0x61,
	0x79, 0x65, 0x72, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x69,
	0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x0c, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65,
	0x73, 0x12, 0x57, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x6c, 0x61, 0x79,
	0x65, 0x72, 0x73, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x49, 0x0a, 0x0b, 0x63, 0x6f,
	0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x27, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73,
	0x74, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x6f, 0x6e,
	0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72,
	0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74,
	0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x65, 0x72,
	0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x11, 0x64, 0x69,
	0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18,
	0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x54, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69,
	0x73, 0x74, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x0e, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x3a, 0x0a,
	0x06, 0x62, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x6c,
	0x61, 0x79, 0x65, 0x72, 0x73, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x42, 0x69, 0x61, 0x73, 0x65,
	0x73, 0x52, 0x06, 0x62, 0x69, 0x61, 0x73, 0x65, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x65,
	0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x22, 0xbf, 0x01, 0x0a, 0x27, 0x41, 0x73, 0x6b,
	0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4c, 0x61,
	0x79, 0x65, 0x72, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b,
	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28,
	0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x0d, 0x63, 0x61, 0x70, 0x61,
	0x63, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x61,
	0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x61, 0x74, 0x22, 0xa0, 0x04, 0x0a, 0x26, 0x41,
	0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73,
	0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x49, 0x64, 0x44, 0x69, 0x72, 0x12, 0x1d, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
	0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69,
	0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52,
	0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69,
	0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0f, 0x68,
	0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01,
	0x01, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65,
	0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70,
	0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c,
	0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x19,
	0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d,
	0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11,
	0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74,
	0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x0f, 0x63, 0x6c, 0x74, 0x76, 0x45,
	0x78, 0x70, 0x69, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a,
	0x08, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d,
	0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x66, 0x65, 0x65, 0x5f,
	0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c,
	0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x63, 0x6c, 0x74, 0x76,
	0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x22, 0xb0, 0x02,
	0x0a, 0x22, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x6c, 0x61, 0x79,
	0x65, 0x72, 0x73, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61,
	0x69, 0x6e, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x69, 0x6d,
	0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x0c, 0x6d, 0x69, 0x6e,
	0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0b,
	0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34,
	0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x11,
	0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44, 0x69,
	0x72, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
	0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x48, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6d, 0x61, 0x78, 0x69,
	0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6d, 0x69, 0x6e,
	0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x73, 0x68,
	0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64,
	0x69, 0x72, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
	0x22, 0x9b, 0x01, 0x0a, 0x1d, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x42, 0x69, 0x61, 0x73,
	0x65, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
	0x44, 0x69, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x12, 0x52, 0x04, 0x62, 0x69, 0x61, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0e,
	0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x65,
	0x0a, 0x19, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c,
	0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c,
	0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65,
	0x72, 0x12, 0x23, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74,
	0x65, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x69,
	0x73, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x53, 0x0a, 0x1a, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e,
	0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65,
	0x72, 0x73, 0x52, 0x06, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x22, 0xde, 0x03, 0x0a, 0x18, 0x41,
	0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79, 0x65,
	0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1e, 0x0a,
	0x0a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a,
	0x0e, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18,
	0x03, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4e,
	0x6f, 0x64, 0x65, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64,
	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x10, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x73, 0x12, 0x58, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c,
	0x61, 0x79, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x64, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x55, 0x0a, 0x0f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x06,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65,
	0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x61, 0x79,
	0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x73, 0x52, 0x0e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x73, 0x12, 0x4a, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74,
	0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73,
	0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72,
	0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74,
	0x73, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x3b,
	0x0a, 0x06, 0x62, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x42, 0x69, 0x61,
	0x73, 0x65, 0x73, 0x52, 0x06, 0x62, 0x69, 0x61, 0x73, 0x65, 0x73, 0x22, 0xc0, 0x01, 0x0a, 0x28,
	0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79,
	0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68,
	0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x0d,
	0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x52, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x61, 0x74, 0x22, 0xa3,
	0x03, 0x0a, 0x27, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74,
	0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75,
	0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63,
	0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x48, 0x01, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d,
	0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0b, 0x66, 0x65,
	0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b,
	0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
	0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x0d, 0x48, 0x03, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69,
	0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x88, 0x01,
	0x01, 0x12, 0x19, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d,
	0x48, 0x04, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x88, 0x01, 0x01, 0x42, 0x14, 0x0a, 0x12,
	0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69,
	0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65,
	0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x66,
	0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
	0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x64,
	0x65, 0x6c, 0x61, 0x79, 0x22, 0xf9, 0x01, 0x0a, 0x23, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65,
	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72,
	0x73, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x10,
	0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x69, 0x6d,
	0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x0c, 0x6d, 0x69, 0x6e,
	0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0b,
	0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0f,
	0x0a, 0x0d, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42,
	0x0f, 0x0a, 0x0d, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74,
	0x22, 0x9c, 0x01, 0x0a, 0x1e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x42, 0x69, 0x61,
	0x73, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
	0x64, 0x44, 0x69, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x12, 0x52, 0x04, 0x62, 0x69, 0x61, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42,
	0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22,
	0x31, 0x0a, 0x19, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79,
	0x65, 0x72, 0x22, 0x1c, 0x0a, 0x1a, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x72, 0x65, 0x6d,
	0x6f, 0x76, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x44, 0x0a, 0x15, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x72, 0x65, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x04, 0x70, 0x61, 0x74,
	0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73,
	0x6b, 0x72, 0x65, 0x6e, 0x65, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x50, 0x61, 0x74, 0x68,
	0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x22, 0x18, 0x0a, 0x16, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e,
	0x65, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x91, 0x01, 0x0a, 0x12, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x72, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x34, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x42, 0x17, 0x0a, 0x15, 0x5f,
	0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
	0x5f, 0x64, 0x69, 0x72, 0x22, 0x41, 0x0a, 0x11, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x61,
	0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x79,
	0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12,
	0x16, 0x0a, 0x06, 0x63, 0x75, 0x74, 0x6f, 0x66, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
	0x06, 0x63, 0x75, 0x74, 0x6f, 0x66, 0x66, 0x22, 0x4b, 0x0a, 0x12, 0x41, 0x73, 0x6b, 0x72, 0x65,
	0x6e, 0x65, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a,
	0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61,
	0x79, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76,
	0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x6d,
	0x6f, 0x76, 0x65, 0x64, 0x22, 0xf3, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74,
	0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
	0x74, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x06, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x0b, 0x6d, 0x61, 0x78,
	0x66, 0x65, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x6d, 0x61, 0x78,
	0x66, 0x65, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x66, 0x69, 0x6e, 0x61, 0x6c,
	0x5f, 0x63, 0x6c, 0x74, 0x76, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x09, 0x66,
	0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x74, 0x76, 0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
	0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x22, 0x6a, 0x0a, 0x11, 0x47, 0x65,
	0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x70,
	0x70, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62,
	0x69, 0x6c, 0x69, 0x74, 0x79, 0x50, 0x70, 0x6d, 0x12, 0x2c, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74,
	0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47,
	0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x06,
	0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x22, 0xc9, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x72, 0x6f,
	0x75, 0x74, 0x65, 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72,
	0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x70, 0x6d, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x04, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
	0x50, 0x70, 0x6d, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
	0x74, 0x12, 0x2c, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52,
	0x6f, 0x75, 0x74, 0x65, 0x73, 0x50, 0x61, 0x74, 0x68, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12,
	0x22, 0x0a, 0x0a, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x09, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x74, 0x76,
	0x88, 0x01, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c,
	0x74, 0x76, 0x22, 0xca, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73,
	0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x65, 0x78, 0x74,
	0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a,
	0x6e, 0x65, 0x78, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65,
	0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79,
	0x12, 0x34, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
	0x52, 0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
	0x44, 0x69, 0x72, 0x88, 0x01, 0x01, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74,
	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x22,
	0x45, 0x0a, 0x19, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c,
	0x65, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79,
	0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x22, 0x1c, 0x0a, 0x1a, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e,
	0x65, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0xfb, 0x02, 0x0a, 0x1b, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65,
	0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x14, 0x73, 0x68,
	0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64,
	0x69, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x11, 0x73, 0x68, 0x6f, 0x72,
	0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44, 0x69, 0x72, 0x88, 0x01, 0x01,
	0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x01, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x58, 0x0a, 0x06, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e,
	0x65, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x69, 0x6e, 0x66,
	0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d,
	0x48, 0x02, 0x52, 0x06, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x88, 0x01, 0x01, 0x22, 0x4f, 0x0a,
	0x1a, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x0f, 0x0a, 0x0b, 0x43,
	0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d,
	0x55, 0x4e, 0x43, 0x4f, 0x4e, 0x53, 0x54, 0x52, 0x41, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x12,
	0x0d, 0x0a, 0x09, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x02, 0x42, 0x17,
	0x0a, 0x15, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x72, 0x6d, 0x22, 0x66, 0x0a, 0x1c, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x69, 0x6e, 0x66,
	0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74,
	0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73,
	0x6b, 0x72, 0x65, 0x6e, 0x65, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x63,
	0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x22, 0x92, 0x02, 0x0a, 0x1f, 0x41,
	0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2f,
	0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x68,
	0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44, 0x69, 0x72, 0x12,
	0x14, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
	0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
	0x61, 0x6d, 0x70, 0x12, 0x33, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75,
	0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x69,
	0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0b, 0x6d,
	0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a,
	0x0d, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x0f,
	0x0a, 0x0d, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22,
	0xc9, 0x01, 0x0a, 0x1b, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x14, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x20, 0x0a,
	0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x28, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x68, 0x6f, 0x72, 0x74,
	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x0d, 0x63, 0x61, 0x70,
	0x61, 0x63, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0c, 0x63,
	0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x73, 0x61, 0x74, 0x22, 0x1e, 0x0a, 0x1c, 0x41,
	0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x04, 0x0a, 0x1b,
	0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c,
	0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65,
	0x72, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44,
	0x69, 0x72, 0x12, 0x1d, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x88, 0x01,
	0x01, 0x12, 0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75,
	0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x0f, 0x68, 0x74, 0x6c,
	0x63, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12,
	0x3c, 0x0a, 0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x02, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d,
	0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a,
	0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e,
	0x74, 0x48, 0x03, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74,
	0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f,
	0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74,
	0x68, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x04, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50,
	0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69,
	0x6f, 0x6e, 0x74, 0x68, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x63, 0x6c, 0x74, 0x76,
	0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x05, 0x52, 0x0f, 0x63, 0x6c, 0x74, 0x76, 0x45, 0x78, 0x70, 0x69, 0x72,
	0x79, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x65, 0x6e,
	0x61, 0x62, 0x6c, 0x65, 0x64, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d,
	0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x42, 0x14, 0x0a, 0x12, 0x5f,
	0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d,
	0x73, 0x61, 0x74, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70,
	0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e,
	0x74, 0x68, 0x73, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70,
	0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x22, 0x1e, 0x0a, 0x1c, 0x41, 0x73, 0x6b,
	0x72, 0x65, 0x6e, 0x65, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xad, 0x01, 0x0a, 0x19, 0x41, 0x73,
	0x6b, 0x72, 0x65, 0x6e, 0x65, 0x62, 0x69, 0x61, 0x73, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x2f, 0x0a,
	0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
	0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x68, 0x6f,
	0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44, 0x69, 0x72, 0x12, 0x12,
	0x0a, 0x04, 0x62, 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x04, 0x62, 0x69,
	0x61, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x64, 0x65,
	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x53, 0x0a, 0x1a, 0x41, 0x73, 0x6b,
	0x72, 0x65, 0x6e, 0x65, 0x62, 0x69, 0x61, 0x73, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x62, 0x69, 0x61, 0x73, 0x65,
	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73,
	0x6b, 0x72, 0x65, 0x6e, 0x65, 0x62, 0x69, 0x61, 0x73, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x42, 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x06, 0x62, 0x69, 0x61, 0x73, 0x65, 0x73, 0x22, 0xac,
	0x01, 0x0a, 0x18, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x62, 0x69, 0x61, 0x73, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c,
	0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65,
	0x72, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44,
	0x69, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12,
	0x52, 0x04, 0x62, 0x69, 0x61, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x64,
	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a,
	0x0c, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x0a,
	0x1e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22,
	0x6f, 0x0a, 0x1f, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x65,
	0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x22, 0xc9, 0x01, 0x0a, 0x23, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74,
	0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x68, 0x6f, 0x72,
	0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x5f, 0x64, 0x69, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x44, 0x69, 0x72, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f,
	0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x5f, 0x69,
	0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52,
	0x0c, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1d, 0x0a,
	0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x22, 0xba, 0x03, 0x0a,
	0x19, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
	0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48,
	0x61, 0x73, 0x68, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6d, 0x73,
	0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61,
	0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6c, 0x74, 0x76, 0x45, 0x78, 0x70, 0x69,
	0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x72, 0x74, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72,
	0x6f, 0x75, 0x70, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x72, 0x6f,
	0x75, 0x70, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x88, 0x01, 0x01, 0x12,
	0x21, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x01, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88,
	0x01, 0x01, 0x12, 0x29, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65,
	0x71, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x02, 0x52, 0x0d, 0x6c, 0x6f, 0x63,
	0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72, 0x65, 0x71, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, 0x3b, 0x0a,
	0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x61,
	0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x48, 0x03, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c,
	0x61, 0x62, 0x65, 0x6c, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x69, 0x6e, 0x76, 0x73, 0x74, 0x72, 0x69,
	0x6e, 0x67, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x76, 0x72,
	0x65, 0x71, 0x69, 0x64, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0xae, 0x01, 0x0a, 0x1a, 0x49, 0x6e,
	0x6a, 0x65, 0x63, 0x74, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x6e, 0x69, 0x6f, 0x6e,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c,
	0x65, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x63,
	0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x04, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12,
	0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d,
	0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xb1, 0x02, 0x0a, 0x0b, 0x58,
	0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e,
	0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69,
	0x6e, 0x76, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x6d,
	0x6f, 0x75, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x06, 0x6d,
	0x61, 0x78, 0x66, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x01, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x66,
	0x65, 0x65, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18,
	0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x20, 0x0a,
	0x09, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d,
	0x48, 0x02, 0x52, 0x08, 0x72, 0x65, 0x74, 0x72, 0x79, 0x46, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12,
	0x33, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x48, 0x03, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x4d, 0x73, 0x61,
	0x74, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
	0x6d, 0x73, 0x61, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6d, 0x61, 0x78, 0x66, 0x65, 0x65, 0x42,
	0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x42, 0x0f, 0x0a,
	0x0d, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x22, 0xec,
	0x01, 0x0a, 0x0c, 0x58, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d,
	0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65,
	0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x61,
	0x69, 0x6c, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x0b, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x50, 0x61, 0x72, 0x74, 0x73, 0x12, 0x29, 0x0a,
	0x10, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x5f, 0x70, 0x61, 0x72, 0x74,
	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
	0x66, 0x75, 0x6c, 0x50, 0x61, 0x72, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0a, 0x61, 0x6d, 0x6f, 0x75,
	0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x10, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
	0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x61,
	0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x22, 0x19, 0x0a,
	0x17, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x44, 0x0a, 0x16, 0x42, 0x6c, 0x6f, 0x63,
	0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20,
	0x0a, 0x1e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f,
	0x70, 0x65, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x22, 0x3e, 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46,
	0x61, 0x69, 0x6c, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
	0x22, 0x1c, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa3,
	0x01, 0x0a, 0x19, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64,
	0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2e, 0x0a, 0x0c,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52,
	0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c,
	0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12,
	0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x79,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52,
	0x65, 0x61, 0x64, 0x79, 0x22, 0x16, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x6f,
	0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xd6, 0x01, 0x0a,
	0x17, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4e, 0x6f, 0x74, 0x69,
	0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x4f, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4e, 0x6f, 0x74,
	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f,
	0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09,
	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x07, 0x61, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72,
	0x65, 0x73, 0x73, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x27, 0x0a, 0x14,
	0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03,
	0x4f, 0x55, 0x54, 0x10, 0x01, 0x22, 0xac, 0x02, 0x0a, 0x12, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f,
	0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x4b, 0x0a, 0x09,
	0x69, 0x74, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
	0x2e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e,
	0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52,
	0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x73, 0x6f, 0x63,
	0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x73, 0x6f, 0x63,
	0x6b, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65,
	0x73, 0x73, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x88, 0x01, 0x01, 0x22, 0x54,
	0x0a, 0x16, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x64, 0x64,
	0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x41,
	0x4c, 0x5f, 0x53, 0x4f, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50,
	0x56, 0x34, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x56, 0x36, 0x10, 0x02, 0x12, 0x09,
	0x0a, 0x05, 0x54, 0x4f, 0x52, 0x56, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x52,
	0x56, 0x33, 0x10, 0x04, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x42,
	0x0a, 0x0a, 0x08, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x07, 0x0a, 0x05, 0x5f,
	0x70, 0x6f, 0x72, 0x74, 0x22, 0x18, 0x0a, 0x16, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x75,
	0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4a,
	0x0a, 0x15, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66,
	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x65, 0x65, 0x72, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x70, 0x65, 0x65, 0x72, 0x49, 0x64,
	0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x32, 0xa3, 0x4e, 0x0a, 0x04, 0x4e,
	0x6f, 0x64, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x13,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x69, 0x6e, 0x66,
	0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x4c,
	0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x65, 0x65, 0x72, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x4c, 0x69, 0x73,
	0x74, 0x46, 0x75, 0x6e, 0x64, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x75, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x53, 0x65, 0x6e, 0x64, 0x50,
	0x61, 0x79, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65,
	0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12,
	0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x41, 0x64, 0x64, 0x47, 0x6f, 0x73,
	0x73, 0x69, 0x70, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x64, 0x64, 0x67, 0x6f, 0x73,
	0x73, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x64, 0x64, 0x67, 0x6f, 0x73, 0x73, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x41, 0x64, 0x64, 0x50, 0x73, 0x62, 0x74, 0x4f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x64, 0x64, 0x70,
	0x73, 0x62, 0x74, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x64, 0x64, 0x70, 0x73, 0x62, 0x74, 0x6f, 0x75,
	0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48,
	0x0a, 0x0d, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x4f, 0x6e, 0x63, 0x65, 0x12,
	0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f,
	0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x6f,
	0x43, 0x6c, 0x65, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x75, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x43, 0x68, 0x65, 0x63,
	0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43,
	0x68, 0x65, 0x63, 0x6b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x6d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x30, 0x0a, 0x05, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43,
	0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x3a, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, 0x72,
	0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e,
	0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a,
	0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x19,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x73,
	0x74, 0x6f, 0x72, 0x65, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73,
	0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61,
	0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
	0x6f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x6e, 0x69, 0x6f,
	0x6e, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x44, 0x61, 0x74,
	0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c,
	0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74,
	0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a,
	0x0a, 0x44, 0x65, 0x6c, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x16, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51,
	0x0a, 0x10, 0x44, 0x65, 0x76, 0x46, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x66, 0x6f, 0x72, 0x67,
	0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x51, 0x0a, 0x10, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x65,
	0x63, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x45, 0x6d, 0x65, 0x72,
	0x67, 0x65, 0x6e, 0x63, 0x79, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65,
	0x6e, 0x63, 0x79, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x66, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x65, 0x72, 0x67,
	0x65, 0x6e, 0x63, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12,
	0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e,
	0x63, 0x79, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x65, 0x6d,
	0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x64, 0x61,
	0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c,
	0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x18, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x45, 0x78, 0x70,
	0x6f, 0x73, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x13,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65,
	0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x52,
	0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1a, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x49, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x49,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x51, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x49,
	0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69,
	0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x60, 0x0a, 0x15, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e,
	0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x1f, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x72,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x48, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
	0x72, 0x65, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74,
	0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72,
	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x4c,
	0x69, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x53, 0x65, 0x6e, 0x64, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x12,
	0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e,
	0x64, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x50, 0x61, 0x79, 0x73,
	0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70,
	0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x54,
	0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1c, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x4c, 0x69, 0x73, 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x4d, 0x61,
	0x6b, 0x65, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d,
	0x61, 0x6b, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x61, 0x6b, 0x65, 0x73, 0x65, 0x63, 0x72, 0x65,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2a, 0x0a, 0x03, 0x50,
	0x61, 0x79, 0x12, 0x0f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x4e,
	0x6f, 0x64, 0x65, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e,
	0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x57, 0x61, 0x69, 0x74, 0x41, 0x6e, 0x79,
	0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61,
	0x69, 0x74, 0x61, 0x6e, 0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x61, 0x6e,
	0x79, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x57, 0x61, 0x69, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f,
	0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65,
	0x6e, 0x64, 0x50, 0x61, 0x79, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74,
	0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x73, 0x65, 0x6e, 0x64, 0x70, 0x61, 0x79,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x4e, 0x65,
	0x77, 0x41, 0x64, 0x64, 0x72, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4e, 0x65, 0x77, 0x61,
	0x64, 0x64, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4e, 0x65, 0x77, 0x61, 0x64, 0x64, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x12, 0x14,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x69, 0x74, 0x68, 0x64,
	0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a,
	0x07, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x6e, 0x64, 0x12, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4b,
	0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x46, 0x75, 0x6e, 0x64, 0x50, 0x73, 0x62,
	0x74, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75,
	0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x39, 0x0a, 0x08, 0x53, 0x65, 0x6e, 0x64, 0x50, 0x73, 0x62, 0x74, 0x12, 0x14, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x70, 0x73, 0x62,
	0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x53,
	0x69, 0x67, 0x6e, 0x50, 0x73, 0x62, 0x74, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69,
	0x67, 0x6e, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x55, 0x74, 0x78, 0x6f, 0x50, 0x73,
	0x62, 0x74, 0x12, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x70, 0x73, 0x62,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55,
	0x74, 0x78, 0x6f, 0x70, 0x73, 0x62, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x3c, 0x0a, 0x09, 0x54, 0x78, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x12, 0x15,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x64, 0x69,
	0x73, 0x63, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x3c, 0x0a, 0x09, 0x54, 0x78, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x12, 0x15, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78, 0x70, 0x72, 0x65, 0x70,
	0x61, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a,
	0x06, 0x54, 0x78, 0x53, 0x65, 0x6e, 0x64, 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x54, 0x78,
	0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x54, 0x78, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x43, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x70, 0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70,
	0x65, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x6f,
	0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1e, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c,
	0x0a, 0x09, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x50, 0x61, 0x79, 0x12, 0x15, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x70,
	0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06,
	0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x63,
	0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x33, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x50, 0x61, 0x79, 0x12, 0x12, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x70, 0x61, 0x79, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x46, 0x6f, 0x72,
	0x77, 0x61, 0x72, 0x64, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x66, 0x6f,
	0x72, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x44, 0x69, 0x73, 0x61, 0x62,
	0x6c, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69,
	0x73, 0x61, 0x62, 0x6c, 0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6f,
	0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42,
	0x0a, 0x0b, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x12, 0x17, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x45, 0x6e, 0x61,
	0x62, 0x6c, 0x65, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
	0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44,
	0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x12,
	0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x65, 0x72,
	0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45,
	0x0a, 0x0c, 0x46, 0x65, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x18,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
	0x65, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x12, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x1e, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x61,
	0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x61,
	0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5d,
	0x0a, 0x14, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x43, 0x6f,
	0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e,
	0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46,
	0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c,
	0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a,
	0x0b, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x17, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x54, 0x0a, 0x11, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x5f, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e,
	0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06, 0x47, 0x65, 0x74, 0x4c, 0x6f,
	0x67, 0x12, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x6c, 0x6f, 0x67, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x6c,
	0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c,
	0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x46, 0x75, 0x6e,
	0x64, 0x65, 0x72, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12,
	0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72,
	0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48,
	0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12,
	0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
	0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4c, 0x69, 0x73, 0x74, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74,
	0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x66, 0x6f, 0x72,
	0x77, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x3f, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x6f, 0x66, 0x66, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x39, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x79, 0x73, 0x12, 0x14, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x70, 0x61, 0x79,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x4c,
	0x69, 0x73, 0x74, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x4d, 0x75, 0x6c,
	0x74, 0x69, 0x46, 0x75, 0x6e, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x66, 0x75, 0x6e, 0x64, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d,
	0x4d, 0x75, 0x6c, 0x74, 0x69, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x12, 0x19, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61,
	0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4d,
	0x75, 0x6c, 0x74, 0x69, 0x77, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x30, 0x0a, 0x05, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x12,
	0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x66, 0x66, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11, 0x4f, 0x70, 0x65, 0x6e,
	0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
	0x61, 0x62, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x61,
	0x62, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51,
	0x0a, 0x10, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x42, 0x75,
	0x6d, 0x70, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x5f, 0x62, 0x75, 0x6d, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x51, 0x0a, 0x10, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
	0x5f, 0x49, 0x6e, 0x69, 0x74, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x12, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x67,
	0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x67,
	0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a,
	0x12, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x55, 0x70, 0x64,
	0x61, 0x74, 0x65, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x63, 0x68,
	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x10,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x06, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12,
	0x12, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x52, 0x65,
	0x6e, 0x65, 0x50, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e,
	0x65, 0x70, 0x61, 0x79, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x07, 0x52, 0x65, 0x6e, 0x65, 0x50, 0x61, 0x79, 0x12,
	0x13, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x6e, 0x65, 0x70,
	0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d,
	0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x19, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x52,
	0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x75,
	0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65,
	0x6e, 0x64, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x63, 0x75, 0x73,
	0x74, 0x6f, 0x6d, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x42, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12,
	0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
	0x65, 0x6e, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x53, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x53, 0x65, 0x74, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x53, 0x65, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x53, 0x65, 0x74, 0x50, 0x73, 0x62, 0x74, 0x56, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x70,
	0x73, 0x62, 0x74, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x70, 0x73, 0x62, 0x74, 0x76,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x42, 0x0a, 0x0b, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12,
	0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
	0x69, 0x67, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x53, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x6d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x53, 0x70, 0x6c, 0x69,
	0x63, 0x65, 0x5f, 0x49, 0x6e, 0x69, 0x74, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70,
	0x6c, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x6e,
	0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d,
	0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x12, 0x19, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53,
	0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0d, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65,
	0x5f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70,
	0x6c, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x5f,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
	0x12, 0x3c, 0x0a, 0x09, 0x44, 0x65, 0x76, 0x53, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x12, 0x15, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x44, 0x65, 0x76, 0x73, 0x70,
	0x6c, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e,
	0x0a, 0x0f, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74,
	0x73, 0x12, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x69, 0x6e,
	0x70, 0x75, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48,
	0x0a, 0x0d, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12,
	0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0f, 0x57, 0x61, 0x69, 0x74,
	0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1b, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57,
	0x61, 0x69, 0x74, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x57, 0x61, 0x69, 0x74,
	0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x43,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x53,
	0x74, 0x6f, 0x70, 0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a, 0x04, 0x48, 0x65,
	0x6c, 0x70, 0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x65, 0x6c, 0x70, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x48, 0x65, 0x6c, 0x70, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11, 0x50, 0x72, 0x65,
	0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x12, 0x1d,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6b,
	0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6b, 0x65,
	0x79, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x54, 0x0a, 0x11, 0x50, 0x72, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x49, 0x6e, 0x76,
	0x6f, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70,
	0x70, 0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x50, 0x72, 0x65, 0x61, 0x70, 0x70,
	0x72, 0x6f, 0x76, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0c, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x42,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x18, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x61, 0x74,
	0x69, 0x63, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x62, 0x61, 0x63, 0x6b,
	0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0f,
	0x42, 0x6b, 0x70, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x41, 0x70, 0x79, 0x12,
	0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x73, 0x61, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x61,
	0x70, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11,
	0x42, 0x6b, 0x70, 0x72, 0x44, 0x75, 0x6d, 0x70, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x43, 0x73,
	0x76, 0x12, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70,
	0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x64, 0x75, 0x6d, 0x70, 0x69,
	0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x63, 0x73, 0x76, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x22, 0x00, 0x12, 0x42, 0x0a, 0x0b, 0x42, 0x6b, 0x70, 0x72, 0x49, 0x6e, 0x73, 0x70, 0x65, 0x63,
	0x74, 0x12, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70,
	0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x42, 0x6b, 0x70, 0x72, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x60, 0x0a, 0x15, 0x42, 0x6b, 0x70, 0x72, 0x4c, 0x69,
	0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12,
	0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x63,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73,
	0x74, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x42, 0x6b, 0x70, 0x72,
	0x4c, 0x69, 0x73, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e,
	0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x42,
	0x6b, 0x70, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x1a, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f,
	0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x42, 0x6b, 0x70, 0x72, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x7b, 0x0a, 0x1e, 0x42, 0x6b, 0x70, 0x72,
	0x45, 0x64, 0x69, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42,
	0x79, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
	0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70,
	0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x62, 0x79, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x78, 0x0a, 0x1d, 0x42, 0x6b, 0x70, 0x72, 0x45, 0x64, 0x69,
	0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x79, 0x4f, 0x75,
	0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x29, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70,
	0x72, 0x65, 0x64, 0x69, 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x62, 0x79, 0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x2a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6b, 0x70, 0x72, 0x65, 0x64, 0x69, 0x74,
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x79, 0x6f, 0x75, 0x74,
	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x48, 0x0a, 0x0d, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x75, 0x6e, 0x65,
	0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74,
	0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x75, 0x6e, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x43, 0x68, 0x65,
	0x63, 0x6b, 0x52, 0x75, 0x6e, 0x65, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x65,
	0x63, 0x6b, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x52, 0x75, 0x6e, 0x65, 0x12, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61,
	0x74, 0x65, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x75, 0x6e, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x09, 0x53, 0x68, 0x6f, 0x77,
	0x52, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77,
	0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x10, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e,
	0x65, 0x55, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x75, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41,
	0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x75, 0x6e, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x11, 0x41, 0x73, 0x6b,
	0x52, 0x65, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x1d,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74,
	0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x6c,
	0x61, 0x79, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x57, 0x0a, 0x12, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x4c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72,
	0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72,
	0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x12, 0x41, 0x73, 0x6b, 0x52,
	0x65, 0x6e, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1e,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x72, 0x65, 0x6d, 0x6f,
	0x76, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x72, 0x65, 0x6d, 0x6f,
	0x76, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
	0x00, 0x12, 0x4b, 0x0a, 0x0e, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e,
	0x65, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x72, 0x65, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f,
	0x0a, 0x0a, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e, 0x65, 0x41, 0x67, 0x65, 0x12, 0x16, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65,
	0x6e, 0x65, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
	0x3c, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x15, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x72, 0x6f, 0x75,
	0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a,
	0x12, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e, 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x4e,
	0x6f, 0x64, 0x65, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e,
	0x65, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e,
	0x65, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x14, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e,
	0x65, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x20,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x69, 0x6e, 0x66, 0x6f,
	0x72, 0x6d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x69, 0x6e,
	0x66, 0x6f, 0x72, 0x6d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x14, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e, 0x65,
	0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x20, 0x2e,
	0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x21, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x63, 0x72, 0x65,
	0x61, 0x74, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x14, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e, 0x65, 0x55,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x20, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21,
	0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x12, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e, 0x65, 0x42, 0x69,
	0x61, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x62, 0x69, 0x61, 0x73, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e,
	0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x62, 0x69, 0x61, 0x73, 0x63, 0x68, 0x61, 0x6e, 0x6e,
	0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x66, 0x0a, 0x17,
	0x41, 0x73, 0x6b, 0x52, 0x65, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x65, 0x72,
	0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x41, 0x73,
	0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x63,
	0x6c, 0x6e, 0x2e, 0x41, 0x73, 0x6b, 0x72, 0x65, 0x6e, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x72, 0x65,
	0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x12, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x61,
	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6c, 0x6e,
	0x2e, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x6e,
	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x2d, 0x0a,
	0x04, 0x58, 0x70, 0x61, 0x79, 0x12, 0x10, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x58, 0x70, 0x61, 0x79,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x58, 0x70,
	0x61, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x13,
	0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64,
	0x64, 0x65, 0x64, 0x12, 0x1c, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
	0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x41, 0x64, 0x64,
	0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00,
	0x30, 0x01, 0x12, 0x69, 0x0a, 0x1a, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64,
	0x12, 0x23, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61,
	0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x6e,
	0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x4e, 0x6f, 0x74,
	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x30, 0x01, 0x12, 0x5d, 0x0a,
	0x16, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
	0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x12, 0x1f, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74,
	0x72, 0x65, 0x61, 0x6d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43,
	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69,
	0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x30, 0x01, 0x12, 0x4f, 0x0a, 0x10,
	0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
	0x12, 0x19, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e,
	0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x6c,
	0x6e, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4e, 0x6f, 0x74,
	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x30, 0x01, 0x12, 0x51, 0x0a,
	0x12, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d,
	0x4d, 0x73, 0x67, 0x12, 0x1b, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
	0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x1a, 0x1a, 0x2e, 0x63, 0x6c, 0x6e, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x73, 0x67,
	0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x30, 0x01,
	0x42, 0x78, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6c, 0x6e, 0x42, 0x09, 0x4e, 0x6f, 0x64,
	0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x36, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x72, 0x6b, 0x4c, 0x61, 0x62, 0x73, 0x48, 0x51, 0x2f, 0x66,
	0x75, 0x6c, 0x6d, 0x69, 0x6e, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2d, 0x73, 0x70, 0x65, 0x63, 0x2f,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x63, 0x6c, 0x6e,
	0xa2, 0x02, 0x03, 0x43, 0x58, 0x58, 0xaa, 0x02, 0x03, 0x43, 0x6c, 0x6e, 0xca, 0x02, 0x03, 0x43,
	0x6c, 0x6e, 0xe2, 0x02, 0x0f, 0x43, 0x6c, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61,
	0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x03, 0x43, 0x6c, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x33,
}

var (
	file_cln_node_proto_rawDescOnce sync.Once
	file_cln_node_proto_rawDescData = file_cln_node_proto_rawDesc
)

func file_cln_node_proto_rawDescGZIP() []byte {
	file_cln_node_proto_rawDescOnce.Do(func() {
		file_cln_node_proto_rawDescData = protoimpl.X.CompressGZIP(file_cln_node_proto_rawDescData)
	})
	return file_cln_node_proto_rawDescData
}

var file_cln_node_proto_enumTypes = make([]protoimpl.EnumInfo, 69)
var file_cln_node_proto_msgTypes = make([]protoimpl.MessageInfo, 481)
var file_cln_node_proto_goTypes = []interface{}{
	(GetinfoAddress_GetinfoAddressType)(0),                                                         // 0: cln.GetinfoAddress.GetinfoAddressType
	(GetinfoBinding_GetinfoBindingType)(0),                                                         // 1: cln.GetinfoBinding.GetinfoBindingType
	(ListpeersRequest_ListpeersLevel)(0),                                                           // 2: cln.ListpeersRequest.ListpeersLevel
	(ListpeersPeersLog_ListpeersPeersLogType)(0),                                                   // 3: cln.ListpeersPeersLog.ListpeersPeersLogType
	(ListfundsOutputs_ListfundsOutputsStatus)(0),                                                   // 4: cln.ListfundsOutputs.ListfundsOutputsStatus
	(SendpayResponse_SendpayStatus)(0),                                                             // 5: cln.SendpayResponse.SendpayStatus
	(CloseResponse_CloseType)(0),                                                                   // 6: cln.CloseResponse.CloseType
	(ConnectResponse_ConnectDirection)(0),                                                          // 7: cln.ConnectResponse.ConnectDirection
	(ConnectAddress_ConnectAddressType)(0),                                                         // 8: cln.ConnectAddress.ConnectAddressType
	(CreateinvoiceResponse_CreateinvoiceStatus)(0),                                                 // 9: cln.CreateinvoiceResponse.CreateinvoiceStatus
	(DatastoreRequest_DatastoreMode)(0),                                                            // 10: cln.DatastoreRequest.DatastoreMode
	(DelinvoiceRequest_DelinvoiceStatus)(0),                                                        // 11: cln.DelinvoiceRequest.DelinvoiceStatus
	(DelinvoiceResponse_DelinvoiceStatus)(0),                                                       // 12: cln.DelinvoiceResponse.DelinvoiceStatus
	(RecoverResponse_RecoverResult)(0),                                                             // 13: cln.RecoverResponse.RecoverResult
	(ListinvoicesRequest_ListinvoicesIndex)(0),                                                     // 14: cln.ListinvoicesRequest.ListinvoicesIndex
	(ListinvoicesInvoices_ListinvoicesInvoicesStatus)(0),                                           // 15: cln.ListinvoicesInvoices.ListinvoicesInvoicesStatus
	(SendonionResponse_SendonionStatus)(0),                                                         // 16: cln.SendonionResponse.SendonionStatus
	(ListsendpaysRequest_ListsendpaysStatus)(0),                                                    // 17: cln.ListsendpaysRequest.ListsendpaysStatus
	(ListsendpaysRequest_ListsendpaysIndex)(0),                                                     // 18: cln.ListsendpaysRequest.ListsendpaysIndex
	(ListsendpaysPayments_ListsendpaysPaymentsStatus)(0),                                           // 19: cln.ListsendpaysPayments.ListsendpaysPaymentsStatus
	(PayResponse_PayStatus)(0),                                                                     // 20: cln.PayResponse.PayStatus
	(ListnodesNodesAddresses_ListnodesNodesAddressesType)(0),                                       // 21: cln.ListnodesNodesAddresses.ListnodesNodesAddressesType
	(WaitanyinvoiceResponse_WaitanyinvoiceStatus)(0),                                               // 22: cln.WaitanyinvoiceResponse.WaitanyinvoiceStatus
	(WaitinvoiceResponse_WaitinvoiceStatus)(0),                                                     // 23: cln.WaitinvoiceResponse.WaitinvoiceStatus
	(WaitsendpayResponse_WaitsendpayStatus)(0),                                                     // 24: cln.WaitsendpayResponse.WaitsendpayStatus
	(NewaddrRequest_NewaddrAddresstype)(0),                                                         // 25: cln.NewaddrRequest.NewaddrAddresstype
	(KeysendResponse_KeysendStatus)(0),                                                             // 26: cln.KeysendResponse.KeysendStatus
	(ListpeerchannelsChannels_ListpeerchannelsChannelsState)(0),                                    // 27: cln.ListpeerchannelsChannels.ListpeerchannelsChannelsState
	(ListpeerchannelsChannelsHtlcs_ListpeerchannelsChannelsHtlcsDirection)(0),                      // 28: cln.ListpeerchannelsChannelsHtlcs.ListpeerchannelsChannelsHtlcsDirection
	(ListclosedchannelsClosedchannels_ListclosedchannelsClosedchannelsCloseCause)(0),               // 29: cln.ListclosedchannelsClosedchannels.ListclosedchannelsClosedchannelsClose_cause
	(DecodepayFallbacks_DecodepayFallbacksType)(0),                                                 // 30: cln.DecodepayFallbacks.DecodepayFallbacksType
	(DecodeResponse_DecodeType)(0),                                                                 // 31: cln.DecodeResponse.DecodeType
	(DecodeFallbacks_DecodeFallbacksType)(0),                                                       // 32: cln.DecodeFallbacks.DecodeFallbacksType
	(DelpayRequest_DelpayStatus)(0),                                                                // 33: cln.DelpayRequest.DelpayStatus
	(DelpayPayments_DelpayPaymentsStatus)(0),                                                       // 34: cln.DelpayPayments.DelpayPaymentsStatus
	(DelforwardRequest_DelforwardStatus)(0),                                                        // 35: cln.DelforwardRequest.DelforwardStatus
	(FeeratesRequest_FeeratesStyle)(0),                                                             // 36: cln.FeeratesRequest.FeeratesStyle
	(GetlogRequest_GetlogLevel)(0),                                                                 // 37: cln.GetlogRequest.GetlogLevel
	(GetlogLog_GetlogLogType)(0),                                                                   // 38: cln.GetlogLog.GetlogLogType
	(FunderupdateRequest_FunderupdatePolicy)(0),                                                    // 39: cln.FunderupdateRequest.FunderupdatePolicy
	(FunderupdateResponse_FunderupdatePolicy)(0),                                                   // 40: cln.FunderupdateResponse.FunderupdatePolicy
	(GetrouteRoute_GetrouteRouteStyle)(0),                                                          // 41: cln.GetrouteRoute.GetrouteRouteStyle
	(ListforwardsRequest_ListforwardsStatus)(0),                                                    // 42: cln.ListforwardsRequest.ListforwardsStatus
	(ListforwardsRequest_ListforwardsIndex)(0),                                                     // 43: cln.ListforwardsRequest.ListforwardsIndex
	(ListforwardsForwards_ListforwardsForwardsStatus)(0),                                           // 44: cln.ListforwardsForwards.ListforwardsForwardsStatus
	(ListforwardsForwards_ListforwardsForwardsStyle)(0),                                            // 45: cln.ListforwardsForwards.ListforwardsForwardsStyle
	(ListpaysRequest_ListpaysStatus)(0),                                                            // 46: cln.ListpaysRequest.ListpaysStatus
	(ListpaysRequest_ListpaysIndex)(0),                                                             // 47: cln.ListpaysRequest.ListpaysIndex
	(ListpaysPays_ListpaysPaysStatus)(0),                                                           // 48: cln.ListpaysPays.ListpaysPaysStatus
	(ListhtlcsHtlcs_ListhtlcsHtlcsDirection)(0),                                                    // 49: cln.ListhtlcsHtlcs.ListhtlcsHtlcsDirection
	(MultifundchannelFailed_MultifundchannelFailedMethod)(0),                                       // 50: cln.MultifundchannelFailed.MultifundchannelFailedMethod
	(RenepaystatusPaystatus_RenepaystatusPaystatusStatus)(0),                                       // 51: cln.RenepaystatusPaystatus.RenepaystatusPaystatusStatus
	(RenepayResponse_RenepayStatus)(0),                                                             // 52: cln.RenepayResponse.RenepayStatus
	(SendinvoiceResponse_SendinvoiceStatus)(0),                                                     // 53: cln.SendinvoiceResponse.SendinvoiceStatus
	(WaitRequest_WaitSubsystem)(0),                                                                 // 54: cln.WaitRequest.WaitSubsystem
	(WaitRequest_WaitIndexname)(0),                                                                 // 55: cln.WaitRequest.WaitIndexname
	(WaitResponse_WaitSubsystem)(0),                                                                // 56: cln.WaitResponse.WaitSubsystem
	(WaitDetails_WaitDetailsStatus)(0),                                                             // 57: cln.WaitDetails.WaitDetailsStatus
	(ListconfigsConfigsConf_ListconfigsConfigsConfSource)(0),                                       // 58: cln.ListconfigsConfigsConf.ListconfigsConfigsConfSource
	(ListconfigsConfigsAnnounceaddrdiscovered_ListconfigsConfigsAnnounceaddrdiscoveredValueStr)(0), // 59: cln.ListconfigsConfigsAnnounceaddrdiscovered.ListconfigsConfigsAnnounceaddrdiscoveredValue_str
	(StopResponse_StopResult)(0),                                                                   // 60: cln.StopResponse.StopResult
	(HelpResponse_HelpFormathint)(0),                                                               // 61: cln.HelpResponse.HelpFormathint
	(BkprdumpincomecsvResponse_BkprdumpincomecsvCsvFormat)(0),                                      // 62: cln.BkprdumpincomecsvResponse.BkprdumpincomecsvCsv_format
	(BkprlistaccounteventsEvents_BkprlistaccounteventsEventsType)(0),                               // 63: cln.BkprlistaccounteventsEvents.BkprlistaccounteventsEventsType
	(BkpreditdescriptionbypaymentidUpdated_BkpreditdescriptionbypaymentidUpdatedType)(0),           // 64: cln.BkpreditdescriptionbypaymentidUpdated.BkpreditdescriptionbypaymentidUpdatedType
	(BkpreditdescriptionbyoutpointUpdated_BkpreditdescriptionbyoutpointUpdatedType)(0),             // 65: cln.BkpreditdescriptionbyoutpointUpdated.BkpreditdescriptionbyoutpointUpdatedType
	(AskreneinformchannelRequest_AskreneinformchannelInform)(0),                                    // 66: cln.AskreneinformchannelRequest.AskreneinformchannelInform
	(PeerConnectNotification_PeerConnectDirection)(0),                                              // 67: cln.PeerConnectNotification.PeerConnectDirection
	(PeerConnectAddress_PeerConnectAddressType)(0),                                                 // 68: cln.PeerConnectAddress.PeerConnectAddressType
	(*GetinfoRequest)(nil),                                                                         // 69: cln.GetinfoRequest
	(*GetinfoResponse)(nil),                                                                        // 70: cln.GetinfoResponse
	(*GetinfoOurFeatures)(nil),                                                                     // 71: cln.GetinfoOur_features
	(*GetinfoAddress)(nil),                                                                         // 72: cln.GetinfoAddress
	(*GetinfoBinding)(nil),                                                                         // 73: cln.GetinfoBinding
	(*ListpeersRequest)(nil),                                                                       // 74: cln.ListpeersRequest
	(*ListpeersResponse)(nil),                                                                      // 75: cln.ListpeersResponse
	(*ListpeersPeers)(nil),                                                                         // 76: cln.ListpeersPeers
	(*ListpeersPeersLog)(nil),                                                                      // 77: cln.ListpeersPeersLog
	(*ListfundsRequest)(nil),                                                                       // 78: cln.ListfundsRequest
	(*ListfundsResponse)(nil),                                                                      // 79: cln.ListfundsResponse
	(*ListfundsOutputs)(nil),                                                                       // 80: cln.ListfundsOutputs
	(*ListfundsChannels)(nil),                                                                      // 81: cln.ListfundsChannels
	(*SendpayRequest)(nil),                                                                         // 82: cln.SendpayRequest
	(*SendpayResponse)(nil),                                                                        // 83: cln.SendpayResponse
	(*SendpayRoute)(nil),                                                                           // 84: cln.SendpayRoute
	(*ListchannelsRequest)(nil),                                                                    // 85: cln.ListchannelsRequest
	(*ListchannelsResponse)(nil),                                                                   // 86: cln.ListchannelsResponse
	(*ListchannelsChannels)(nil),                                                                   // 87: cln.ListchannelsChannels
	(*AddgossipRequest)(nil),                                                                       // 88: cln.AddgossipRequest
	(*AddgossipResponse)(nil),                                                                      // 89: cln.AddgossipResponse
	(*AddpsbtoutputRequest)(nil),                                                                   // 90: cln.AddpsbtoutputRequest
	(*AddpsbtoutputResponse)(nil),                                                                  // 91: cln.AddpsbtoutputResponse
	(*AutocleanonceRequest)(nil),                                                                   // 92: cln.AutocleanonceRequest
	(*AutocleanonceResponse)(nil),                                                                  // 93: cln.AutocleanonceResponse
	(*AutocleanonceAutoclean)(nil),                                                                 // 94: cln.AutocleanonceAutoclean
	(*AutocleanonceAutocleanSucceededforwards)(nil),                                                // 95: cln.AutocleanonceAutocleanSucceededforwards
	(*AutocleanonceAutocleanFailedforwards)(nil),                                                   // 96: cln.AutocleanonceAutocleanFailedforwards
	(*AutocleanonceAutocleanSucceededpays)(nil),                                                    // 97: cln.AutocleanonceAutocleanSucceededpays
	(*AutocleanonceAutocleanFailedpays)(nil),                                                       // 98: cln.AutocleanonceAutocleanFailedpays
	(*AutocleanonceAutocleanPaidinvoices)(nil),                                                     // 99: cln.AutocleanonceAutocleanPaidinvoices
	(*AutocleanonceAutocleanExpiredinvoices)(nil),                                                  // 100: cln.AutocleanonceAutocleanExpiredinvoices
	(*AutocleanstatusRequest)(nil),                                                                 // 101: cln.AutocleanstatusRequest
	(*AutocleanstatusResponse)(nil),                                                                // 102: cln.AutocleanstatusResponse
	(*AutocleanstatusAutoclean)(nil),                                                               // 103: cln.AutocleanstatusAutoclean
	(*AutocleanstatusAutocleanSucceededforwards)(nil),                                              // 104: cln.AutocleanstatusAutocleanSucceededforwards
	(*AutocleanstatusAutocleanFailedforwards)(nil),                                                 // 105: cln.AutocleanstatusAutocleanFailedforwards
	(*AutocleanstatusAutocleanSucceededpays)(nil),                                                  // 106: cln.AutocleanstatusAutocleanSucceededpays
	(*AutocleanstatusAutocleanFailedpays)(nil),                                                     // 107: cln.AutocleanstatusAutocleanFailedpays
	(*AutocleanstatusAutocleanPaidinvoices)(nil),                                                   // 108: cln.AutocleanstatusAutocleanPaidinvoices
	(*AutocleanstatusAutocleanExpiredinvoices)(nil),                                                // 109: cln.AutocleanstatusAutocleanExpiredinvoices
	(*CheckmessageRequest)(nil),                                                                    // 110: cln.CheckmessageRequest
	(*CheckmessageResponse)(nil),                                                                   // 111: cln.CheckmessageResponse
	(*CloseRequest)(nil),                                                                           // 112: cln.CloseRequest
	(*CloseResponse)(nil),                                                                          // 113: cln.CloseResponse
	(*ConnectRequest)(nil),                                                                         // 114: cln.ConnectRequest
	(*ConnectResponse)(nil),                                                                        // 115: cln.ConnectResponse
	(*ConnectAddress)(nil),                                                                         // 116: cln.ConnectAddress
	(*CreateinvoiceRequest)(nil),                                                                   // 117: cln.CreateinvoiceRequest
	(*CreateinvoiceResponse)(nil),                                                                  // 118: cln.CreateinvoiceResponse
	(*CreateinvoicePaidOutpoint)(nil),                                                              // 119: cln.CreateinvoicePaid_outpoint
	(*DatastoreRequest)(nil),                                                                       // 120: cln.DatastoreRequest
	(*DatastoreResponse)(nil),                                                                      // 121: cln.DatastoreResponse
	(*DatastoreusageRequest)(nil),                                                                  // 122: cln.DatastoreusageRequest
	(*DatastoreusageResponse)(nil),                                                                 // 123: cln.DatastoreusageResponse
	(*DatastoreusageDatastoreusage)(nil),                                                           // 124: cln.DatastoreusageDatastoreusage
	(*CreateonionRequest)(nil),                                                                     // 125: cln.CreateonionRequest
	(*CreateonionResponse)(nil),                                                                    // 126: cln.CreateonionResponse
	(*CreateonionHops)(nil),                                                                        // 127: cln.CreateonionHops
	(*DeldatastoreRequest)(nil),                                                                    // 128: cln.DeldatastoreRequest
	(*DeldatastoreResponse)(nil),                                                                   // 129: cln.DeldatastoreResponse
	(*DelinvoiceRequest)(nil),                                                                      // 130: cln.DelinvoiceRequest
	(*DelinvoiceResponse)(nil),                                                                     // 131: cln.DelinvoiceResponse
	(*DevforgetchannelRequest)(nil),                                                                // 132: cln.DevforgetchannelRequest
	(*DevforgetchannelResponse)(nil),                                                               // 133: cln.DevforgetchannelResponse
	(*EmergencyrecoverRequest)(nil),                                                                // 134: cln.EmergencyrecoverRequest
	(*EmergencyrecoverResponse)(nil),                                                               // 135: cln.EmergencyrecoverResponse
	(*GetemergencyrecoverdataRequest)(nil),                                                         // 136: cln.GetemergencyrecoverdataRequest
	(*GetemergencyrecoverdataResponse)(nil),                                                        // 137: cln.GetemergencyrecoverdataResponse
	(*ExposesecretRequest)(nil),                                                                    // 138: cln.ExposesecretRequest
	(*ExposesecretResponse)(nil),                                                                   // 139: cln.ExposesecretResponse
	(*RecoverRequest)(nil),                                                                         // 140: cln.RecoverRequest
	(*RecoverResponse)(nil),                                                                        // 141: cln.RecoverResponse
	(*RecoverchannelRequest)(nil),                                                                  // 142: cln.RecoverchannelRequest
	(*RecoverchannelResponse)(nil),                                                                 // 143: cln.RecoverchannelResponse
	(*InvoiceRequest)(nil),                                                                         // 144: cln.InvoiceRequest
	(*InvoiceResponse)(nil),                                                                        // 145: cln.InvoiceResponse
	(*InvoicerequestRequest)(nil),                                                                  // 146: cln.InvoicerequestRequest
	(*InvoicerequestResponse)(nil),                                                                 // 147: cln.InvoicerequestResponse
	(*DisableinvoicerequestRequest)(nil),                                                           // 148: cln.DisableinvoicerequestRequest
	(*DisableinvoicerequestResponse)(nil),                                                          // 149: cln.DisableinvoicerequestResponse
	(*ListinvoicerequestsRequest)(nil),                                                             // 150: cln.ListinvoicerequestsRequest
	(*ListinvoicerequestsResponse)(nil),                                                            // 151: cln.ListinvoicerequestsResponse
	(*ListinvoicerequestsInvoicerequests)(nil),                                                     // 152: cln.ListinvoicerequestsInvoicerequests
	(*ListdatastoreRequest)(nil),                                                                   // 153: cln.ListdatastoreRequest
	(*ListdatastoreResponse)(nil),                                                                  // 154: cln.ListdatastoreResponse
	(*ListdatastoreDatastore)(nil),                                                                 // 155: cln.ListdatastoreDatastore
	(*ListinvoicesRequest)(nil),                                                                    // 156: cln.ListinvoicesRequest
	(*ListinvoicesResponse)(nil),                                                                   // 157: cln.ListinvoicesResponse
	(*ListinvoicesInvoices)(nil),                                                                   // 158: cln.ListinvoicesInvoices
	(*ListinvoicesInvoicesPaidOutpoint)(nil),                                                       // 159: cln.ListinvoicesInvoicesPaid_outpoint
	(*SendonionRequest)(nil),                                                                       // 160: cln.SendonionRequest
	(*SendonionResponse)(nil),                                                                      // 161: cln.SendonionResponse
	(*SendonionFirstHop)(nil),                                                                      // 162: cln.SendonionFirst_hop
	(*ListsendpaysRequest)(nil),                                                                    // 163: cln.ListsendpaysRequest
	(*ListsendpaysResponse)(nil),                                                                   // 164: cln.ListsendpaysResponse
	(*ListsendpaysPayments)(nil),                                                                   // 165: cln.ListsendpaysPayments
	(*ListtransactionsRequest)(nil),                                                                // 166: cln.ListtransactionsRequest
	(*ListtransactionsResponse)(nil),                                                               // 167: cln.ListtransactionsResponse
	(*ListtransactionsTransactions)(nil),                                                           // 168: cln.ListtransactionsTransactions
	(*ListtransactionsTransactionsInputs)(nil),                                                     // 169: cln.ListtransactionsTransactionsInputs
	(*ListtransactionsTransactionsOutputs)(nil),                                                    // 170: cln.ListtransactionsTransactionsOutputs
	(*MakesecretRequest)(nil),                                                                      // 171: cln.MakesecretRequest
	(*MakesecretResponse)(nil),                                                                     // 172: cln.MakesecretResponse
	(*PayRequest)(nil),                                                                             // 173: cln.PayRequest
	(*PayResponse)(nil),                                                                            // 174: cln.PayResponse
	(*ListnodesRequest)(nil),                                                                       // 175: cln.ListnodesRequest
	(*ListnodesResponse)(nil),                                                                      // 176: cln.ListnodesResponse
	(*ListnodesNodes)(nil),                                                                         // 177: cln.ListnodesNodes
	(*ListnodesNodesOptionWillFund)(nil),                                                           // 178: cln.ListnodesNodesOption_will_fund
	(*ListnodesNodesAddresses)(nil),                                                                // 179: cln.ListnodesNodesAddresses
	(*WaitanyinvoiceRequest)(nil),                                                                  // 180: cln.WaitanyinvoiceRequest
	(*WaitanyinvoiceResponse)(nil),                                                                 // 181: cln.WaitanyinvoiceResponse
	(*WaitanyinvoicePaidOutpoint)(nil),                                                             // 182: cln.WaitanyinvoicePaid_outpoint
	(*WaitinvoiceRequest)(nil),                                                                     // 183: cln.WaitinvoiceRequest
	(*WaitinvoiceResponse)(nil),                                                                    // 184: cln.WaitinvoiceResponse
	(*WaitinvoicePaidOutpoint)(nil),                                                                // 185: cln.WaitinvoicePaid_outpoint
	(*WaitsendpayRequest)(nil),                                                                     // 186: cln.WaitsendpayRequest
	(*WaitsendpayResponse)(nil),                                                                    // 187: cln.WaitsendpayResponse
	(*NewaddrRequest)(nil),                                                                         // 188: cln.NewaddrRequest
	(*NewaddrResponse)(nil),                                                                        // 189: cln.NewaddrResponse
	(*WithdrawRequest)(nil),                                                                        // 190: cln.WithdrawRequest
	(*WithdrawResponse)(nil),                                                                       // 191: cln.WithdrawResponse
	(*KeysendRequest)(nil),                                                                         // 192: cln.KeysendRequest
	(*KeysendResponse)(nil),                                                                        // 193: cln.KeysendResponse
	(*FundpsbtRequest)(nil),                                                                        // 194: cln.FundpsbtRequest
	(*FundpsbtResponse)(nil),                                                                       // 195: cln.FundpsbtResponse
	(*FundpsbtReservations)(nil),                                                                   // 196: cln.FundpsbtReservations
	(*SendpsbtRequest)(nil),                                                                        // 197: cln.SendpsbtRequest
	(*SendpsbtResponse)(nil),                                                                       // 198: cln.SendpsbtResponse
	(*SignpsbtRequest)(nil),                                                                        // 199: cln.SignpsbtRequest
	(*SignpsbtResponse)(nil),                                                                       // 200: cln.SignpsbtResponse
	(*UtxopsbtRequest)(nil),                                                                        // 201: cln.UtxopsbtRequest
	(*UtxopsbtResponse)(nil),                                                                       // 202: cln.UtxopsbtResponse
	(*UtxopsbtReservations)(nil),                                                                   // 203: cln.UtxopsbtReservations
	(*TxdiscardRequest)(nil),                                                                       // 204: cln.TxdiscardRequest
	(*TxdiscardResponse)(nil),                                                                      // 205: cln.TxdiscardResponse
	(*TxprepareRequest)(nil),                                                                       // 206: cln.TxprepareRequest
	(*TxprepareResponse)(nil),                                                                      // 207: cln.TxprepareResponse
	(*TxsendRequest)(nil),                                                                          // 208: cln.TxsendRequest
	(*TxsendResponse)(nil),                                                                         // 209: cln.TxsendResponse
	(*ListpeerchannelsRequest)(nil),                                                                // 210: cln.ListpeerchannelsRequest
	(*ListpeerchannelsResponse)(nil),                                                               // 211: cln.ListpeerchannelsResponse
	(*ListpeerchannelsChannels)(nil),                                                               // 212: cln.ListpeerchannelsChannels
	(*ListpeerchannelsChannelsUpdates)(nil),                                                        // 213: cln.ListpeerchannelsChannelsUpdates
	(*ListpeerchannelsChannelsUpdatesLocal)(nil),                                                   // 214: cln.ListpeerchannelsChannelsUpdatesLocal
	(*ListpeerchannelsChannelsUpdatesRemote)(nil),                                                  // 215: cln.ListpeerchannelsChannelsUpdatesRemote
	(*ListpeerchannelsChannelsFeerate)(nil),                                                        // 216: cln.ListpeerchannelsChannelsFeerate
	(*ListpeerchannelsChannelsInflight)(nil),                                                       // 217: cln.ListpeerchannelsChannelsInflight
	(*ListpeerchannelsChannelsFunding)(nil),                                                        // 218: cln.ListpeerchannelsChannelsFunding
	(*ListpeerchannelsChannelsAlias)(nil),                                                          // 219: cln.ListpeerchannelsChannelsAlias
	(*ListpeerchannelsChannelsHtlcs)(nil),                                                          // 220: cln.ListpeerchannelsChannelsHtlcs
	(*ListclosedchannelsRequest)(nil),                                                              // 221: cln.ListclosedchannelsRequest
	(*ListclosedchannelsResponse)(nil),                                                             // 222: cln.ListclosedchannelsResponse
	(*ListclosedchannelsClosedchannels)(nil),                                                       // 223: cln.ListclosedchannelsClosedchannels
	(*ListclosedchannelsClosedchannelsAlias)(nil),                                                  // 224: cln.ListclosedchannelsClosedchannelsAlias
	(*DecodepayRequest)(nil),                                                                       // 225: cln.DecodepayRequest
	(*DecodepayResponse)(nil),                                                                      // 226: cln.DecodepayResponse
	(*DecodepayFallbacks)(nil),                                                                     // 227: cln.DecodepayFallbacks
	(*DecodepayExtra)(nil),                                                                         // 228: cln.DecodepayExtra
	(*DecodeRequest)(nil),                                                                          // 229: cln.DecodeRequest
	(*DecodeResponse)(nil),                                                                         // 230: cln.DecodeResponse
	(*DecodeOfferPaths)(nil),                                                                       // 231: cln.DecodeOffer_paths
	(*DecodeOfferRecurrencePaywindow)(nil),                                                         // 232: cln.DecodeOffer_recurrencePaywindow
	(*DecodeInvreqPaths)(nil),                                                                      // 233: cln.DecodeInvreq_paths
	(*DecodeInvreqPathsPath)(nil),                                                                  // 234: cln.DecodeInvreq_pathsPath
	(*DecodeInvoicePathsPath)(nil),                                                                 // 235: cln.DecodeInvoice_pathsPath
	(*DecodeInvoiceFallbacks)(nil),                                                                 // 236: cln.DecodeInvoice_fallbacks
	(*DecodeFallbacks)(nil),                                                                        // 237: cln.DecodeFallbacks
	(*DecodeExtra)(nil),                                                                            // 238: cln.DecodeExtra
	(*DecodeRestrictions)(nil),                                                                     // 239: cln.DecodeRestrictions
	(*DelpayRequest)(nil),                                                                          // 240: cln.DelpayRequest
	(*DelpayResponse)(nil),                                                                         // 241: cln.DelpayResponse
	(*DelpayPayments)(nil),                                                                         // 242: cln.DelpayPayments
	(*DelforwardRequest)(nil),                                                                      // 243: cln.DelforwardRequest
	(*DelforwardResponse)(nil),                                                                     // 244: cln.DelforwardResponse
	(*DisableofferRequest)(nil),                                                                    // 245: cln.DisableofferRequest
	(*DisableofferResponse)(nil),                                                                   // 246: cln.DisableofferResponse
	(*EnableofferRequest)(nil),                                                                     // 247: cln.EnableofferRequest
	(*EnableofferResponse)(nil),                                                                    // 248: cln.EnableofferResponse
	(*DisconnectRequest)(nil),                                                                      // 249: cln.DisconnectRequest
	(*DisconnectResponse)(nil),                                                                     // 250: cln.DisconnectResponse
	(*FeeratesRequest)(nil),                                                                        // 251: cln.FeeratesRequest
	(*FeeratesResponse)(nil),                                                                       // 252: cln.FeeratesResponse
	(*FeeratesPerkb)(nil),                                                                          // 253: cln.FeeratesPerkb
	(*FeeratesPerkbEstimates)(nil),                                                                 // 254: cln.FeeratesPerkbEstimates
	(*FeeratesPerkw)(nil),                                                                          // 255: cln.FeeratesPerkw
	(*FeeratesPerkwEstimates)(nil),                                                                 // 256: cln.FeeratesPerkwEstimates
	(*FeeratesOnchainFeeEstimates)(nil),                                                            // 257: cln.FeeratesOnchain_fee_estimates
	(*FetchinvoiceRequest)(nil),                                                                    // 258: cln.FetchinvoiceRequest
	(*FetchinvoiceResponse)(nil),                                                                   // 259: cln.FetchinvoiceResponse
	(*FetchinvoiceChanges)(nil),                                                                    // 260: cln.FetchinvoiceChanges
	(*FetchinvoiceNextPeriod)(nil),                                                                 // 261: cln.FetchinvoiceNext_period
	(*FundchannelCancelRequest)(nil),                                                               // 262: cln.Fundchannel_cancelRequest
	(*FundchannelCancelResponse)(nil),                                                              // 263: cln.Fundchannel_cancelResponse
	(*FundchannelCompleteRequest)(nil),                                                             // 264: cln.Fundchannel_completeRequest
	(*FundchannelCompleteResponse)(nil),                                                            // 265: cln.Fundchannel_completeResponse
	(*FundchannelRequest)(nil),                                                                     // 266: cln.FundchannelRequest
	(*FundchannelResponse)(nil),                                                                    // 267: cln.FundchannelResponse
	(*FundchannelChannelType)(nil),                                                                 // 268: cln.FundchannelChannel_type
	(*FundchannelStartRequest)(nil),                                                                // 269: cln.Fundchannel_startRequest
	(*FundchannelStartResponse)(nil),                                                               // 270: cln.Fundchannel_startResponse
	(*FundchannelStartChannelType)(nil),                                                            // 271: cln.Fundchannel_startChannel_type
	(*GetlogRequest)(nil),                                                                          // 272: cln.GetlogRequest
	(*GetlogResponse)(nil),                                                                         // 273: cln.GetlogResponse
	(*GetlogLog)(nil),                                                                              // 274: cln.GetlogLog
	(*FunderupdateRequest)(nil),                                                                    // 275: cln.FunderupdateRequest
	(*FunderupdateResponse)(nil),                                                                   // 276: cln.FunderupdateResponse
	(*GetrouteRequest)(nil),                                                                        // 277: cln.GetrouteRequest
	(*GetrouteResponse)(nil),                                                                       // 278: cln.GetrouteResponse
	(*GetrouteRoute)(nil),                                                                          // 279: cln.GetrouteRoute
	(*ListaddressesRequest)(nil),                                                                   // 280: cln.ListaddressesRequest
	(*ListaddressesResponse)(nil),                                                                  // 281: cln.ListaddressesResponse
	(*ListaddressesAddresses)(nil),                                                                 // 282: cln.ListaddressesAddresses
	(*ListforwardsRequest)(nil),                                                                    // 283: cln.ListforwardsRequest
	(*ListforwardsResponse)(nil),                                                                   // 284: cln.ListforwardsResponse
	(*ListforwardsForwards)(nil),                                                                   // 285: cln.ListforwardsForwards
	(*ListoffersRequest)(nil),                                                                      // 286: cln.ListoffersRequest
	(*ListoffersResponse)(nil),                                                                     // 287: cln.ListoffersResponse
	(*ListoffersOffers)(nil),                                                                       // 288: cln.ListoffersOffers
	(*ListpaysRequest)(nil),                                                                        // 289: cln.ListpaysRequest
	(*ListpaysResponse)(nil),                                                                       // 290: cln.ListpaysResponse
	(*ListpaysPays)(nil),                                                                           // 291: cln.ListpaysPays
	(*ListhtlcsRequest)(nil),                                                                       // 292: cln.ListhtlcsRequest
	(*ListhtlcsResponse)(nil),                                                                      // 293: cln.ListhtlcsResponse
	(*ListhtlcsHtlcs)(nil),                                                                         // 294: cln.ListhtlcsHtlcs
	(*MultifundchannelRequest)(nil),                                                                // 295: cln.MultifundchannelRequest
	(*MultifundchannelResponse)(nil),                                                               // 296: cln.MultifundchannelResponse
	(*MultifundchannelDestinations)(nil),                                                           // 297: cln.MultifundchannelDestinations
	(*MultifundchannelChannelIds)(nil),                                                             // 298: cln.MultifundchannelChannel_ids
	(*MultifundchannelChannelIdsChannelType)(nil),                                                  // 299: cln.MultifundchannelChannel_idsChannel_type
	(*MultifundchannelFailed)(nil),                                                                 // 300: cln.MultifundchannelFailed
	(*MultifundchannelFailedError)(nil),                                                            // 301: cln.MultifundchannelFailedError
	(*MultiwithdrawRequest)(nil),                                                                   // 302: cln.MultiwithdrawRequest
	(*MultiwithdrawResponse)(nil),                                                                  // 303: cln.MultiwithdrawResponse
	(*OfferRequest)(nil),                                                                           // 304: cln.OfferRequest
	(*OfferResponse)(nil),                                                                          // 305: cln.OfferResponse
	(*OpenchannelAbortRequest)(nil),                                                                // 306: cln.Openchannel_abortRequest
	(*OpenchannelAbortResponse)(nil),                                                               // 307: cln.Openchannel_abortResponse
	(*OpenchannelBumpRequest)(nil),                                                                 // 308: cln.Openchannel_bumpRequest
	(*OpenchannelBumpResponse)(nil),                                                                // 309: cln.Openchannel_bumpResponse
	(*OpenchannelBumpChannelType)(nil),                                                             // 310: cln.Openchannel_bumpChannel_type
	(*OpenchannelInitRequest)(nil),                                                                 // 311: cln.Openchannel_initRequest
	(*OpenchannelInitResponse)(nil),                                                                // 312: cln.Openchannel_initResponse
	(*OpenchannelInitChannelType)(nil),                                                             // 313: cln.Openchannel_initChannel_type
	(*OpenchannelSignedRequest)(nil),                                                               // 314: cln.Openchannel_signedRequest
	(*OpenchannelSignedResponse)(nil),                                                              // 315: cln.Openchannel_signedResponse
	(*OpenchannelUpdateRequest)(nil),                                                               // 316: cln.Openchannel_updateRequest
	(*OpenchannelUpdateResponse)(nil),                                                              // 317: cln.Openchannel_updateResponse
	(*OpenchannelUpdateChannelType)(nil),                                                           // 318: cln.Openchannel_updateChannel_type
	(*PingRequest)(nil),                                                                            // 319: cln.PingRequest
	(*PingResponse)(nil),                                                                           // 320: cln.PingResponse
	(*PluginRequest)(nil),                                                                          // 321: cln.PluginRequest
	(*PluginResponse)(nil),                                                                         // 322: cln.PluginResponse
	(*PluginPlugins)(nil),                                                                          // 323: cln.PluginPlugins
	(*RenepaystatusRequest)(nil),                                                                   // 324: cln.RenepaystatusRequest
	(*RenepaystatusResponse)(nil),                                                                  // 325: cln.RenepaystatusResponse
	(*RenepaystatusPaystatus)(nil),                                                                 // 326: cln.RenepaystatusPaystatus
	(*RenepayRequest)(nil),                                                                         // 327: cln.RenepayRequest
	(*RenepayResponse)(nil),                                                                        // 328: cln.RenepayResponse
	(*ReserveinputsRequest)(nil),                                                                   // 329: cln.ReserveinputsRequest
	(*ReserveinputsResponse)(nil),                                                                  // 330: cln.ReserveinputsResponse
	(*ReserveinputsReservations)(nil),                                                              // 331: cln.ReserveinputsReservations
	(*SendcustommsgRequest)(nil),                                                                   // 332: cln.SendcustommsgRequest
	(*SendcustommsgResponse)(nil),                                                                  // 333: cln.SendcustommsgResponse
	(*SendinvoiceRequest)(nil),                                                                     // 334: cln.SendinvoiceRequest
	(*SendinvoiceResponse)(nil),                                                                    // 335: cln.SendinvoiceResponse
	(*SetchannelRequest)(nil),                                                                      // 336: cln.SetchannelRequest
	(*SetchannelResponse)(nil),                                                                     // 337: cln.SetchannelResponse
	(*SetchannelChannels)(nil),                                                                     // 338: cln.SetchannelChannels
	(*SetconfigRequest)(nil),                                                                       // 339: cln.SetconfigRequest
	(*SetconfigResponse)(nil),                                                                      // 340: cln.SetconfigResponse
	(*SetconfigConfig)(nil),                                                                        // 341: cln.SetconfigConfig
	(*SetpsbtversionRequest)(nil),                                                                  // 342: cln.SetpsbtversionRequest
	(*SetpsbtversionResponse)(nil),                                                                 // 343: cln.SetpsbtversionResponse
	(*SigninvoiceRequest)(nil),                                                                     // 344: cln.SigninvoiceRequest
	(*SigninvoiceResponse)(nil),                                                                    // 345: cln.SigninvoiceResponse
	(*SignmessageRequest)(nil),                                                                     // 346: cln.SignmessageRequest
	(*SignmessageResponse)(nil),                                                                    // 347: cln.SignmessageResponse
	(*SpliceInitRequest)(nil),                                                                      // 348: cln.Splice_initRequest
	(*SpliceInitResponse)(nil),                                                                     // 349: cln.Splice_initResponse
	(*SpliceSignedRequest)(nil),                                                                    // 350: cln.Splice_signedRequest
	(*SpliceSignedResponse)(nil),                                                                   // 351: cln.Splice_signedResponse
	(*SpliceUpdateRequest)(nil),                                                                    // 352: cln.Splice_updateRequest
	(*SpliceUpdateResponse)(nil),                                                                   // 353: cln.Splice_updateResponse
	(*DevspliceRequest)(nil),                                                                       // 354: cln.DevspliceRequest
	(*DevspliceResponse)(nil),                                                                      // 355: cln.DevspliceResponse
	(*UnreserveinputsRequest)(nil),                                                                 // 356: cln.UnreserveinputsRequest
	(*UnreserveinputsResponse)(nil),                                                                // 357: cln.UnreserveinputsResponse
	(*UnreserveinputsReservations)(nil),                                                            // 358: cln.UnreserveinputsReservations
	(*UpgradewalletRequest)(nil),                                                                   // 359: cln.UpgradewalletRequest
	(*UpgradewalletResponse)(nil),                                                                  // 360: cln.UpgradewalletResponse
	(*WaitblockheightRequest)(nil),                                                                 // 361: cln.WaitblockheightRequest
	(*WaitblockheightResponse)(nil),                                                                // 362: cln.WaitblockheightResponse
	(*WaitRequest)(nil),                                                                            // 363: cln.WaitRequest
	(*WaitResponse)(nil),                                                                           // 364: cln.WaitResponse
	(*WaitDetails)(nil),                                                                            // 365: cln.WaitDetails
	(*ListconfigsRequest)(nil),                                                                     // 366: cln.ListconfigsRequest
	(*ListconfigsResponse)(nil),                                                                    // 367: cln.ListconfigsResponse
	(*ListconfigsConfigs)(nil),                                                                     // 368: cln.ListconfigsConfigs
	(*ListconfigsConfigsConf)(nil),                                                                 // 369: cln.ListconfigsConfigsConf
	(*ListconfigsConfigsDeveloper)(nil),                                                            // 370: cln.ListconfigsConfigsDeveloper
	(*ListconfigsConfigsClearplugins)(nil),                                                         // 371: cln.ListconfigsConfigsClearplugins
	(*ListconfigsConfigsDisablempp)(nil),                                                           // 372: cln.ListconfigsConfigsDisablempp
	(*ListconfigsConfigsMainnet)(nil),                                                              // 373: cln.ListconfigsConfigsMainnet
	(*ListconfigsConfigsRegtest)(nil),                                                              // 374: cln.ListconfigsConfigsRegtest
	(*ListconfigsConfigsSignet)(nil),                                                               // 375: cln.ListconfigsConfigsSignet
	(*ListconfigsConfigsTestnet)(nil),                                                              // 376: cln.ListconfigsConfigsTestnet
	(*ListconfigsConfigsImportantplugin)(nil),                                                      // 377: cln.ListconfigsConfigsImportantplugin
	(*ListconfigsConfigsPlugin)(nil),                                                               // 378: cln.ListconfigsConfigsPlugin
	(*ListconfigsConfigsPlugindir)(nil),                                                            // 379: cln.ListconfigsConfigsPlugindir
	(*ListconfigsConfigsLightningdir)(nil),                                                         // 380: cln.ListconfigsConfigsLightningdir
	(*ListconfigsConfigsNetwork)(nil),                                                              // 381: cln.ListconfigsConfigsNetwork
	(*ListconfigsConfigsAllowdeprecatedapis)(nil),                                                  // 382: cln.ListconfigsConfigsAllowdeprecatedapis
	(*ListconfigsConfigsRpcfile)(nil),                                                              // 383: cln.ListconfigsConfigsRpcfile
	(*ListconfigsConfigsDisableplugin)(nil),                                                        // 384: cln.ListconfigsConfigsDisableplugin
	(*ListconfigsConfigsAlwaysuseproxy)(nil),                                                       // 385: cln.ListconfigsConfigsAlwaysuseproxy
	(*ListconfigsConfigsDaemon)(nil),                                                               // 386: cln.ListconfigsConfigsDaemon
	(*ListconfigsConfigsWallet)(nil),                                                               // 387: cln.ListconfigsConfigsWallet
	(*ListconfigsConfigsLargechannels)(nil),                                                        // 388: cln.ListconfigsConfigsLargechannels
	(*ListconfigsConfigsExperimentaldualfund)(nil),                                                 // 389: cln.ListconfigsConfigsExperimentaldualfund
	(*ListconfigsConfigsExperimentalsplicing)(nil),                                                 // 390: cln.ListconfigsConfigsExperimentalsplicing
	(*ListconfigsConfigsExperimentalonionmessages)(nil),                                            // 391: cln.ListconfigsConfigsExperimentalonionmessages
	(*ListconfigsConfigsExperimentaloffers)(nil),                                                   // 392: cln.ListconfigsConfigsExperimentaloffers
	(*ListconfigsConfigsExperimentalshutdownwrongfunding)(nil),                                     // 393: cln.ListconfigsConfigsExperimentalshutdownwrongfunding
	(*ListconfigsConfigsExperimentalpeerstorage)(nil),                                              // 394: cln.ListconfigsConfigsExperimentalpeerstorage
	(*ListconfigsConfigsExperimentalanchors)(nil),                                                  // 395: cln.ListconfigsConfigsExperimentalanchors
	(*ListconfigsConfigsDatabaseupgrade)(nil),                                                      // 396: cln.ListconfigsConfigsDatabaseupgrade
	(*ListconfigsConfigsRgb)(nil),                                                                  // 397: cln.ListconfigsConfigsRgb
	(*ListconfigsConfigsAlias)(nil),                                                                // 398: cln.ListconfigsConfigsAlias
	(*ListconfigsConfigsPidfile)(nil),                                                              // 399: cln.ListconfigsConfigsPidfile
	(*ListconfigsConfigsIgnorefeelimits)(nil),                                                      // 400: cln.ListconfigsConfigsIgnorefeelimits
	(*ListconfigsConfigsWatchtimeblocks)(nil),                                                      // 401: cln.ListconfigsConfigsWatchtimeblocks
	(*ListconfigsConfigsMaxlocktimeblocks)(nil),                                                    // 402: cln.ListconfigsConfigsMaxlocktimeblocks
	(*ListconfigsConfigsFundingconfirms)(nil),                                                      // 403: cln.ListconfigsConfigsFundingconfirms
	(*ListconfigsConfigsCltvdelta)(nil),                                                            // 404: cln.ListconfigsConfigsCltvdelta
	(*ListconfigsConfigsCltvfinal)(nil),                                                            // 405: cln.ListconfigsConfigsCltvfinal
	(*ListconfigsConfigsCommittime)(nil),                                                           // 406: cln.ListconfigsConfigsCommittime
	(*ListconfigsConfigsFeebase)(nil),                                                              // 407: cln.ListconfigsConfigsFeebase
	(*ListconfigsConfigsRescan)(nil),                                                               // 408: cln.ListconfigsConfigsRescan
	(*ListconfigsConfigsFeepersatoshi)(nil),                                                        // 409: cln.ListconfigsConfigsFeepersatoshi
	(*ListconfigsConfigsMaxconcurrenthtlcs)(nil),                                                   // 410: cln.ListconfigsConfigsMaxconcurrenthtlcs
	(*ListconfigsConfigsHtlcminimummsat)(nil),                                                      // 411: cln.ListconfigsConfigsHtlcminimummsat
	(*ListconfigsConfigsHtlcmaximummsat)(nil),                                                      // 412: cln.ListconfigsConfigsHtlcmaximummsat
	(*ListconfigsConfigsMaxdusthtlcexposuremsat)(nil),                                              // 413: cln.ListconfigsConfigsMaxdusthtlcexposuremsat
	(*ListconfigsConfigsMincapacitysat)(nil),                                                       // 414: cln.ListconfigsConfigsMincapacitysat
	(*ListconfigsConfigsAddr)(nil),                                                                 // 415: cln.ListconfigsConfigsAddr
	(*ListconfigsConfigsAnnounceaddr)(nil),                                                         // 416: cln.ListconfigsConfigsAnnounceaddr
	(*ListconfigsConfigsBindaddr)(nil),                                                             // 417: cln.ListconfigsConfigsBindaddr
	(*ListconfigsConfigsOffline)(nil),                                                              // 418: cln.ListconfigsConfigsOffline
	(*ListconfigsConfigsAutolisten)(nil),                                                           // 419: cln.ListconfigsConfigsAutolisten
	(*ListconfigsConfigsProxy)(nil),                                                                // 420: cln.ListconfigsConfigsProxy
	(*ListconfigsConfigsDisabledns)(nil),                                                           // 421: cln.ListconfigsConfigsDisabledns
	(*ListconfigsConfigsAnnounceaddrdiscovered)(nil),                                               // 422: cln.ListconfigsConfigsAnnounceaddrdiscovered
	(*ListconfigsConfigsAnnounceaddrdiscoveredport)(nil),                                           // 423: cln.ListconfigsConfigsAnnounceaddrdiscoveredport
	(*ListconfigsConfigsEncryptedhsm)(nil),                                                         // 424: cln.ListconfigsConfigsEncryptedhsm
	(*ListconfigsConfigsRpcfilemode)(nil),                                                          // 425: cln.ListconfigsConfigsRpcfilemode
	(*ListconfigsConfigsLoglevel)(nil),                                                             // 426: cln.ListconfigsConfigsLoglevel
	(*ListconfigsConfigsLogprefix)(nil),                                                            // 427: cln.ListconfigsConfigsLogprefix
	(*ListconfigsConfigsLogfile)(nil),                                                              // 428: cln.ListconfigsConfigsLogfile
	(*ListconfigsConfigsLogtimestamps)(nil),                                                        // 429: cln.ListconfigsConfigsLogtimestamps
	(*ListconfigsConfigsForcefeerates)(nil),                                                        // 430: cln.ListconfigsConfigsForcefeerates
	(*ListconfigsConfigsSubdaemon)(nil),                                                            // 431: cln.ListconfigsConfigsSubdaemon
	(*ListconfigsConfigsFetchinvoicenoconnect)(nil),                                                // 432: cln.ListconfigsConfigsFetchinvoicenoconnect
	(*ListconfigsConfigsAccepthtlctlvtypes)(nil),                                                   // 433: cln.ListconfigsConfigsAccepthtlctlvtypes
	(*ListconfigsConfigsTorservicepassword)(nil),                                                   // 434: cln.ListconfigsConfigsTorservicepassword
	(*ListconfigsConfigsAnnounceaddrdns)(nil),                                                      // 435: cln.ListconfigsConfigsAnnounceaddrdns
	(*ListconfigsConfigsRequireconfirmedinputs)(nil),                                               // 436: cln.ListconfigsConfigsRequireconfirmedinputs
	(*ListconfigsConfigsCommitfee)(nil),                                                            // 437: cln.ListconfigsConfigsCommitfee
	(*ListconfigsConfigsCommitfeerateoffset)(nil),                                                  // 438: cln.ListconfigsConfigsCommitfeerateoffset
	(*ListconfigsConfigsAutoconnectseekerpeers)(nil),                                               // 439: cln.ListconfigsConfigsAutoconnectseekerpeers
	(*ListconfigsPlugins)(nil),                                                                     // 440: cln.ListconfigsPlugins
	(*ListconfigsPluginsOptions)(nil),                                                              // 441: cln.ListconfigsPluginsOptions
	(*ListconfigsImportantplugins)(nil),                                                            // 442: cln.ListconfigsImportantplugins
	(*ListconfigsImportantpluginsOptions)(nil),                                                     // 443: cln.ListconfigsImportantpluginsOptions
	(*StopRequest)(nil),                                                                            // 444: cln.StopRequest
	(*StopResponse)(nil),                                                                           // 445: cln.StopResponse
	(*HelpRequest)(nil),                                                                            // 446: cln.HelpRequest
	(*HelpResponse)(nil),                                                                           // 447: cln.HelpResponse
	(*HelpHelp)(nil),                                                                               // 448: cln.HelpHelp
	(*PreapprovekeysendRequest)(nil),                                                               // 449: cln.PreapprovekeysendRequest
	(*PreapprovekeysendResponse)(nil),                                                              // 450: cln.PreapprovekeysendResponse
	(*PreapproveinvoiceRequest)(nil),                                                               // 451: cln.PreapproveinvoiceRequest
	(*PreapproveinvoiceResponse)(nil),                                                              // 452: cln.PreapproveinvoiceResponse
	(*StaticbackupRequest)(nil),                                                                    // 453: cln.StaticbackupRequest
	(*StaticbackupResponse)(nil),                                                                   // 454: cln.StaticbackupResponse
	(*BkprchannelsapyRequest)(nil),                                                                 // 455: cln.BkprchannelsapyRequest
	(*BkprchannelsapyResponse)(nil),                                                                // 456: cln.BkprchannelsapyResponse
	(*BkprchannelsapyChannelsApy)(nil),                                                             // 457: cln.BkprchannelsapyChannels_apy
	(*BkprdumpincomecsvRequest)(nil),                                                               // 458: cln.BkprdumpincomecsvRequest
	(*BkprdumpincomecsvResponse)(nil),                                                              // 459: cln.BkprdumpincomecsvResponse
	(*BkprinspectRequest)(nil),                                                                     // 460: cln.BkprinspectRequest
	(*BkprinspectResponse)(nil),                                                                    // 461: cln.BkprinspectResponse
	(*BkprinspectTxs)(nil),                                                                         // 462: cln.BkprinspectTxs
	(*BkprinspectTxsOutputs)(nil),                                                                  // 463: cln.BkprinspectTxsOutputs
	(*BkprlistaccounteventsRequest)(nil),                                                           // 464: cln.BkprlistaccounteventsRequest
	(*BkprlistaccounteventsResponse)(nil),                                                          // 465: cln.BkprlistaccounteventsResponse
	(*BkprlistaccounteventsEvents)(nil),                                                            // 466: cln.BkprlistaccounteventsEvents
	(*BkprlistbalancesRequest)(nil),                                                                // 467: cln.BkprlistbalancesRequest
	(*BkprlistbalancesResponse)(nil),                                                               // 468: cln.BkprlistbalancesResponse
	(*BkprlistbalancesAccounts)(nil),                                                               // 469: cln.BkprlistbalancesAccounts
	(*BkprlistbalancesAccountsBalances)(nil),                                                       // 470: cln.BkprlistbalancesAccountsBalances
	(*BkprlistincomeRequest)(nil),                                                                  // 471: cln.BkprlistincomeRequest
	(*BkprlistincomeResponse)(nil),                                                                 // 472: cln.BkprlistincomeResponse
	(*BkprlistincomeIncomeEvents)(nil),                                                             // 473: cln.BkprlistincomeIncome_events
	(*BkpreditdescriptionbypaymentidRequest)(nil),                                                  // 474: cln.BkpreditdescriptionbypaymentidRequest
	(*BkpreditdescriptionbypaymentidResponse)(nil),                                                 // 475: cln.BkpreditdescriptionbypaymentidResponse
	(*BkpreditdescriptionbypaymentidUpdated)(nil),                                                  // 476: cln.BkpreditdescriptionbypaymentidUpdated
	(*BkpreditdescriptionbyoutpointRequest)(nil),                                                   // 477: cln.BkpreditdescriptionbyoutpointRequest
	(*BkpreditdescriptionbyoutpointResponse)(nil),                                                  // 478: cln.BkpreditdescriptionbyoutpointResponse
	(*BkpreditdescriptionbyoutpointUpdated)(nil),                                                   // 479: cln.BkpreditdescriptionbyoutpointUpdated
	(*BlacklistruneRequest)(nil),                                                                   // 480: cln.BlacklistruneRequest
	(*BlacklistruneResponse)(nil),                                                                  // 481: cln.BlacklistruneResponse
	(*BlacklistruneBlacklist)(nil),                                                                 // 482: cln.BlacklistruneBlacklist
	(*CheckruneRequest)(nil),                                                                       // 483: cln.CheckruneRequest
	(*CheckruneResponse)(nil),                                                                      // 484: cln.CheckruneResponse
	(*CreateruneRequest)(nil),                                                                      // 485: cln.CreateruneRequest
	(*CreateruneResponse)(nil),                                                                     // 486: cln.CreateruneResponse
	(*ShowrunesRequest)(nil),                                                                       // 487: cln.ShowrunesRequest
	(*ShowrunesResponse)(nil),                                                                      // 488: cln.ShowrunesResponse
	(*ShowrunesRunes)(nil),                                                                         // 489: cln.ShowrunesRunes
	(*ShowrunesRunesRestrictions)(nil),                                                             // 490: cln.ShowrunesRunesRestrictions
	(*ShowrunesRunesRestrictionsAlternatives)(nil),                                                 // 491: cln.ShowrunesRunesRestrictionsAlternatives
	(*AskreneunreserveRequest)(nil),                                                                // 492: cln.AskreneunreserveRequest
	(*AskreneunreserveResponse)(nil),                                                               // 493: cln.AskreneunreserveResponse
	(*AskreneunreservePath)(nil),                                                                   // 494: cln.AskreneunreservePath
	(*AskrenelistlayersRequest)(nil),                                                               // 495: cln.AskrenelistlayersRequest
	(*AskrenelistlayersResponse)(nil),                                                              // 496: cln.AskrenelistlayersResponse
	(*AskrenelistlayersLayers)(nil),                                                                // 497: cln.AskrenelistlayersLayers
	(*AskrenelistlayersLayersCreatedChannels)(nil),                                                 // 498: cln.AskrenelistlayersLayersCreated_channels
	(*AskrenelistlayersLayersChannelUpdates)(nil),                                                  // 499: cln.AskrenelistlayersLayersChannel_updates
	(*AskrenelistlayersLayersConstraints)(nil),                                                     // 500: cln.AskrenelistlayersLayersConstraints
	(*AskrenelistlayersLayersBiases)(nil),                                                          // 501: cln.AskrenelistlayersLayersBiases
	(*AskrenecreatelayerRequest)(nil),                                                              // 502: cln.AskrenecreatelayerRequest
	(*AskrenecreatelayerResponse)(nil),                                                             // 503: cln.AskrenecreatelayerResponse
	(*AskrenecreatelayerLayers)(nil),                                                               // 504: cln.AskrenecreatelayerLayers
	(*AskrenecreatelayerLayersCreatedChannels)(nil),                                                // 505: cln.AskrenecreatelayerLayersCreated_channels
	(*AskrenecreatelayerLayersChannelUpdates)(nil),                                                 // 506: cln.AskrenecreatelayerLayersChannel_updates
	(*AskrenecreatelayerLayersConstraints)(nil),                                                    // 507: cln.AskrenecreatelayerLayersConstraints
	(*AskrenecreatelayerLayersBiases)(nil),                                                         // 508: cln.AskrenecreatelayerLayersBiases
	(*AskreneremovelayerRequest)(nil),                                                              // 509: cln.AskreneremovelayerRequest
	(*AskreneremovelayerResponse)(nil),                                                             // 510: cln.AskreneremovelayerResponse
	(*AskrenereserveRequest)(nil),                                                                  // 511: cln.AskrenereserveRequest
	(*AskrenereserveResponse)(nil),                                                                 // 512: cln.AskrenereserveResponse
	(*AskrenereservePath)(nil),                                                                     // 513: cln.AskrenereservePath
	(*AskreneageRequest)(nil),                                                                      // 514: cln.AskreneageRequest
	(*AskreneageResponse)(nil),                                                                     // 515: cln.AskreneageResponse
	(*GetroutesRequest)(nil),                                                                       // 516: cln.GetroutesRequest
	(*GetroutesResponse)(nil),                                                                      // 517: cln.GetroutesResponse
	(*GetroutesRoutes)(nil),                                                                        // 518: cln.GetroutesRoutes
	(*GetroutesRoutesPath)(nil),                                                                    // 519: cln.GetroutesRoutesPath
	(*AskrenedisablenodeRequest)(nil),                                                              // 520: cln.AskrenedisablenodeRequest
	(*AskrenedisablenodeResponse)(nil),                                                             // 521: cln.AskrenedisablenodeResponse
	(*AskreneinformchannelRequest)(nil),                                                            // 522: cln.AskreneinformchannelRequest
	(*AskreneinformchannelResponse)(nil),                                                           // 523: cln.AskreneinformchannelResponse
	(*AskreneinformchannelConstraints)(nil),                                                        // 524: cln.AskreneinformchannelConstraints
	(*AskrenecreatechannelRequest)(nil),                                                            // 525: cln.AskrenecreatechannelRequest
	(*AskrenecreatechannelResponse)(nil),                                                           // 526: cln.AskrenecreatechannelResponse
	(*AskreneupdatechannelRequest)(nil),                                                            // 527: cln.AskreneupdatechannelRequest
	(*AskreneupdatechannelResponse)(nil),                                                           // 528: cln.AskreneupdatechannelResponse
	(*AskrenebiaschannelRequest)(nil),                                                              // 529: cln.AskrenebiaschannelRequest
	(*AskrenebiaschannelResponse)(nil),                                                             // 530: cln.AskrenebiaschannelResponse
	(*AskrenebiaschannelBiases)(nil),                                                               // 531: cln.AskrenebiaschannelBiases
	(*AskrenelistreservationsRequest)(nil),                                                         // 532: cln.AskrenelistreservationsRequest
	(*AskrenelistreservationsResponse)(nil),                                                        // 533: cln.AskrenelistreservationsResponse
	(*AskrenelistreservationsReservations)(nil),                                                    // 534: cln.AskrenelistreservationsReservations
	(*InjectpaymentonionRequest)(nil),                                                              // 535: cln.InjectpaymentonionRequest
	(*InjectpaymentonionResponse)(nil),                                                             // 536: cln.InjectpaymentonionResponse
	(*XpayRequest)(nil),                                                                            // 537: cln.XpayRequest
	(*XpayResponse)(nil),                                                                           // 538: cln.XpayResponse
	(*StreamBlockAddedRequest)(nil),                                                                // 539: cln.StreamBlockAddedRequest
	(*BlockAddedNotification)(nil),                                                                 // 540: cln.BlockAddedNotification
	(*StreamChannelOpenFailedRequest)(nil),                                                         // 541: cln.StreamChannelOpenFailedRequest
	(*ChannelOpenFailedNotification)(nil),                                                          // 542: cln.ChannelOpenFailedNotification
	(*StreamChannelOpenedRequest)(nil),                                                             // 543: cln.StreamChannelOpenedRequest
	(*ChannelOpenedNotification)(nil),                                                              // 544: cln.ChannelOpenedNotification
	(*StreamConnectRequest)(nil),                                                                   // 545: cln.StreamConnectRequest
	(*PeerConnectNotification)(nil),                                                                // 546: cln.PeerConnectNotification
	(*PeerConnectAddress)(nil),                                                                     // 547: cln.PeerConnectAddress
	(*StreamCustomMsgRequest)(nil),                                                                 // 548: cln.StreamCustomMsgRequest
	(*CustomMsgNotification)(nil),                                                                  // 549: cln.CustomMsgNotification
	(*Amount)(nil),                                                                                 // 550: cln.Amount
	(ChannelState)(0),                                                                              // 551: cln.ChannelState
	(AutocleanSubsystem)(0),                                                                        // 552: cln.AutocleanSubsystem
	(*Outpoint)(nil),                                                                               // 553: cln.Outpoint
	(*Feerate)(nil),                                                                                // 554: cln.Feerate
	(*AmountOrAny)(nil),                                                                            // 555: cln.AmountOrAny
	(*AmountOrAll)(nil),                                                                            // 556: cln.AmountOrAll
	(*RoutehintList)(nil),                                                                          // 557: cln.RoutehintList
	(*TlvStream)(nil),                                                                              // 558: cln.TlvStream
	(*OutputDesc)(nil),                                                                             // 559: cln.OutputDesc
	(ChannelSide)(0),                                                                               // 560: cln.ChannelSide
	(HtlcState)(0),                                                                                 // 561: cln.HtlcState
	(*DecodeRoutehintList)(nil),                                                                    // 562: cln.DecodeRoutehintList
	(ChannelTypeName)(0),                                                                           // 563: cln.ChannelTypeName
	(PluginSubcommand)(0),                                                                          // 564: cln.PluginSubcommand
}
var file_cln_node_proto_depIdxs = []int32{
	71,  // 0: cln.GetinfoResponse.our_features:type_name -> cln.GetinfoOur_features
	550, // 1: cln.GetinfoResponse.fees_collected_msat:type_name -> cln.Amount
	72,  // 2: cln.GetinfoResponse.address:type_name -> cln.GetinfoAddress
	73,  // 3: cln.GetinfoResponse.binding:type_name -> cln.GetinfoBinding
	0,   // 4: cln.GetinfoAddress.item_type:type_name -> cln.GetinfoAddress.GetinfoAddressType
	1,   // 5: cln.GetinfoBinding.item_type:type_name -> cln.GetinfoBinding.GetinfoBindingType
	2,   // 6: cln.ListpeersRequest.level:type_name -> cln.ListpeersRequest.ListpeersLevel
	76,  // 7: cln.ListpeersResponse.peers:type_name -> cln.ListpeersPeers
	77,  // 8: cln.ListpeersPeers.log:type_name -> cln.ListpeersPeersLog
	3,   // 9: cln.ListpeersPeersLog.item_type:type_name -> cln.ListpeersPeersLog.ListpeersPeersLogType
	80,  // 10: cln.ListfundsResponse.outputs:type_name -> cln.ListfundsOutputs
	81,  // 11: cln.ListfundsResponse.channels:type_name -> cln.ListfundsChannels
	550, // 12: cln.ListfundsOutputs.amount_msat:type_name -> cln.Amount
	4,   // 13: cln.ListfundsOutputs.status:type_name -> cln.ListfundsOutputs.ListfundsOutputsStatus
	550, // 14: cln.ListfundsChannels.our_amount_msat:type_name -> cln.Amount
	550, // 15: cln.ListfundsChannels.amount_msat:type_name -> cln.Amount
	551, // 16: cln.ListfundsChannels.state:type_name -> cln.ChannelState
	84,  // 17: cln.SendpayRequest.route:type_name -> cln.SendpayRoute
	550, // 18: cln.SendpayRequest.amount_msat:type_name -> cln.Amount
	5,   // 19: cln.SendpayResponse.status:type_name -> cln.SendpayResponse.SendpayStatus
	550, // 20: cln.SendpayResponse.amount_msat:type_name -> cln.Amount
	550, // 21: cln.SendpayResponse.amount_sent_msat:type_name -> cln.Amount
	550, // 22: cln.SendpayRoute.amount_msat:type_name -> cln.Amount
	87,  // 23: cln.ListchannelsResponse.channels:type_name -> cln.ListchannelsChannels
	550, // 24: cln.ListchannelsChannels.amount_msat:type_name -> cln.Amount
	550, // 25: cln.ListchannelsChannels.htlc_minimum_msat:type_name -> cln.Amount
	550, // 26: cln.ListchannelsChannels.htlc_maximum_msat:type_name -> cln.Amount
	550, // 27: cln.AddpsbtoutputRequest.satoshi:type_name -> cln.Amount
	552, // 28: cln.AutocleanonceRequest.subsystem:type_name -> cln.AutocleanSubsystem
	94,  // 29: cln.AutocleanonceResponse.autoclean:type_name -> cln.AutocleanonceAutoclean
	95,  // 30: cln.AutocleanonceAutoclean.succeededforwards:type_name -> cln.AutocleanonceAutocleanSucceededforwards
	96,  // 31: cln.AutocleanonceAutoclean.failedforwards:type_name -> cln.AutocleanonceAutocleanFailedforwards
	97,  // 32: cln.AutocleanonceAutoclean.succeededpays:type_name -> cln.AutocleanonceAutocleanSucceededpays
	98,  // 33: cln.AutocleanonceAutoclean.failedpays:type_name -> cln.AutocleanonceAutocleanFailedpays
	99,  // 34: cln.AutocleanonceAutoclean.paidinvoices:type_name -> cln.AutocleanonceAutocleanPaidinvoices
	100, // 35: cln.AutocleanonceAutoclean.expiredinvoices:type_name -> cln.AutocleanonceAutocleanExpiredinvoices
	552, // 36: cln.AutocleanstatusRequest.subsystem:type_name -> cln.AutocleanSubsystem
	103, // 37: cln.AutocleanstatusResponse.autoclean:type_name -> cln.AutocleanstatusAutoclean
	104, // 38: cln.AutocleanstatusAutoclean.succeededforwards:type_name -> cln.AutocleanstatusAutocleanSucceededforwards
	105, // 39: cln.AutocleanstatusAutoclean.failedforwards:type_name -> cln.AutocleanstatusAutocleanFailedforwards
	106, // 40: cln.AutocleanstatusAutoclean.succeededpays:type_name -> cln.AutocleanstatusAutocleanSucceededpays
	107, // 41: cln.AutocleanstatusAutoclean.failedpays:type_name -> cln.AutocleanstatusAutocleanFailedpays
	108, // 42: cln.AutocleanstatusAutoclean.paidinvoices:type_name -> cln.AutocleanstatusAutocleanPaidinvoices
	109, // 43: cln.AutocleanstatusAutoclean.expiredinvoices:type_name -> cln.AutocleanstatusAutocleanExpiredinvoices
	553, // 44: cln.CloseRequest.wrong_funding:type_name -> cln.Outpoint
	554, // 45: cln.CloseRequest.feerange:type_name -> cln.Feerate
	6,   // 46: cln.CloseResponse.item_type:type_name -> cln.CloseResponse.CloseType
	7,   // 47: cln.ConnectResponse.direction:type_name -> cln.ConnectResponse.ConnectDirection
	116, // 48: cln.ConnectResponse.address:type_name -> cln.ConnectAddress
	8,   // 49: cln.ConnectAddress.item_type:type_name -> cln.ConnectAddress.ConnectAddressType
	550, // 50: cln.CreateinvoiceResponse.amount_msat:type_name -> cln.Amount
	9,   // 51: cln.CreateinvoiceResponse.status:type_name -> cln.CreateinvoiceResponse.CreateinvoiceStatus
	550, // 52: cln.CreateinvoiceResponse.amount_received_msat:type_name -> cln.Amount
	119, // 53: cln.CreateinvoiceResponse.paid_outpoint:type_name -> cln.CreateinvoicePaid_outpoint
	10,  // 54: cln.DatastoreRequest.mode:type_name -> cln.DatastoreRequest.DatastoreMode
	124, // 55: cln.DatastoreusageResponse.datastoreusage:type_name -> cln.DatastoreusageDatastoreusage
	127, // 56: cln.CreateonionRequest.hops:type_name -> cln.CreateonionHops
	11,  // 57: cln.DelinvoiceRequest.status:type_name -> cln.DelinvoiceRequest.DelinvoiceStatus
	550, // 58: cln.DelinvoiceResponse.amount_msat:type_name -> cln.Amount
	12,  // 59: cln.DelinvoiceResponse.status:type_name -> cln.DelinvoiceResponse.DelinvoiceStatus
	550, // 60: cln.DelinvoiceResponse.amount_received_msat:type_name -> cln.Amount
	13,  // 61: cln.RecoverResponse.result:type_name -> cln.RecoverResponse.RecoverResult
	555, // 62: cln.InvoiceRequest.amount_msat:type_name -> cln.AmountOrAny
	550, // 63: cln.InvoicerequestRequest.amount:type_name -> cln.Amount
	152, // 64: cln.ListinvoicerequestsResponse.invoicerequests:type_name -> cln.ListinvoicerequestsInvoicerequests
	155, // 65: cln.ListdatastoreResponse.datastore:type_name -> cln.ListdatastoreDatastore
	14,  // 66: cln.ListinvoicesRequest.index:type_name -> cln.ListinvoicesRequest.ListinvoicesIndex
	158, // 67: cln.ListinvoicesResponse.invoices:type_name -> cln.ListinvoicesInvoices
	15,  // 68: cln.ListinvoicesInvoices.status:type_name -> cln.ListinvoicesInvoices.ListinvoicesInvoicesStatus
	550, // 69: cln.ListinvoicesInvoices.amount_msat:type_name -> cln.Amount
	550, // 70: cln.ListinvoicesInvoices.amount_received_msat:type_name -> cln.Amount
	159, // 71: cln.ListinvoicesInvoices.paid_outpoint:type_name -> cln.ListinvoicesInvoicesPaid_outpoint
	162, // 72: cln.SendonionRequest.first_hop:type_name -> cln.SendonionFirst_hop
	550, // 73: cln.SendonionRequest.amount_msat:type_name -> cln.Amount
	16,  // 74: cln.SendonionResponse.status:type_name -> cln.SendonionResponse.SendonionStatus
	550, // 75: cln.SendonionResponse.amount_msat:type_name -> cln.Amount
	550, // 76: cln.SendonionResponse.amount_sent_msat:type_name -> cln.Amount
	550, // 77: cln.SendonionFirst_hop.amount_msat:type_name -> cln.Amount
	17,  // 78: cln.ListsendpaysRequest.status:type_name -> cln.ListsendpaysRequest.ListsendpaysStatus
	18,  // 79: cln.ListsendpaysRequest.index:type_name -> cln.ListsendpaysRequest.ListsendpaysIndex
	165, // 80: cln.ListsendpaysResponse.payments:type_name -> cln.ListsendpaysPayments
	19,  // 81: cln.ListsendpaysPayments.status:type_name -> cln.ListsendpaysPayments.ListsendpaysPaymentsStatus
	550, // 82: cln.ListsendpaysPayments.amount_msat:type_name -> cln.Amount
	550, // 83: cln.ListsendpaysPayments.amount_sent_msat:type_name -> cln.Amount
	168, // 84: cln.ListtransactionsResponse.transactions:type_name -> cln.ListtransactionsTransactions
	169, // 85: cln.ListtransactionsTransactions.inputs:type_name -> cln.ListtransactionsTransactionsInputs
	170, // 86: cln.ListtransactionsTransactions.outputs:type_name -> cln.ListtransactionsTransactionsOutputs
	550, // 87: cln.ListtransactionsTransactionsOutputs.amount_msat:type_name -> cln.Amount
	550, // 88: cln.PayRequest.exemptfee:type_name -> cln.Amount
	550, // 89: cln.PayRequest.maxfee:type_name -> cln.Amount
	550, // 90: cln.PayRequest.amount_msat:type_name -> cln.Amount
	550, // 91: cln.PayRequest.partial_msat:type_name -> cln.Amount
	550, // 92: cln.PayResponse.amount_msat:type_name -> cln.Amount
	550, // 93: cln.PayResponse.amount_sent_msat:type_name -> cln.Amount
	20,  // 94: cln.PayResponse.status:type_name -> cln.PayResponse.PayStatus
	177, // 95: cln.ListnodesResponse.nodes:type_name -> cln.ListnodesNodes
	179, // 96: cln.ListnodesNodes.addresses:type_name -> cln.ListnodesNodesAddresses
	178, // 97: cln.ListnodesNodes.option_will_fund:type_name -> cln.ListnodesNodesOption_will_fund
	550, // 98: cln.ListnodesNodesOption_will_fund.lease_fee_base_msat:type_name -> cln.Amount
	550, // 99: cln.ListnodesNodesOption_will_fund.channel_fee_max_base_msat:type_name -> cln.Amount
	21,  // 100: cln.ListnodesNodesAddresses.item_type:type_name -> cln.ListnodesNodesAddresses.ListnodesNodesAddressesType
	22,  // 101: cln.WaitanyinvoiceResponse.status:type_name -> cln.WaitanyinvoiceResponse.WaitanyinvoiceStatus
	550, // 102: cln.WaitanyinvoiceResponse.amount_msat:type_name -> cln.Amount
	550, // 103: cln.WaitanyinvoiceResponse.amount_received_msat:type_name -> cln.Amount
	182, // 104: cln.WaitanyinvoiceResponse.paid_outpoint:type_name -> cln.WaitanyinvoicePaid_outpoint
	23,  // 105: cln.WaitinvoiceResponse.status:type_name -> cln.WaitinvoiceResponse.WaitinvoiceStatus
	550, // 106: cln.WaitinvoiceResponse.amount_msat:type_name -> cln.Amount
	550, // 107: cln.WaitinvoiceResponse.amount_received_msat:type_name -> cln.Amount
	185, // 108: cln.WaitinvoiceResponse.paid_outpoint:type_name -> cln.WaitinvoicePaid_outpoint
	24,  // 109: cln.WaitsendpayResponse.status:type_name -> cln.WaitsendpayResponse.WaitsendpayStatus
	550, // 110: cln.WaitsendpayResponse.amount_msat:type_name -> cln.Amount
	550, // 111: cln.WaitsendpayResponse.amount_sent_msat:type_name -> cln.Amount
	25,  // 112: cln.NewaddrRequest.addresstype:type_name -> cln.NewaddrRequest.NewaddrAddresstype
	556, // 113: cln.WithdrawRequest.satoshi:type_name -> cln.AmountOrAll
	553, // 114: cln.WithdrawRequest.utxos:type_name -> cln.Outpoint
	554, // 115: cln.WithdrawRequest.feerate:type_name -> cln.Feerate
	550, // 116: cln.KeysendRequest.exemptfee:type_name -> cln.Amount
	557, // 117: cln.KeysendRequest.routehints:type_name -> cln.RoutehintList
	558, // 118: cln.KeysendRequest.extratlvs:type_name -> cln.TlvStream
	550, // 119: cln.KeysendRequest.amount_msat:type_name -> cln.Amount
	550, // 120: cln.KeysendRequest.maxfee:type_name -> cln.Amount
	550, // 121: cln.KeysendResponse.amount_msat:type_name -> cln.Amount
	550, // 122: cln.KeysendResponse.amount_sent_msat:type_name -> cln.Amount
	26,  // 123: cln.KeysendResponse.status:type_name -> cln.KeysendResponse.KeysendStatus
	556, // 124: cln.FundpsbtRequest.satoshi:type_name -> cln.AmountOrAll
	554, // 125: cln.FundpsbtRequest.feerate:type_name -> cln.Feerate
	550, // 126: cln.FundpsbtResponse.excess_msat:type_name -> cln.Amount
	196, // 127: cln.FundpsbtResponse.reservations:type_name -> cln.FundpsbtReservations
	556, // 128: cln.UtxopsbtRequest.satoshi:type_name -> cln.AmountOrAll
	554, // 129: cln.UtxopsbtRequest.feerate:type_name -> cln.Feerate
	553, // 130: cln.UtxopsbtRequest.utxos:type_name -> cln.Outpoint
	550, // 131: cln.UtxopsbtResponse.excess_msat:type_name -> cln.Amount
	203, // 132: cln.UtxopsbtResponse.reservations:type_name -> cln.UtxopsbtReservations
	554, // 133: cln.TxprepareRequest.feerate:type_name -> cln.Feerate
	553, // 134: cln.TxprepareRequest.utxos:type_name -> cln.Outpoint
	559, // 135: cln.TxprepareRequest.outputs:type_name -> cln.OutputDesc
	212, // 136: cln.ListpeerchannelsResponse.channels:type_name -> cln.ListpeerchannelsChannels
	27,  // 137: cln.ListpeerchannelsChannels.state:type_name -> cln.ListpeerchannelsChannels.ListpeerchannelsChannelsState
	216, // 138: cln.ListpeerchannelsChannels.feerate:type_name -> cln.ListpeerchannelsChannelsFeerate
	217, // 139: cln.ListpeerchannelsChannels.inflight:type_name -> cln.ListpeerchannelsChannelsInflight
	560, // 140: cln.ListpeerchannelsChannels.opener:type_name -> cln.ChannelSide
	560, // 141: cln.ListpeerchannelsChannels.closer:type_name -> cln.ChannelSide
	218, // 142: cln.ListpeerchannelsChannels.funding:type_name -> cln.ListpeerchannelsChannelsFunding
	550, // 143: cln.ListpeerchannelsChannels.to_us_msat:type_name -> cln.Amount
	550, // 144: cln.ListpeerchannelsChannels.min_to_us_msat:type_name -> cln.Amount
	550, // 145: cln.ListpeerchannelsChannels.max_to_us_msat:type_name -> cln.Amount
	550, // 146: cln.ListpeerchannelsChannels.total_msat:type_name -> cln.Amount
	550, // 147: cln.ListpeerchannelsChannels.fee_base_msat:type_name -> cln.Amount
	550, // 148: cln.ListpeerchannelsChannels.dust_limit_msat:type_name -> cln.Amount
	550, // 149: cln.ListpeerchannelsChannels.max_total_htlc_in_msat:type_name -> cln.Amount
	550, // 150: cln.ListpeerchannelsChannels.their_reserve_msat:type_name -> cln.Amount
	550, // 151: cln.ListpeerchannelsChannels.our_reserve_msat:type_name -> cln.Amount
	550, // 152: cln.ListpeerchannelsChannels.spendable_msat:type_name -> cln.Amount
	550, // 153: cln.ListpeerchannelsChannels.receivable_msat:type_name -> cln.Amount
	550, // 154: cln.ListpeerchannelsChannels.minimum_htlc_in_msat:type_name -> cln.Amount
	550, // 155: cln.ListpeerchannelsChannels.minimum_htlc_out_msat:type_name -> cln.Amount
	550, // 156: cln.ListpeerchannelsChannels.maximum_htlc_out_msat:type_name -> cln.Amount
	219, // 157: cln.ListpeerchannelsChannels.alias:type_name -> cln.ListpeerchannelsChannelsAlias
	550, // 158: cln.ListpeerchannelsChannels.in_offered_msat:type_name -> cln.Amount
	550, // 159: cln.ListpeerchannelsChannels.in_fulfilled_msat:type_name -> cln.Amount
	550, // 160: cln.ListpeerchannelsChannels.out_offered_msat:type_name -> cln.Amount
	550, // 161: cln.ListpeerchannelsChannels.out_fulfilled_msat:type_name -> cln.Amount
	220, // 162: cln.ListpeerchannelsChannels.htlcs:type_name -> cln.ListpeerchannelsChannelsHtlcs
	213, // 163: cln.ListpeerchannelsChannels.updates:type_name -> cln.ListpeerchannelsChannelsUpdates
	550, // 164: cln.ListpeerchannelsChannels.last_tx_fee_msat:type_name -> cln.Amount
	214, // 165: cln.ListpeerchannelsChannelsUpdates.local:type_name -> cln.ListpeerchannelsChannelsUpdatesLocal
	215, // 166: cln.ListpeerchannelsChannelsUpdates.remote:type_name -> cln.ListpeerchannelsChannelsUpdatesRemote
	550, // 167: cln.ListpeerchannelsChannelsUpdatesLocal.htlc_minimum_msat:type_name -> cln.Amount
	550, // 168: cln.ListpeerchannelsChannelsUpdatesLocal.htlc_maximum_msat:type_name -> cln.Amount
	550, // 169: cln.ListpeerchannelsChannelsUpdatesLocal.fee_base_msat:type_name -> cln.Amount
	550, // 170: cln.ListpeerchannelsChannelsUpdatesRemote.htlc_minimum_msat:type_name -> cln.Amount
	550, // 171: cln.ListpeerchannelsChannelsUpdatesRemote.htlc_maximum_msat:type_name -> cln.Amount
	550, // 172: cln.ListpeerchannelsChannelsUpdatesRemote.fee_base_msat:type_name -> cln.Amount
	550, // 173: cln.ListpeerchannelsChannelsInflight.total_funding_msat:type_name -> cln.Amount
	550, // 174: cln.ListpeerchannelsChannelsInflight.our_funding_msat:type_name -> cln.Amount
	550, // 175: cln.ListpeerchannelsChannelsFunding.pushed_msat:type_name -> cln.Amount
	550, // 176: cln.ListpeerchannelsChannelsFunding.local_funds_msat:type_name -> cln.Amount
	550, // 177: cln.ListpeerchannelsChannelsFunding.remote_funds_msat:type_name -> cln.Amount
	550, // 178: cln.ListpeerchannelsChannelsFunding.fee_paid_msat:type_name -> cln.Amount
	550, // 179: cln.ListpeerchannelsChannelsFunding.fee_rcvd_msat:type_name -> cln.Amount
	28,  // 180: cln.ListpeerchannelsChannelsHtlcs.direction:type_name -> cln.ListpeerchannelsChannelsHtlcs.ListpeerchannelsChannelsHtlcsDirection
	550, // 181: cln.ListpeerchannelsChannelsHtlcs.amount_msat:type_name -> cln.Amount
	561, // 182: cln.ListpeerchannelsChannelsHtlcs.state:type_name -> cln.HtlcState
	223, // 183: cln.ListclosedchannelsResponse.closedchannels:type_name -> cln.ListclosedchannelsClosedchannels
	224, // 184: cln.ListclosedchannelsClosedchannels.alias:type_name -> cln.ListclosedchannelsClosedchannelsAlias
	560, // 185: cln.ListclosedchannelsClosedchannels.opener:type_name -> cln.ChannelSide
	560, // 186: cln.ListclosedchannelsClosedchannels.closer:type_name -> cln.ChannelSide
	550, // 187: cln.ListclosedchannelsClosedchannels.funding_fee_paid_msat:type_name -> cln.Amount
	550, // 188: cln.ListclosedchannelsClosedchannels.funding_fee_rcvd_msat:type_name -> cln.Amount
	550, // 189: cln.ListclosedchannelsClosedchannels.funding_pushed_msat:type_name -> cln.Amount
	550, // 190: cln.ListclosedchannelsClosedchannels.total_msat:type_name -> cln.Amount
	550, // 191: cln.ListclosedchannelsClosedchannels.final_to_us_msat:type_name -> cln.Amount
	550, // 192: cln.ListclosedchannelsClosedchannels.min_to_us_msat:type_name -> cln.Amount
	550, // 193: cln.ListclosedchannelsClosedchannels.max_to_us_msat:type_name -> cln.Amount
	550, // 194: cln.ListclosedchannelsClosedchannels.last_commitment_fee_msat:type_name -> cln.Amount
	29,  // 195: cln.ListclosedchannelsClosedchannels.close_cause:type_name -> cln.ListclosedchannelsClosedchannels.ListclosedchannelsClosedchannelsClose_cause
	550, // 196: cln.DecodepayResponse.amount_msat:type_name -> cln.Amount
	227, // 197: cln.DecodepayResponse.fallbacks:type_name -> cln.DecodepayFallbacks
	228, // 198: cln.DecodepayResponse.extra:type_name -> cln.DecodepayExtra
	562, // 199: cln.DecodepayResponse.routes:type_name -> cln.DecodeRoutehintList
	30,  // 200: cln.DecodepayFallbacks.item_type:type_name -> cln.DecodepayFallbacks.DecodepayFallbacksType
	31,  // 201: cln.DecodeResponse.item_type:type_name -> cln.DecodeResponse.DecodeType
	550, // 202: cln.DecodeResponse.offer_amount_msat:type_name -> cln.Amount
	231, // 203: cln.DecodeResponse.offer_paths:type_name -> cln.DecodeOffer_paths
	550, // 204: cln.DecodeResponse.invreq_amount_msat:type_name -> cln.Amount
	550, // 205: cln.DecodeResponse.invoice_amount_msat:type_name -> cln.Amount
	236, // 206: cln.DecodeResponse.invoice_fallbacks:type_name -> cln.DecodeInvoice_fallbacks
	237, // 207: cln.DecodeResponse.fallbacks:type_name -> cln.DecodeFallbacks
	238, // 208: cln.DecodeResponse.extra:type_name -> cln.DecodeExtra
	239, // 209: cln.DecodeResponse.restrictions:type_name -> cln.DecodeRestrictions
	550, // 210: cln.DecodeResponse.amount_msat:type_name -> cln.Amount
	562, // 211: cln.DecodeResponse.routes:type_name -> cln.DecodeRoutehintList
	233, // 212: cln.DecodeResponse.invreq_paths:type_name -> cln.DecodeInvreq_paths
	234, // 213: cln.DecodeInvreq_paths.path:type_name -> cln.DecodeInvreq_pathsPath
	32,  // 214: cln.DecodeFallbacks.item_type:type_name -> cln.DecodeFallbacks.DecodeFallbacksType
	33,  // 215: cln.DelpayRequest.status:type_name -> cln.DelpayRequest.DelpayStatus
	242, // 216: cln.DelpayResponse.payments:type_name -> cln.DelpayPayments
	34,  // 217: cln.DelpayPayments.status:type_name -> cln.DelpayPayments.DelpayPaymentsStatus
	550, // 218: cln.DelpayPayments.amount_sent_msat:type_name -> cln.Amount
	550, // 219: cln.DelpayPayments.amount_msat:type_name -> cln.Amount
	35,  // 220: cln.DelforwardRequest.status:type_name -> cln.DelforwardRequest.DelforwardStatus
	36,  // 221: cln.FeeratesRequest.style:type_name -> cln.FeeratesRequest.FeeratesStyle
	253, // 222: cln.FeeratesResponse.perkb:type_name -> cln.FeeratesPerkb
	255, // 223: cln.FeeratesResponse.perkw:type_name -> cln.FeeratesPerkw
	257, // 224: cln.FeeratesResponse.onchain_fee_estimates:type_name -> cln.FeeratesOnchain_fee_estimates
	254, // 225: cln.FeeratesPerkb.estimates:type_name -> cln.FeeratesPerkbEstimates
	256, // 226: cln.FeeratesPerkw.estimates:type_name -> cln.FeeratesPerkwEstimates
	550, // 227: cln.FetchinvoiceRequest.amount_msat:type_name -> cln.Amount
	260, // 228: cln.FetchinvoiceResponse.changes:type_name -> cln.FetchinvoiceChanges
	261, // 229: cln.FetchinvoiceResponse.next_period:type_name -> cln.FetchinvoiceNext_period
	550, // 230: cln.FetchinvoiceChanges.amount_msat:type_name -> cln.Amount
	556, // 231: cln.FundchannelRequest.amount:type_name -> cln.AmountOrAll
	554, // 232: cln.FundchannelRequest.feerate:type_name -> cln.Feerate
	550, // 233: cln.FundchannelRequest.push_msat:type_name -> cln.Amount
	550, // 234: cln.FundchannelRequest.request_amt:type_name -> cln.Amount
	553, // 235: cln.FundchannelRequest.utxos:type_name -> cln.Outpoint
	550, // 236: cln.FundchannelRequest.reserve:type_name -> cln.Amount
	268, // 237: cln.FundchannelResponse.channel_type:type_name -> cln.FundchannelChannel_type
	563, // 238: cln.FundchannelChannel_type.names:type_name -> cln.ChannelTypeName
	550, // 239: cln.Fundchannel_startRequest.amount:type_name -> cln.Amount
	554, // 240: cln.Fundchannel_startRequest.feerate:type_name -> cln.Feerate
	550, // 241: cln.Fundchannel_startRequest.push_msat:type_name -> cln.Amount
	550, // 242: cln.Fundchannel_startRequest.reserve:type_name -> cln.Amount
	271, // 243: cln.Fundchannel_startResponse.channel_type:type_name -> cln.Fundchannel_startChannel_type
	563, // 244: cln.Fundchannel_startChannel_type.names:type_name -> cln.ChannelTypeName
	37,  // 245: cln.GetlogRequest.level:type_name -> cln.GetlogRequest.GetlogLevel
	274, // 246: cln.GetlogResponse.log:type_name -> cln.GetlogLog
	38,  // 247: cln.GetlogLog.item_type:type_name -> cln.GetlogLog.GetlogLogType
	39,  // 248: cln.FunderupdateRequest.policy:type_name -> cln.FunderupdateRequest.FunderupdatePolicy
	550, // 249: cln.FunderupdateRequest.policy_mod:type_name -> cln.Amount
	550, // 250: cln.FunderupdateRequest.min_their_funding_msat:type_name -> cln.Amount
	550, // 251: cln.FunderupdateRequest.max_their_funding_msat:type_name -> cln.Amount
	550, // 252: cln.FunderupdateRequest.per_channel_min_msat:type_name -> cln.Amount
	550, // 253: cln.FunderupdateRequest.per_channel_max_msat:type_name -> cln.Amount
	550, // 254: cln.FunderupdateRequest.reserve_tank_msat:type_name -> cln.Amount
	550, // 255: cln.FunderupdateRequest.lease_fee_base_msat:type_name -> cln.Amount
	550, // 256: cln.FunderupdateRequest.channel_fee_max_base_msat:type_name -> cln.Amount
	40,  // 257: cln.FunderupdateResponse.policy:type_name -> cln.FunderupdateResponse.FunderupdatePolicy
	550, // 258: cln.FunderupdateResponse.min_their_funding_msat:type_name -> cln.Amount
	550, // 259: cln.FunderupdateResponse.max_their_funding_msat:type_name -> cln.Amount
	550, // 260: cln.FunderupdateResponse.per_channel_min_msat:type_name -> cln.Amount
	550, // 261: cln.FunderupdateResponse.per_channel_max_msat:type_name -> cln.Amount
	550, // 262: cln.FunderupdateResponse.reserve_tank_msat:type_name -> cln.Amount
	550, // 263: cln.FunderupdateResponse.lease_fee_base_msat:type_name -> cln.Amount
	550, // 264: cln.FunderupdateResponse.channel_fee_max_base_msat:type_name -> cln.Amount
	550, // 265: cln.GetrouteRequest.amount_msat:type_name -> cln.Amount
	279, // 266: cln.GetrouteResponse.route:type_name -> cln.GetrouteRoute
	550, // 267: cln.GetrouteRoute.amount_msat:type_name -> cln.Amount
	41,  // 268: cln.GetrouteRoute.style:type_name -> cln.GetrouteRoute.GetrouteRouteStyle
	282, // 269: cln.ListaddressesResponse.addresses:type_name -> cln.ListaddressesAddresses
	42,  // 270: cln.ListforwardsRequest.status:type_name -> cln.ListforwardsRequest.ListforwardsStatus
	43,  // 271: cln.ListforwardsRequest.index:type_name -> cln.ListforwardsRequest.ListforwardsIndex
	285, // 272: cln.ListforwardsResponse.forwards:type_name -> cln.ListforwardsForwards
	550, // 273: cln.ListforwardsForwards.in_msat:type_name -> cln.Amount
	44,  // 274: cln.ListforwardsForwards.status:type_name -> cln.ListforwardsForwards.ListforwardsForwardsStatus
	550, // 275: cln.ListforwardsForwards.fee_msat:type_name -> cln.Amount
	550, // 276: cln.ListforwardsForwards.out_msat:type_name -> cln.Amount
	45,  // 277: cln.ListforwardsForwards.style:type_name -> cln.ListforwardsForwards.ListforwardsForwardsStyle
	288, // 278: cln.ListoffersResponse.offers:type_name -> cln.ListoffersOffers
	46,  // 279: cln.ListpaysRequest.status:type_name -> cln.ListpaysRequest.ListpaysStatus
	47,  // 280: cln.ListpaysRequest.index:type_name -> cln.ListpaysRequest.ListpaysIndex
	291, // 281: cln.ListpaysResponse.pays:type_name -> cln.ListpaysPays
	48,  // 282: cln.ListpaysPays.status:type_name -> cln.ListpaysPays.ListpaysPaysStatus
	550, // 283: cln.ListpaysPays.amount_msat:type_name -> cln.Amount
	550, // 284: cln.ListpaysPays.amount_sent_msat:type_name -> cln.Amount
	294, // 285: cln.ListhtlcsResponse.htlcs:type_name -> cln.ListhtlcsHtlcs
	550, // 286: cln.ListhtlcsHtlcs.amount_msat:type_name -> cln.Amount
	49,  // 287: cln.ListhtlcsHtlcs.direction:type_name -> cln.ListhtlcsHtlcs.ListhtlcsHtlcsDirection
	561, // 288: cln.ListhtlcsHtlcs.state:type_name -> cln.HtlcState
	297, // 289: cln.MultifundchannelRequest.destinations:type_name -> cln.MultifundchannelDestinations
	554, // 290: cln.MultifundchannelRequest.feerate:type_name -> cln.Feerate
	553, // 291: cln.MultifundchannelRequest.utxos:type_name -> cln.Outpoint
	554, // 292: cln.MultifundchannelRequest.commitment_feerate:type_name -> cln.Feerate
	298, // 293: cln.MultifundchannelResponse.channel_ids:type_name -> cln.MultifundchannelChannel_ids
	300, // 294: cln.MultifundchannelResponse.failed:type_name -> cln.MultifundchannelFailed
	556, // 295: cln.MultifundchannelDestinations.amount:type_name -> cln.AmountOrAll
	550, // 296: cln.MultifundchannelDestinations.push_msat:type_name -> cln.Amount
	550, // 297: cln.MultifundchannelDestinations.request_amt:type_name -> cln.Amount
	550, // 298: cln.MultifundchannelDestinations.reserve:type_name -> cln.Amount
	299, // 299: cln.MultifundchannelChannel_ids.channel_type:type_name -> cln.MultifundchannelChannel_idsChannel_type
	563, // 300: cln.MultifundchannelChannel_idsChannel_type.names:type_name -> cln.ChannelTypeName
	50,  // 301: cln.MultifundchannelFailed.method:type_name -> cln.MultifundchannelFailed.MultifundchannelFailedMethod
	301, // 302: cln.MultifundchannelFailed.error:type_name -> cln.MultifundchannelFailedError
	559, // 303: cln.MultiwithdrawRequest.outputs:type_name -> cln.OutputDesc
	554, // 304: cln.MultiwithdrawRequest.feerate:type_name -> cln.Feerate
	553, // 305: cln.MultiwithdrawRequest.utxos:type_name -> cln.Outpoint
	554, // 306: cln.Openchannel_bumpRequest.funding_feerate:type_name -> cln.Feerate
	550, // 307: cln.Openchannel_bumpRequest.amount:type_name -> cln.Amount
	310, // 308: cln.Openchannel_bumpResponse.channel_type:type_name -> cln.Openchannel_bumpChannel_type
	563, // 309: cln.Openchannel_bumpChannel_type.names:type_name -> cln.ChannelTypeName
	554, // 310: cln.Openchannel_initRequest.commitment_feerate:type_name -> cln.Feerate
	554, // 311: cln.Openchannel_initRequest.funding_feerate:type_name -> cln.Feerate
	550, // 312: cln.Openchannel_initRequest.request_amt:type_name -> cln.Amount
	550, // 313: cln.Openchannel_initRequest.amount:type_name -> cln.Amount
	313, // 314: cln.Openchannel_initResponse.channel_type:type_name -> cln.Openchannel_initChannel_type
	563, // 315: cln.Openchannel_initChannel_type.names:type_name -> cln.ChannelTypeName
	318, // 316: cln.Openchannel_updateResponse.channel_type:type_name -> cln.Openchannel_updateChannel_type
	563, // 317: cln.Openchannel_updateChannel_type.names:type_name -> cln.ChannelTypeName
	564, // 318: cln.PluginRequest.subcommand:type_name -> cln.PluginSubcommand
	564, // 319: cln.PluginResponse.command:type_name -> cln.PluginSubcommand
	323, // 320: cln.PluginResponse.plugins:type_name -> cln.PluginPlugins
	326, // 321: cln.RenepaystatusResponse.paystatus:type_name -> cln.RenepaystatusPaystatus
	550, // 322: cln.RenepaystatusPaystatus.amount_msat:type_name -> cln.Amount
	550, // 323: cln.RenepaystatusPaystatus.amount_sent_msat:type_name -> cln.Amount
	51,  // 324: cln.RenepaystatusPaystatus.status:type_name -> cln.RenepaystatusPaystatus.RenepaystatusPaystatusStatus
	550, // 325: cln.RenepayRequest.amount_msat:type_name -> cln.Amount
	550, // 326: cln.RenepayRequest.maxfee:type_name -> cln.Amount
	550, // 327: cln.RenepayResponse.amount_msat:type_name -> cln.Amount
	550, // 328: cln.RenepayResponse.amount_sent_msat:type_name -> cln.Amount
	52,  // 329: cln.RenepayResponse.status:type_name -> cln.RenepayResponse.RenepayStatus
	331, // 330: cln.ReserveinputsResponse.reservations:type_name -> cln.ReserveinputsReservations
	550, // 331: cln.SendinvoiceRequest.amount_msat:type_name -> cln.Amount
	53,  // 332: cln.SendinvoiceResponse.status:type_name -> cln.SendinvoiceResponse.SendinvoiceStatus
	550, // 333: cln.SendinvoiceResponse.amount_msat:type_name -> cln.Amount
	550, // 334: cln.SendinvoiceResponse.amount_received_msat:type_name -> cln.Amount
	550, // 335: cln.SetchannelRequest.feebase:type_name -> cln.Amount
	550, // 336: cln.SetchannelRequest.htlcmin:type_name -> cln.Amount
	550, // 337: cln.SetchannelRequest.htlcmax:type_name -> cln.Amount
	338, // 338: cln.SetchannelResponse.channels:type_name -> cln.SetchannelChannels
	550, // 339: cln.SetchannelChannels.fee_base_msat:type_name -> cln.Amount
	550, // 340: cln.SetchannelChannels.minimum_htlc_out_msat:type_name -> cln.Amount
	550, // 341: cln.SetchannelChannels.maximum_htlc_out_msat:type_name -> cln.Amount
	341, // 342: cln.SetconfigResponse.config:type_name -> cln.SetconfigConfig
	550, // 343: cln.SetconfigConfig.value_msat:type_name -> cln.Amount
	358, // 344: cln.UnreserveinputsResponse.reservations:type_name -> cln.UnreserveinputsReservations
	554, // 345: cln.UpgradewalletRequest.feerate:type_name -> cln.Feerate
	54,  // 346: cln.WaitRequest.subsystem:type_name -> cln.WaitRequest.WaitSubsystem
	55,  // 347: cln.WaitRequest.indexname:type_name -> cln.WaitRequest.WaitIndexname
	56,  // 348: cln.WaitResponse.subsystem:type_name -> cln.WaitResponse.WaitSubsystem
	365, // 349: cln.WaitResponse.details:type_name -> cln.WaitDetails
	57,  // 350: cln.WaitDetails.status:type_name -> cln.WaitDetails.WaitDetailsStatus
	550, // 351: cln.WaitDetails.in_msat:type_name -> cln.Amount
	368, // 352: cln.ListconfigsResponse.configs:type_name -> cln.ListconfigsConfigs
	440, // 353: cln.ListconfigsResponse.plugins:type_name -> cln.ListconfigsPlugins
	442, // 354: cln.ListconfigsResponse.important_plugins:type_name -> cln.ListconfigsImportantplugins
	550, // 355: cln.ListconfigsResponse.htlc_minimum_msat:type_name -> cln.Amount
	550, // 356: cln.ListconfigsResponse.htlc_maximum_msat:type_name -> cln.Amount
	550, // 357: cln.ListconfigsResponse.max_dust_htlc_exposure_msat:type_name -> cln.Amount
	550, // 358: cln.ListconfigsResponse.min_emergency_msat:type_name -> cln.Amount
	369, // 359: cln.ListconfigsConfigs.conf:type_name -> cln.ListconfigsConfigsConf
	370, // 360: cln.ListconfigsConfigs.developer:type_name -> cln.ListconfigsConfigsDeveloper
	371, // 361: cln.ListconfigsConfigs.clear_plugins:type_name -> cln.ListconfigsConfigsClearplugins
	372, // 362: cln.ListconfigsConfigs.disable_mpp:type_name -> cln.ListconfigsConfigsDisablempp
	373, // 363: cln.ListconfigsConfigs.mainnet:type_name -> cln.ListconfigsConfigsMainnet
	374, // 364: cln.ListconfigsConfigs.regtest:type_name -> cln.ListconfigsConfigsRegtest
	375, // 365: cln.ListconfigsConfigs.signet:type_name -> cln.ListconfigsConfigsSignet
	376, // 366: cln.ListconfigsConfigs.testnet:type_name -> cln.ListconfigsConfigsTestnet
	377, // 367: cln.ListconfigsConfigs.important_plugin:type_name -> cln.ListconfigsConfigsImportantplugin
	378, // 368: cln.ListconfigsConfigs.plugin:type_name -> cln.ListconfigsConfigsPlugin
	379, // 369: cln.ListconfigsConfigs.plugin_dir:type_name -> cln.ListconfigsConfigsPlugindir
	380, // 370: cln.ListconfigsConfigs.lightning_dir:type_name -> cln.ListconfigsConfigsLightningdir
	381, // 371: cln.ListconfigsConfigs.network:type_name -> cln.ListconfigsConfigsNetwork
	382, // 372: cln.ListconfigsConfigs.allow_deprecated_apis:type_name -> cln.ListconfigsConfigsAllowdeprecatedapis
	383, // 373: cln.ListconfigsConfigs.rpc_file:type_name -> cln.ListconfigsConfigsRpcfile
	384, // 374: cln.ListconfigsConfigs.disable_plugin:type_name -> cln.ListconfigsConfigsDisableplugin
	385, // 375: cln.ListconfigsConfigs.always_use_proxy:type_name -> cln.ListconfigsConfigsAlwaysuseproxy
	386, // 376: cln.ListconfigsConfigs.daemon:type_name -> cln.ListconfigsConfigsDaemon
	387, // 377: cln.ListconfigsConfigs.wallet:type_name -> cln.ListconfigsConfigsWallet
	388, // 378: cln.ListconfigsConfigs.large_channels:type_name -> cln.ListconfigsConfigsLargechannels
	389, // 379: cln.ListconfigsConfigs.experimental_dual_fund:type_name -> cln.ListconfigsConfigsExperimentaldualfund
	390, // 380: cln.ListconfigsConfigs.experimental_splicing:type_name -> cln.ListconfigsConfigsExperimentalsplicing
	391, // 381: cln.ListconfigsConfigs.experimental_onion_messages:type_name -> cln.ListconfigsConfigsExperimentalonionmessages
	392, // 382: cln.ListconfigsConfigs.experimental_offers:type_name -> cln.ListconfigsConfigsExperimentaloffers
	393, // 383: cln.ListconfigsConfigs.experimental_shutdown_wrong_funding:type_name -> cln.ListconfigsConfigsExperimentalshutdownwrongfunding
	394, // 384: cln.ListconfigsConfigs.experimental_peer_storage:type_name -> cln.ListconfigsConfigsExperimentalpeerstorage
	395, // 385: cln.ListconfigsConfigs.experimental_anchors:type_name -> cln.ListconfigsConfigsExperimentalanchors
	396, // 386: cln.ListconfigsConfigs.database_upgrade:type_name -> cln.ListconfigsConfigsDatabaseupgrade
	397, // 387: cln.ListconfigsConfigs.rgb:type_name -> cln.ListconfigsConfigsRgb
	398, // 388: cln.ListconfigsConfigs.alias:type_name -> cln.ListconfigsConfigsAlias
	399, // 389: cln.ListconfigsConfigs.pid_file:type_name -> cln.ListconfigsConfigsPidfile
	400, // 390: cln.ListconfigsConfigs.ignore_fee_limits:type_name -> cln.ListconfigsConfigsIgnorefeelimits
	401, // 391: cln.ListconfigsConfigs.watchtime_blocks:type_name -> cln.ListconfigsConfigsWatchtimeblocks
	402, // 392: cln.ListconfigsConfigs.max_locktime_blocks:type_name -> cln.ListconfigsConfigsMaxlocktimeblocks
	403, // 393: cln.ListconfigsConfigs.funding_confirms:type_name -> cln.ListconfigsConfigsFundingconfirms
	404, // 394: cln.ListconfigsConfigs.cltv_delta:type_name -> cln.ListconfigsConfigsCltvdelta
	405, // 395: cln.ListconfigsConfigs.cltv_final:type_name -> cln.ListconfigsConfigsCltvfinal
	406, // 396: cln.ListconfigsConfigs.commit_time:type_name -> cln.ListconfigsConfigsCommittime
	407, // 397: cln.ListconfigsConfigs.fee_base:type_name -> cln.ListconfigsConfigsFeebase
	408, // 398: cln.ListconfigsConfigs.rescan:type_name -> cln.ListconfigsConfigsRescan
	409, // 399: cln.ListconfigsConfigs.fee_per_satoshi:type_name -> cln.ListconfigsConfigsFeepersatoshi
	410, // 400: cln.ListconfigsConfigs.max_concurrent_htlcs:type_name -> cln.ListconfigsConfigsMaxconcurrenthtlcs
	411, // 401: cln.ListconfigsConfigs.htlc_minimum_msat:type_name -> cln.ListconfigsConfigsHtlcminimummsat
	412, // 402: cln.ListconfigsConfigs.htlc_maximum_msat:type_name -> cln.ListconfigsConfigsHtlcmaximummsat
	413, // 403: cln.ListconfigsConfigs.max_dust_htlc_exposure_msat:type_name -> cln.ListconfigsConfigsMaxdusthtlcexposuremsat
	414, // 404: cln.ListconfigsConfigs.min_capacity_sat:type_name -> cln.ListconfigsConfigsMincapacitysat
	415, // 405: cln.ListconfigsConfigs.addr:type_name -> cln.ListconfigsConfigsAddr
	416, // 406: cln.ListconfigsConfigs.announce_addr:type_name -> cln.ListconfigsConfigsAnnounceaddr
	417, // 407: cln.ListconfigsConfigs.bind_addr:type_name -> cln.ListconfigsConfigsBindaddr
	418, // 408: cln.ListconfigsConfigs.offline:type_name -> cln.ListconfigsConfigsOffline
	419, // 409: cln.ListconfigsConfigs.autolisten:type_name -> cln.ListconfigsConfigsAutolisten
	420, // 410: cln.ListconfigsConfigs.proxy:type_name -> cln.ListconfigsConfigsProxy
	421, // 411: cln.ListconfigsConfigs.disable_dns:type_name -> cln.ListconfigsConfigsDisabledns
	422, // 412: cln.ListconfigsConfigs.announce_addr_discovered:type_name -> cln.ListconfigsConfigsAnnounceaddrdiscovered
	423, // 413: cln.ListconfigsConfigs.announce_addr_discovered_port:type_name -> cln.ListconfigsConfigsAnnounceaddrdiscoveredport
	424, // 414: cln.ListconfigsConfigs.encrypted_hsm:type_name -> cln.ListconfigsConfigsEncryptedhsm
	425, // 415: cln.ListconfigsConfigs.rpc_file_mode:type_name -> cln.ListconfigsConfigsRpcfilemode
	426, // 416: cln.ListconfigsConfigs.log_level:type_name -> cln.ListconfigsConfigsLoglevel
	427, // 417: cln.ListconfigsConfigs.log_prefix:type_name -> cln.ListconfigsConfigsLogprefix
	428, // 418: cln.ListconfigsConfigs.log_file:type_name -> cln.ListconfigsConfigsLogfile
	429, // 419: cln.ListconfigsConfigs.log_timestamps:type_name -> cln.ListconfigsConfigsLogtimestamps
	430, // 420: cln.ListconfigsConfigs.force_feerates:type_name -> cln.ListconfigsConfigsForcefeerates
	431, // 421: cln.ListconfigsConfigs.subdaemon:type_name -> cln.ListconfigsConfigsSubdaemon
	432, // 422: cln.ListconfigsConfigs.fetchinvoice_noconnect:type_name -> cln.ListconfigsConfigsFetchinvoicenoconnect
	433, // 423: cln.ListconfigsConfigs.accept_htlc_tlv_types:type_name -> cln.ListconfigsConfigsAccepthtlctlvtypes
	434, // 424: cln.ListconfigsConfigs.tor_service_password:type_name -> cln.ListconfigsConfigsTorservicepassword
	435, // 425: cln.ListconfigsConfigs.announce_addr_dns:type_name -> cln.ListconfigsConfigsAnnounceaddrdns
	436, // 426: cln.ListconfigsConfigs.require_confirmed_inputs:type_name -> cln.ListconfigsConfigsRequireconfirmedinputs
	437, // 427: cln.ListconfigsConfigs.commit_fee:type_name -> cln.ListconfigsConfigsCommitfee
	438, // 428: cln.ListconfigsConfigs.commit_feerate_offset:type_name -> cln.ListconfigsConfigsCommitfeerateoffset
	439, // 429: cln.ListconfigsConfigs.autoconnect_seeker_peers:type_name -> cln.ListconfigsConfigsAutoconnectseekerpeers
	58,  // 430: cln.ListconfigsConfigsConf.source:type_name -> cln.ListconfigsConfigsConf.ListconfigsConfigsConfSource
	550, // 431: cln.ListconfigsConfigsHtlcminimummsat.value_msat:type_name -> cln.Amount
	550, // 432: cln.ListconfigsConfigsHtlcmaximummsat.value_msat:type_name -> cln.Amount
	550, // 433: cln.ListconfigsConfigsMaxdusthtlcexposuremsat.value_msat:type_name -> cln.Amount
	59,  // 434: cln.ListconfigsConfigsAnnounceaddrdiscovered.value_str:type_name -> cln.ListconfigsConfigsAnnounceaddrdiscovered.ListconfigsConfigsAnnounceaddrdiscoveredValue_str
	441, // 435: cln.ListconfigsPlugins.options:type_name -> cln.ListconfigsPluginsOptions
	443, // 436: cln.ListconfigsImportantplugins.options:type_name -> cln.ListconfigsImportantpluginsOptions
	60,  // 437: cln.StopResponse.result:type_name -> cln.StopResponse.StopResult
	448, // 438: cln.HelpResponse.help:type_name -> cln.HelpHelp
	61,  // 439: cln.HelpResponse.format_hint:type_name -> cln.HelpResponse.HelpFormathint
	550, // 440: cln.PreapprovekeysendRequest.amount_msat:type_name -> cln.Amount
	457, // 441: cln.BkprchannelsapyResponse.channels_apy:type_name -> cln.BkprchannelsapyChannels_apy
	550, // 442: cln.BkprchannelsapyChannels_apy.routed_out_msat:type_name -> cln.Amount
	550, // 443: cln.BkprchannelsapyChannels_apy.routed_in_msat:type_name -> cln.Amount
	550, // 444: cln.BkprchannelsapyChannels_apy.lease_fee_paid_msat:type_name -> cln.Amount
	550, // 445: cln.BkprchannelsapyChannels_apy.lease_fee_earned_msat:type_name -> cln.Amount
	550, // 446: cln.BkprchannelsapyChannels_apy.pushed_out_msat:type_name -> cln.Amount
	550, // 447: cln.BkprchannelsapyChannels_apy.pushed_in_msat:type_name -> cln.Amount
	550, // 448: cln.BkprchannelsapyChannels_apy.our_start_balance_msat:type_name -> cln.Amount
	550, // 449: cln.BkprchannelsapyChannels_apy.channel_start_balance_msat:type_name -> cln.Amount
	550, // 450: cln.BkprchannelsapyChannels_apy.fees_out_msat:type_name -> cln.Amount
	550, // 451: cln.BkprchannelsapyChannels_apy.fees_in_msat:type_name -> cln.Amount
	62,  // 452: cln.BkprdumpincomecsvResponse.csv_format:type_name -> cln.BkprdumpincomecsvResponse.BkprdumpincomecsvCsv_format
	462, // 453: cln.BkprinspectResponse.txs:type_name -> cln.BkprinspectTxs
	550, // 454: cln.BkprinspectTxs.fees_paid_msat:type_name -> cln.Amount
	463, // 455: cln.BkprinspectTxs.outputs:type_name -> cln.BkprinspectTxsOutputs
	550, // 456: cln.BkprinspectTxsOutputs.output_value_msat:type_name -> cln.Amount
	550, // 457: cln.BkprinspectTxsOutputs.credit_msat:type_name -> cln.Amount
	550, // 458: cln.BkprinspectTxsOutputs.debit_msat:type_name -> cln.Amount
	466, // 459: cln.BkprlistaccounteventsResponse.events:type_name -> cln.BkprlistaccounteventsEvents
	63,  // 460: cln.BkprlistaccounteventsEvents.item_type:type_name -> cln.BkprlistaccounteventsEvents.BkprlistaccounteventsEventsType
	550, // 461: cln.BkprlistaccounteventsEvents.credit_msat:type_name -> cln.Amount
	550, // 462: cln.BkprlistaccounteventsEvents.debit_msat:type_name -> cln.Amount
	550, // 463: cln.BkprlistaccounteventsEvents.fees_msat:type_name -> cln.Amount
	469, // 464: cln.BkprlistbalancesResponse.accounts:type_name -> cln.BkprlistbalancesAccounts
	470, // 465: cln.BkprlistbalancesAccounts.balances:type_name -> cln.BkprlistbalancesAccountsBalances
	550, // 466: cln.BkprlistbalancesAccountsBalances.balance_msat:type_name -> cln.Amount
	473, // 467: cln.BkprlistincomeResponse.income_events:type_name -> cln.BkprlistincomeIncome_events
	550, // 468: cln.BkprlistincomeIncome_events.credit_msat:type_name -> cln.Amount
	550, // 469: cln.BkprlistincomeIncome_events.debit_msat:type_name -> cln.Amount
	476, // 470: cln.BkpreditdescriptionbypaymentidResponse.updated:type_name -> cln.BkpreditdescriptionbypaymentidUpdated
	64,  // 471: cln.BkpreditdescriptionbypaymentidUpdated.item_type:type_name -> cln.BkpreditdescriptionbypaymentidUpdated.BkpreditdescriptionbypaymentidUpdatedType
	550, // 472: cln.BkpreditdescriptionbypaymentidUpdated.credit_msat:type_name -> cln.Amount
	550, // 473: cln.BkpreditdescriptionbypaymentidUpdated.debit_msat:type_name -> cln.Amount
	550, // 474: cln.BkpreditdescriptionbypaymentidUpdated.fees_msat:type_name -> cln.Amount
	479, // 475: cln.BkpreditdescriptionbyoutpointResponse.updated:type_name -> cln.BkpreditdescriptionbyoutpointUpdated
	65,  // 476: cln.BkpreditdescriptionbyoutpointUpdated.item_type:type_name -> cln.BkpreditdescriptionbyoutpointUpdated.BkpreditdescriptionbyoutpointUpdatedType
	550, // 477: cln.BkpreditdescriptionbyoutpointUpdated.credit_msat:type_name -> cln.Amount
	550, // 478: cln.BkpreditdescriptionbyoutpointUpdated.debit_msat:type_name -> cln.Amount
	550, // 479: cln.BkpreditdescriptionbyoutpointUpdated.fees_msat:type_name -> cln.Amount
	482, // 480: cln.BlacklistruneResponse.blacklist:type_name -> cln.BlacklistruneBlacklist
	489, // 481: cln.ShowrunesResponse.runes:type_name -> cln.ShowrunesRunes
	490, // 482: cln.ShowrunesRunes.restrictions:type_name -> cln.ShowrunesRunesRestrictions
	491, // 483: cln.ShowrunesRunesRestrictions.alternatives:type_name -> cln.ShowrunesRunesRestrictionsAlternatives
	494, // 484: cln.AskreneunreserveRequest.path:type_name -> cln.AskreneunreservePath
	550, // 485: cln.AskreneunreservePath.amount_msat:type_name -> cln.Amount
	497, // 486: cln.AskrenelistlayersResponse.layers:type_name -> cln.AskrenelistlayersLayers
	498, // 487: cln.AskrenelistlayersLayers.created_channels:type_name -> cln.AskrenelistlayersLayersCreated_channels
	500, // 488: cln.AskrenelistlayersLayers.constraints:type_name -> cln.AskrenelistlayersLayersConstraints
	499, // 489: cln.AskrenelistlayersLayers.channel_updates:type_name -> cln.AskrenelistlayersLayersChannel_updates
	501, // 490: cln.AskrenelistlayersLayers.biases:type_name -> cln.AskrenelistlayersLayersBiases
	550, // 491: cln.AskrenelistlayersLayersCreated_channels.capacity_msat:type_name -> cln.Amount
	550, // 492: cln.AskrenelistlayersLayersChannel_updates.htlc_minimum_msat:type_name -> cln.Amount
	550, // 493: cln.AskrenelistlayersLayersChannel_updates.htlc_maximum_msat:type_name -> cln.Amount
	550, // 494: cln.AskrenelistlayersLayersChannel_updates.fee_base_msat:type_name -> cln.Amount
	550, // 495: cln.AskrenelistlayersLayersConstraints.maximum_msat:type_name -> cln.Amount
	550, // 496: cln.AskrenelistlayersLayersConstraints.minimum_msat:type_name -> cln.Amount
	504, // 497: cln.AskrenecreatelayerResponse.layers:type_name -> cln.AskrenecreatelayerLayers
	505, // 498: cln.AskrenecreatelayerLayers.created_channels:type_name -> cln.AskrenecreatelayerLayersCreated_channels
	506, // 499: cln.AskrenecreatelayerLayers.channel_updates:type_name -> cln.AskrenecreatelayerLayersChannel_updates
	507, // 500: cln.AskrenecreatelayerLayers.constraints:type_name -> cln.AskrenecreatelayerLayersConstraints
	508, // 501: cln.AskrenecreatelayerLayers.biases:type_name -> cln.AskrenecreatelayerLayersBiases
	550, // 502: cln.AskrenecreatelayerLayersCreated_channels.capacity_msat:type_name -> cln.Amount
	550, // 503: cln.AskrenecreatelayerLayersChannel_updates.htlc_minimum_msat:type_name -> cln.Amount
	550, // 504: cln.AskrenecreatelayerLayersChannel_updates.htlc_maximum_msat:type_name -> cln.Amount
	550, // 505: cln.AskrenecreatelayerLayersChannel_updates.fee_base_msat:type_name -> cln.Amount
	550, // 506: cln.AskrenecreatelayerLayersConstraints.maximum_msat:type_name -> cln.Amount
	550, // 507: cln.AskrenecreatelayerLayersConstraints.minimum_msat:type_name -> cln.Amount
	513, // 508: cln.AskrenereserveRequest.path:type_name -> cln.AskrenereservePath
	550, // 509: cln.AskrenereservePath.amount_msat:type_name -> cln.Amount
	550, // 510: cln.GetroutesRequest.amount_msat:type_name -> cln.Amount
	550, // 511: cln.GetroutesRequest.maxfee_msat:type_name -> cln.Amount
	518, // 512: cln.GetroutesResponse.routes:type_name -> cln.GetroutesRoutes
	550, // 513: cln.GetroutesRoutes.amount_msat:type_name -> cln.Amount
	519, // 514: cln.GetroutesRoutes.path:type_name -> cln.GetroutesRoutesPath
	550, // 515: cln.GetroutesRoutesPath.amount_msat:type_name -> cln.Amount
	550, // 516: cln.AskreneinformchannelRequest.amount_msat:type_name -> cln.Amount
	66,  // 517: cln.AskreneinformchannelRequest.inform:type_name -> cln.AskreneinformchannelRequest.AskreneinformchannelInform
	524, // 518: cln.AskreneinformchannelResponse.constraints:type_name -> cln.AskreneinformchannelConstraints
	550, // 519: cln.AskreneinformchannelConstraints.maximum_msat:type_name -> cln.Amount
	550, // 520: cln.AskreneinformchannelConstraints.minimum_msat:type_name -> cln.Amount
	550, // 521: cln.AskrenecreatechannelRequest.capacity_msat:type_name -> cln.Amount
	550, // 522: cln.AskreneupdatechannelRequest.htlc_minimum_msat:type_name -> cln.Amount
	550, // 523: cln.AskreneupdatechannelRequest.htlc_maximum_msat:type_name -> cln.Amount
	550, // 524: cln.AskreneupdatechannelRequest.fee_base_msat:type_name -> cln.Amount
	531, // 525: cln.AskrenebiaschannelResponse.biases:type_name -> cln.AskrenebiaschannelBiases
	534, // 526: cln.AskrenelistreservationsResponse.reservations:type_name -> cln.AskrenelistreservationsReservations
	550, // 527: cln.AskrenelistreservationsReservations.amount_msat:type_name -> cln.Amount
	550, // 528: cln.InjectpaymentonionRequest.amount_msat:type_name -> cln.Amount
	550, // 529: cln.InjectpaymentonionRequest.destination_msat:type_name -> cln.Amount
	550, // 530: cln.XpayRequest.amount_msat:type_name -> cln.Amount
	550, // 531: cln.XpayRequest.maxfee:type_name -> cln.Amount
	550, // 532: cln.XpayRequest.partial_msat:type_name -> cln.Amount
	550, // 533: cln.XpayResponse.amount_msat:type_name -> cln.Amount
	550, // 534: cln.XpayResponse.amount_sent_msat:type_name -> cln.Amount
	550, // 535: cln.ChannelOpenedNotification.funding_msat:type_name -> cln.Amount
	67,  // 536: cln.PeerConnectNotification.direction:type_name -> cln.PeerConnectNotification.PeerConnectDirection
	547, // 537: cln.PeerConnectNotification.address:type_name -> cln.PeerConnectAddress
	68,  // 538: cln.PeerConnectAddress.item_type:type_name -> cln.PeerConnectAddress.PeerConnectAddressType
	69,  // 539: cln.Node.Getinfo:input_type -> cln.GetinfoRequest
	74,  // 540: cln.Node.ListPeers:input_type -> cln.ListpeersRequest
	78,  // 541: cln.Node.ListFunds:input_type -> cln.ListfundsRequest
	82,  // 542: cln.Node.SendPay:input_type -> cln.SendpayRequest
	85,  // 543: cln.Node.ListChannels:input_type -> cln.ListchannelsRequest
	88,  // 544: cln.Node.AddGossip:input_type -> cln.AddgossipRequest
	90,  // 545: cln.Node.AddPsbtOutput:input_type -> cln.AddpsbtoutputRequest
	92,  // 546: cln.Node.AutoCleanOnce:input_type -> cln.AutocleanonceRequest
	101, // 547: cln.Node.AutoCleanStatus:input_type -> cln.AutocleanstatusRequest
	110, // 548: cln.Node.CheckMessage:input_type -> cln.CheckmessageRequest
	112, // 549: cln.Node.Close:input_type -> cln.CloseRequest
	114, // 550: cln.Node.ConnectPeer:input_type -> cln.ConnectRequest
	117, // 551: cln.Node.CreateInvoice:input_type -> cln.CreateinvoiceRequest
	120, // 552: cln.Node.Datastore:input_type -> cln.DatastoreRequest
	122, // 553: cln.Node.DatastoreUsage:input_type -> cln.DatastoreusageRequest
	125, // 554: cln.Node.CreateOnion:input_type -> cln.CreateonionRequest
	128, // 555: cln.Node.DelDatastore:input_type -> cln.DeldatastoreRequest
	130, // 556: cln.Node.DelInvoice:input_type -> cln.DelinvoiceRequest
	132, // 557: cln.Node.DevForgetChannel:input_type -> cln.DevforgetchannelRequest
	134, // 558: cln.Node.EmergencyRecover:input_type -> cln.EmergencyrecoverRequest
	136, // 559: cln.Node.GetEmergencyRecoverData:input_type -> cln.GetemergencyrecoverdataRequest
	138, // 560: cln.Node.ExposeSecret:input_type -> cln.ExposesecretRequest
	140, // 561: cln.Node.Recover:input_type -> cln.RecoverRequest
	142, // 562: cln.Node.RecoverChannel:input_type -> cln.RecoverchannelRequest
	144, // 563: cln.Node.Invoice:input_type -> cln.InvoiceRequest
	146, // 564: cln.Node.CreateInvoiceRequest:input_type -> cln.InvoicerequestRequest
	148, // 565: cln.Node.DisableInvoiceRequest:input_type -> cln.DisableinvoicerequestRequest
	150, // 566: cln.Node.ListInvoiceRequests:input_type -> cln.ListinvoicerequestsRequest
	153, // 567: cln.Node.ListDatastore:input_type -> cln.ListdatastoreRequest
	156, // 568: cln.Node.ListInvoices:input_type -> cln.ListinvoicesRequest
	160, // 569: cln.Node.SendOnion:input_type -> cln.SendonionRequest
	163, // 570: cln.Node.ListSendPays:input_type -> cln.ListsendpaysRequest
	166, // 571: cln.Node.ListTransactions:input_type -> cln.ListtransactionsRequest
	171, // 572: cln.Node.MakeSecret:input_type -> cln.MakesecretRequest
	173, // 573: cln.Node.Pay:input_type -> cln.PayRequest
	175, // 574: cln.Node.ListNodes:input_type -> cln.ListnodesRequest
	180, // 575: cln.Node.WaitAnyInvoice:input_type -> cln.WaitanyinvoiceRequest
	183, // 576: cln.Node.WaitInvoice:input_type -> cln.WaitinvoiceRequest
	186, // 577: cln.Node.WaitSendPay:input_type -> cln.WaitsendpayRequest
	188, // 578: cln.Node.NewAddr:input_type -> cln.NewaddrRequest
	190, // 579: cln.Node.Withdraw:input_type -> cln.WithdrawRequest
	192, // 580: cln.Node.KeySend:input_type -> cln.KeysendRequest
	194, // 581: cln.Node.FundPsbt:input_type -> cln.FundpsbtRequest
	197, // 582: cln.Node.SendPsbt:input_type -> cln.SendpsbtRequest
	199, // 583: cln.Node.SignPsbt:input_type -> cln.SignpsbtRequest
	201, // 584: cln.Node.UtxoPsbt:input_type -> cln.UtxopsbtRequest
	204, // 585: cln.Node.TxDiscard:input_type -> cln.TxdiscardRequest
	206, // 586: cln.Node.TxPrepare:input_type -> cln.TxprepareRequest
	208, // 587: cln.Node.TxSend:input_type -> cln.TxsendRequest
	210, // 588: cln.Node.ListPeerChannels:input_type -> cln.ListpeerchannelsRequest
	221, // 589: cln.Node.ListClosedChannels:input_type -> cln.ListclosedchannelsRequest
	225, // 590: cln.Node.DecodePay:input_type -> cln.DecodepayRequest
	229, // 591: cln.Node.Decode:input_type -> cln.DecodeRequest
	240, // 592: cln.Node.DelPay:input_type -> cln.DelpayRequest
	243, // 593: cln.Node.DelForward:input_type -> cln.DelforwardRequest
	245, // 594: cln.Node.DisableOffer:input_type -> cln.DisableofferRequest
	247, // 595: cln.Node.EnableOffer:input_type -> cln.EnableofferRequest
	249, // 596: cln.Node.Disconnect:input_type -> cln.DisconnectRequest
	251, // 597: cln.Node.Feerates:input_type -> cln.FeeratesRequest
	258, // 598: cln.Node.FetchInvoice:input_type -> cln.FetchinvoiceRequest
	262, // 599: cln.Node.FundChannel_Cancel:input_type -> cln.Fundchannel_cancelRequest
	264, // 600: cln.Node.FundChannel_Complete:input_type -> cln.Fundchannel_completeRequest
	266, // 601: cln.Node.FundChannel:input_type -> cln.FundchannelRequest
	269, // 602: cln.Node.FundChannel_Start:input_type -> cln.Fundchannel_startRequest
	272, // 603: cln.Node.GetLog:input_type -> cln.GetlogRequest
	275, // 604: cln.Node.FunderUpdate:input_type -> cln.FunderupdateRequest
	277, // 605: cln.Node.GetRoute:input_type -> cln.GetrouteRequest
	280, // 606: cln.Node.ListAddresses:input_type -> cln.ListaddressesRequest
	283, // 607: cln.Node.ListForwards:input_type -> cln.ListforwardsRequest
	286, // 608: cln.Node.ListOffers:input_type -> cln.ListoffersRequest
	289, // 609: cln.Node.ListPays:input_type -> cln.ListpaysRequest
	292, // 610: cln.Node.ListHtlcs:input_type -> cln.ListhtlcsRequest
	295, // 611: cln.Node.MultiFundChannel:input_type -> cln.MultifundchannelRequest
	302, // 612: cln.Node.MultiWithdraw:input_type -> cln.MultiwithdrawRequest
	304, // 613: cln.Node.Offer:input_type -> cln.OfferRequest
	306, // 614: cln.Node.OpenChannel_Abort:input_type -> cln.Openchannel_abortRequest
	308, // 615: cln.Node.OpenChannel_Bump:input_type -> cln.Openchannel_bumpRequest
	311, // 616: cln.Node.OpenChannel_Init:input_type -> cln.Openchannel_initRequest
	314, // 617: cln.Node.OpenChannel_Signed:input_type -> cln.Openchannel_signedRequest
	316, // 618: cln.Node.OpenChannel_Update:input_type -> cln.Openchannel_updateRequest
	319, // 619: cln.Node.Ping:input_type -> cln.PingRequest
	321, // 620: cln.Node.Plugin:input_type -> cln.PluginRequest
	324, // 621: cln.Node.RenePayStatus:input_type -> cln.RenepaystatusRequest
	327, // 622: cln.Node.RenePay:input_type -> cln.RenepayRequest
	329, // 623: cln.Node.ReserveInputs:input_type -> cln.ReserveinputsRequest
	332, // 624: cln.Node.SendCustomMsg:input_type -> cln.SendcustommsgRequest
	334, // 625: cln.Node.SendInvoice:input_type -> cln.SendinvoiceRequest
	336, // 626: cln.Node.SetChannel:input_type -> cln.SetchannelRequest
	339, // 627: cln.Node.SetConfig:input_type -> cln.SetconfigRequest
	342, // 628: cln.Node.SetPsbtVersion:input_type -> cln.SetpsbtversionRequest
	344, // 629: cln.Node.SignInvoice:input_type -> cln.SigninvoiceRequest
	346, // 630: cln.Node.SignMessage:input_type -> cln.SignmessageRequest
	348, // 631: cln.Node.Splice_Init:input_type -> cln.Splice_initRequest
	350, // 632: cln.Node.Splice_Signed:input_type -> cln.Splice_signedRequest
	352, // 633: cln.Node.Splice_Update:input_type -> cln.Splice_updateRequest
	354, // 634: cln.Node.DevSplice:input_type -> cln.DevspliceRequest
	356, // 635: cln.Node.UnreserveInputs:input_type -> cln.UnreserveinputsRequest
	359, // 636: cln.Node.UpgradeWallet:input_type -> cln.UpgradewalletRequest
	361, // 637: cln.Node.WaitBlockHeight:input_type -> cln.WaitblockheightRequest
	363, // 638: cln.Node.Wait:input_type -> cln.WaitRequest
	366, // 639: cln.Node.ListConfigs:input_type -> cln.ListconfigsRequest
	444, // 640: cln.Node.Stop:input_type -> cln.StopRequest
	446, // 641: cln.Node.Help:input_type -> cln.HelpRequest
	449, // 642: cln.Node.PreApproveKeysend:input_type -> cln.PreapprovekeysendRequest
	451, // 643: cln.Node.PreApproveInvoice:input_type -> cln.PreapproveinvoiceRequest
	453, // 644: cln.Node.StaticBackup:input_type -> cln.StaticbackupRequest
	455, // 645: cln.Node.BkprChannelsApy:input_type -> cln.BkprchannelsapyRequest
	458, // 646: cln.Node.BkprDumpIncomeCsv:input_type -> cln.BkprdumpincomecsvRequest
	460, // 647: cln.Node.BkprInspect:input_type -> cln.BkprinspectRequest
	464, // 648: cln.Node.BkprListAccountEvents:input_type -> cln.BkprlistaccounteventsRequest
	467, // 649: cln.Node.BkprListBalances:input_type -> cln.BkprlistbalancesRequest
	471, // 650: cln.Node.BkprListIncome:input_type -> cln.BkprlistincomeRequest
	474, // 651: cln.Node.BkprEditDescriptionByPaymentId:input_type -> cln.BkpreditdescriptionbypaymentidRequest
	477, // 652: cln.Node.BkprEditDescriptionByOutpoint:input_type -> cln.BkpreditdescriptionbyoutpointRequest
	480, // 653: cln.Node.BlacklistRune:input_type -> cln.BlacklistruneRequest
	483, // 654: cln.Node.CheckRune:input_type -> cln.CheckruneRequest
	485, // 655: cln.Node.CreateRune:input_type -> cln.CreateruneRequest
	487, // 656: cln.Node.ShowRunes:input_type -> cln.ShowrunesRequest
	492, // 657: cln.Node.AskReneUnreserve:input_type -> cln.AskreneunreserveRequest
	495, // 658: cln.Node.AskReneListLayers:input_type -> cln.AskrenelistlayersRequest
	502, // 659: cln.Node.AskReneCreateLayer:input_type -> cln.AskrenecreatelayerRequest
	509, // 660: cln.Node.AskReneRemoveLayer:input_type -> cln.AskreneremovelayerRequest
	511, // 661: cln.Node.AskReneReserve:input_type -> cln.AskrenereserveRequest
	514, // 662: cln.Node.AskReneAge:input_type -> cln.AskreneageRequest
	516, // 663: cln.Node.GetRoutes:input_type -> cln.GetroutesRequest
	520, // 664: cln.Node.AskReneDisableNode:input_type -> cln.AskrenedisablenodeRequest
	522, // 665: cln.Node.AskReneInformChannel:input_type -> cln.AskreneinformchannelRequest
	525, // 666: cln.Node.AskReneCreateChannel:input_type -> cln.AskrenecreatechannelRequest
	527, // 667: cln.Node.AskReneUpdateChannel:input_type -> cln.AskreneupdatechannelRequest
	529, // 668: cln.Node.AskReneBiasChannel:input_type -> cln.AskrenebiaschannelRequest
	532, // 669: cln.Node.AskReneListReservations:input_type -> cln.AskrenelistreservationsRequest
	535, // 670: cln.Node.InjectPaymentOnion:input_type -> cln.InjectpaymentonionRequest
	537, // 671: cln.Node.Xpay:input_type -> cln.XpayRequest
	539, // 672: cln.Node.SubscribeBlockAdded:input_type -> cln.StreamBlockAddedRequest
	541, // 673: cln.Node.SubscribeChannelOpenFailed:input_type -> cln.StreamChannelOpenFailedRequest
	543, // 674: cln.Node.SubscribeChannelOpened:input_type -> cln.StreamChannelOpenedRequest
	545, // 675: cln.Node.SubscribeConnect:input_type -> cln.StreamConnectRequest
	548, // 676: cln.Node.SubscribeCustomMsg:input_type -> cln.StreamCustomMsgRequest
	70,  // 677: cln.Node.Getinfo:output_type -> cln.GetinfoResponse
	75,  // 678: cln.Node.ListPeers:output_type -> cln.ListpeersResponse
	79,  // 679: cln.Node.ListFunds:output_type -> cln.ListfundsResponse
	83,  // 680: cln.Node.SendPay:output_type -> cln.SendpayResponse
	86,  // 681: cln.Node.ListChannels:output_type -> cln.ListchannelsResponse
	89,  // 682: cln.Node.AddGossip:output_type -> cln.AddgossipResponse
	91,  // 683: cln.Node.AddPsbtOutput:output_type -> cln.AddpsbtoutputResponse
	93,  // 684: cln.Node.AutoCleanOnce:output_type -> cln.AutocleanonceResponse
	102, // 685: cln.Node.AutoCleanStatus:output_type -> cln.AutocleanstatusResponse
	111, // 686: cln.Node.CheckMessage:output_type -> cln.CheckmessageResponse
	113, // 687: cln.Node.Close:output_type -> cln.CloseResponse
	115, // 688: cln.Node.ConnectPeer:output_type -> cln.ConnectResponse
	118, // 689: cln.Node.CreateInvoice:output_type -> cln.CreateinvoiceResponse
	121, // 690: cln.Node.Datastore:output_type -> cln.DatastoreResponse
	123, // 691: cln.Node.DatastoreUsage:output_type -> cln.DatastoreusageResponse
	126, // 692: cln.Node.CreateOnion:output_type -> cln.CreateonionResponse
	129, // 693: cln.Node.DelDatastore:output_type -> cln.DeldatastoreResponse
	131, // 694: cln.Node.DelInvoice:output_type -> cln.DelinvoiceResponse
	133, // 695: cln.Node.DevForgetChannel:output_type -> cln.DevforgetchannelResponse
	135, // 696: cln.Node.EmergencyRecover:output_type -> cln.EmergencyrecoverResponse
	137, // 697: cln.Node.GetEmergencyRecoverData:output_type -> cln.GetemergencyrecoverdataResponse
	139, // 698: cln.Node.ExposeSecret:output_type -> cln.ExposesecretResponse
	141, // 699: cln.Node.Recover:output_type -> cln.RecoverResponse
	143, // 700: cln.Node.RecoverChannel:output_type -> cln.RecoverchannelResponse
	145, // 701: cln.Node.Invoice:output_type -> cln.InvoiceResponse
	147, // 702: cln.Node.CreateInvoiceRequest:output_type -> cln.InvoicerequestResponse
	149, // 703: cln.Node.DisableInvoiceRequest:output_type -> cln.DisableinvoicerequestResponse
	151, // 704: cln.Node.ListInvoiceRequests:output_type -> cln.ListinvoicerequestsResponse
	154, // 705: cln.Node.ListDatastore:output_type -> cln.ListdatastoreResponse
	157, // 706: cln.Node.ListInvoices:output_type -> cln.ListinvoicesResponse
	161, // 707: cln.Node.SendOnion:output_type -> cln.SendonionResponse
	164, // 708: cln.Node.ListSendPays:output_type -> cln.ListsendpaysResponse
	167, // 709: cln.Node.ListTransactions:output_type -> cln.ListtransactionsResponse
	172, // 710: cln.Node.MakeSecret:output_type -> cln.MakesecretResponse
	174, // 711: cln.Node.Pay:output_type -> cln.PayResponse
	176, // 712: cln.Node.ListNodes:output_type -> cln.ListnodesResponse
	181, // 713: cln.Node.WaitAnyInvoice:output_type -> cln.WaitanyinvoiceResponse
	184, // 714: cln.Node.WaitInvoice:output_type -> cln.WaitinvoiceResponse
	187, // 715: cln.Node.WaitSendPay:output_type -> cln.WaitsendpayResponse
	189, // 716: cln.Node.NewAddr:output_type -> cln.NewaddrResponse
	191, // 717: cln.Node.Withdraw:output_type -> cln.WithdrawResponse
	193, // 718: cln.Node.KeySend:output_type -> cln.KeysendResponse
	195, // 719: cln.Node.FundPsbt:output_type -> cln.FundpsbtResponse
	198, // 720: cln.Node.SendPsbt:output_type -> cln.SendpsbtResponse
	200, // 721: cln.Node.SignPsbt:output_type -> cln.SignpsbtResponse
	202, // 722: cln.Node.UtxoPsbt:output_type -> cln.UtxopsbtResponse
	205, // 723: cln.Node.TxDiscard:output_type -> cln.TxdiscardResponse
	207, // 724: cln.Node.TxPrepare:output_type -> cln.TxprepareResponse
	209, // 725: cln.Node.TxSend:output_type -> cln.TxsendResponse
	211, // 726: cln.Node.ListPeerChannels:output_type -> cln.ListpeerchannelsResponse
	222, // 727: cln.Node.ListClosedChannels:output_type -> cln.ListclosedchannelsResponse
	226, // 728: cln.Node.DecodePay:output_type -> cln.DecodepayResponse
	230, // 729: cln.Node.Decode:output_type -> cln.DecodeResponse
	241, // 730: cln.Node.DelPay:output_type -> cln.DelpayResponse
	244, // 731: cln.Node.DelForward:output_type -> cln.DelforwardResponse
	246, // 732: cln.Node.DisableOffer:output_type -> cln.DisableofferResponse
	248, // 733: cln.Node.EnableOffer:output_type -> cln.EnableofferResponse
	250, // 734: cln.Node.Disconnect:output_type -> cln.DisconnectResponse
	252, // 735: cln.Node.Feerates:output_type -> cln.FeeratesResponse
	259, // 736: cln.Node.FetchInvoice:output_type -> cln.FetchinvoiceResponse
	263, // 737: cln.Node.FundChannel_Cancel:output_type -> cln.Fundchannel_cancelResponse
	265, // 738: cln.Node.FundChannel_Complete:output_type -> cln.Fundchannel_completeResponse
	267, // 739: cln.Node.FundChannel:output_type -> cln.FundchannelResponse
	270, // 740: cln.Node.FundChannel_Start:output_type -> cln.Fundchannel_startResponse
	273, // 741: cln.Node.GetLog:output_type -> cln.GetlogResponse
	276, // 742: cln.Node.FunderUpdate:output_type -> cln.FunderupdateResponse
	278, // 743: cln.Node.GetRoute:output_type -> cln.GetrouteResponse
	281, // 744: cln.Node.ListAddresses:output_type -> cln.ListaddressesResponse
	284, // 745: cln.Node.ListForwards:output_type -> cln.ListforwardsResponse
	287, // 746: cln.Node.ListOffers:output_type -> cln.ListoffersResponse
	290, // 747: cln.Node.ListPays:output_type -> cln.ListpaysResponse
	293, // 748: cln.Node.ListHtlcs:output_type -> cln.ListhtlcsResponse
	296, // 749: cln.Node.MultiFundChannel:output_type -> cln.MultifundchannelResponse
	303, // 750: cln.Node.MultiWithdraw:output_type -> cln.MultiwithdrawResponse
	305, // 751: cln.Node.Offer:output_type -> cln.OfferResponse
	307, // 752: cln.Node.OpenChannel_Abort:output_type -> cln.Openchannel_abortResponse
	309, // 753: cln.Node.OpenChannel_Bump:output_type -> cln.Openchannel_bumpResponse
	312, // 754: cln.Node.OpenChannel_Init:output_type -> cln.Openchannel_initResponse
	315, // 755: cln.Node.OpenChannel_Signed:output_type -> cln.Openchannel_signedResponse
	317, // 756: cln.Node.OpenChannel_Update:output_type -> cln.Openchannel_updateResponse
	320, // 757: cln.Node.Ping:output_type -> cln.PingResponse
	322, // 758: cln.Node.Plugin:output_type -> cln.PluginResponse
	325, // 759: cln.Node.RenePayStatus:output_type -> cln.RenepaystatusResponse
	328, // 760: cln.Node.RenePay:output_type -> cln.RenepayResponse
	330, // 761: cln.Node.ReserveInputs:output_type -> cln.ReserveinputsResponse
	333, // 762: cln.Node.SendCustomMsg:output_type -> cln.SendcustommsgResponse
	335, // 763: cln.Node.SendInvoice:output_type -> cln.SendinvoiceResponse
	337, // 764: cln.Node.SetChannel:output_type -> cln.SetchannelResponse
	340, // 765: cln.Node.SetConfig:output_type -> cln.SetconfigResponse
	343, // 766: cln.Node.SetPsbtVersion:output_type -> cln.SetpsbtversionResponse
	345, // 767: cln.Node.SignInvoice:output_type -> cln.SigninvoiceResponse
	347, // 768: cln.Node.SignMessage:output_type -> cln.SignmessageResponse
	349, // 769: cln.Node.Splice_Init:output_type -> cln.Splice_initResponse
	351, // 770: cln.Node.Splice_Signed:output_type -> cln.Splice_signedResponse
	353, // 771: cln.Node.Splice_Update:output_type -> cln.Splice_updateResponse
	355, // 772: cln.Node.DevSplice:output_type -> cln.DevspliceResponse
	357, // 773: cln.Node.UnreserveInputs:output_type -> cln.UnreserveinputsResponse
	360, // 774: cln.Node.UpgradeWallet:output_type -> cln.UpgradewalletResponse
	362, // 775: cln.Node.WaitBlockHeight:output_type -> cln.WaitblockheightResponse
	364, // 776: cln.Node.Wait:output_type -> cln.WaitResponse
	367, // 777: cln.Node.ListConfigs:output_type -> cln.ListconfigsResponse
	445, // 778: cln.Node.Stop:output_type -> cln.StopResponse
	447, // 779: cln.Node.Help:output_type -> cln.HelpResponse
	450, // 780: cln.Node.PreApproveKeysend:output_type -> cln.PreapprovekeysendResponse
	452, // 781: cln.Node.PreApproveInvoice:output_type -> cln.PreapproveinvoiceResponse
	454, // 782: cln.Node.StaticBackup:output_type -> cln.StaticbackupResponse
	456, // 783: cln.Node.BkprChannelsApy:output_type -> cln.BkprchannelsapyResponse
	459, // 784: cln.Node.BkprDumpIncomeCsv:output_type -> cln.BkprdumpincomecsvResponse
	461, // 785: cln.Node.BkprInspect:output_type -> cln.BkprinspectResponse
	465, // 786: cln.Node.BkprListAccountEvents:output_type -> cln.BkprlistaccounteventsResponse
	468, // 787: cln.Node.BkprListBalances:output_type -> cln.BkprlistbalancesResponse
	472, // 788: cln.Node.BkprListIncome:output_type -> cln.BkprlistincomeResponse
	475, // 789: cln.Node.BkprEditDescriptionByPaymentId:output_type -> cln.BkpreditdescriptionbypaymentidResponse
	478, // 790: cln.Node.BkprEditDescriptionByOutpoint:output_type -> cln.BkpreditdescriptionbyoutpointResponse
	481, // 791: cln.Node.BlacklistRune:output_type -> cln.BlacklistruneResponse
	484, // 792: cln.Node.CheckRune:output_type -> cln.CheckruneResponse
	486, // 793: cln.Node.CreateRune:output_type -> cln.CreateruneResponse
	488, // 794: cln.Node.ShowRunes:output_type -> cln.ShowrunesResponse
	493, // 795: cln.Node.AskReneUnreserve:output_type -> cln.AskreneunreserveResponse
	496, // 796: cln.Node.AskReneListLayers:output_type -> cln.AskrenelistlayersResponse
	503, // 797: cln.Node.AskReneCreateLayer:output_type -> cln.AskrenecreatelayerResponse
	510, // 798: cln.Node.AskReneRemoveLayer:output_type -> cln.AskreneremovelayerResponse
	512, // 799: cln.Node.AskReneReserve:output_type -> cln.AskrenereserveResponse
	515, // 800: cln.Node.AskReneAge:output_type -> cln.AskreneageResponse
	517, // 801: cln.Node.GetRoutes:output_type -> cln.GetroutesResponse
	521, // 802: cln.Node.AskReneDisableNode:output_type -> cln.AskrenedisablenodeResponse
	523, // 803: cln.Node.AskReneInformChannel:output_type -> cln.AskreneinformchannelResponse
	526, // 804: cln.Node.AskReneCreateChannel:output_type -> cln.AskrenecreatechannelResponse
	528, // 805: cln.Node.AskReneUpdateChannel:output_type -> cln.AskreneupdatechannelResponse
	530, // 806: cln.Node.AskReneBiasChannel:output_type -> cln.AskrenebiaschannelResponse
	533, // 807: cln.Node.AskReneListReservations:output_type -> cln.AskrenelistreservationsResponse
	536, // 808: cln.Node.InjectPaymentOnion:output_type -> cln.InjectpaymentonionResponse
	538, // 809: cln.Node.Xpay:output_type -> cln.XpayResponse
	540, // 810: cln.Node.SubscribeBlockAdded:output_type -> cln.BlockAddedNotification
	542, // 811: cln.Node.SubscribeChannelOpenFailed:output_type -> cln.ChannelOpenFailedNotification
	544, // 812: cln.Node.SubscribeChannelOpened:output_type -> cln.ChannelOpenedNotification
	546, // 813: cln.Node.SubscribeConnect:output_type -> cln.PeerConnectNotification
	549, // 814: cln.Node.SubscribeCustomMsg:output_type -> cln.CustomMsgNotification
	677, // [677:815] is the sub-list for method output_type
	539, // [539:677] is the sub-list for method input_type
	539, // [539:539] is the sub-list for extension type_name
	539, // [539:539] is the sub-list for extension extendee
	0,   // [0:539] is the sub-list for field type_name
}

func init() { file_cln_node_proto_init() }
func file_cln_node_proto_init() {
	if File_cln_node_proto != nil {
		return
	}
	file_cln_primitives_proto_init()
	if !protoimpl.UnsafeEnabled {
		file_cln_node_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetinfoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetinfoResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetinfoOurFeatures); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetinfoAddress); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetinfoBinding); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeersRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeersResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeersPeers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeersPeersLog); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListfundsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListfundsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListfundsOutputs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListfundsChannels); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendpayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendpayResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendpayRoute); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListchannelsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListchannelsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListchannelsChannels); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AddgossipRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AddgossipResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AddpsbtoutputRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AddpsbtoutputResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceAutoclean); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceAutocleanSucceededforwards); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceAutocleanFailedforwards); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceAutocleanSucceededpays); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceAutocleanFailedpays); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceAutocleanPaidinvoices); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanonceAutocleanExpiredinvoices); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusAutoclean); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusAutocleanSucceededforwards); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusAutocleanFailedforwards); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusAutocleanSucceededpays); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusAutocleanFailedpays); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusAutocleanPaidinvoices); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AutocleanstatusAutocleanExpiredinvoices); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CheckmessageRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CheckmessageResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CloseRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CloseResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConnectRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConnectResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConnectAddress); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateinvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateinvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateinvoicePaidOutpoint); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DatastoreRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DatastoreResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DatastoreusageRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DatastoreusageResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DatastoreusageDatastoreusage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateonionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateonionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateonionHops); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeldatastoreRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeldatastoreResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DelinvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DelinvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DevforgetchannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DevforgetchannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EmergencyrecoverRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EmergencyrecoverResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetemergencyrecoverdataRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetemergencyrecoverdataResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExposesecretRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExposesecretResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RecoverRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RecoverResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RecoverchannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RecoverchannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InvoicerequestRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InvoicerequestResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DisableinvoicerequestRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DisableinvoicerequestResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListinvoicerequestsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListinvoicerequestsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListinvoicerequestsInvoicerequests); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListdatastoreRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListdatastoreResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListdatastoreDatastore); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListinvoicesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListinvoicesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListinvoicesInvoices); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListinvoicesInvoicesPaidOutpoint); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendonionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendonionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendonionFirstHop); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListsendpaysRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListsendpaysResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListsendpaysPayments); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListtransactionsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListtransactionsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListtransactionsTransactions); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListtransactionsTransactionsInputs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListtransactionsTransactionsOutputs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MakesecretRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MakesecretResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PayResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListnodesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListnodesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListnodesNodes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListnodesNodesOptionWillFund); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListnodesNodesAddresses); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitanyinvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitanyinvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitanyinvoicePaidOutpoint); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitinvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitinvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitinvoicePaidOutpoint); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitsendpayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitsendpayResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NewaddrRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NewaddrResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WithdrawRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WithdrawResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeysendRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeysendResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundpsbtRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundpsbtResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundpsbtReservations); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendpsbtRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendpsbtResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SignpsbtRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SignpsbtResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UtxopsbtRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UtxopsbtResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UtxopsbtReservations); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TxdiscardRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TxdiscardResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TxprepareRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TxprepareResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TxsendRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TxsendResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannels); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannelsUpdates); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannelsUpdatesLocal); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannelsUpdatesRemote); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannelsFeerate); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannelsInflight); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannelsFunding); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannelsAlias); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpeerchannelsChannelsHtlcs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListclosedchannelsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListclosedchannelsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListclosedchannelsClosedchannels); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListclosedchannelsClosedchannelsAlias); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodepayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodepayResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodepayFallbacks); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodepayExtra); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeOfferPaths); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeOfferRecurrencePaywindow); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeInvreqPaths); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[165].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeInvreqPathsPath); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[166].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeInvoicePathsPath); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[167].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeInvoiceFallbacks); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[168].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeFallbacks); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[169].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeExtra); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DecodeRestrictions); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DelpayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DelpayResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DelpayPayments); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DelforwardRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DelforwardResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[176].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DisableofferRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[177].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DisableofferResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[178].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EnableofferRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[179].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EnableofferResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[180].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DisconnectRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[181].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DisconnectResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[182].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FeeratesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[183].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FeeratesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[184].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FeeratesPerkb); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[185].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FeeratesPerkbEstimates); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[186].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FeeratesPerkw); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[187].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FeeratesPerkwEstimates); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[188].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FeeratesOnchainFeeEstimates); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[189].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FetchinvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[190].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FetchinvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[191].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FetchinvoiceChanges); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[192].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FetchinvoiceNextPeriod); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[193].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelCancelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[194].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelCancelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[195].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelCompleteRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[196].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelCompleteResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[197].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[198].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[199].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelChannelType); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[200].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelStartRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[201].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelStartResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[202].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FundchannelStartChannelType); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[203].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetlogRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[204].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetlogResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[205].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetlogLog); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[206].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FunderupdateRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[207].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FunderupdateResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[208].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetrouteRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[209].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetrouteResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[210].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetrouteRoute); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[211].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListaddressesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[212].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListaddressesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[213].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListaddressesAddresses); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[214].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListforwardsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[215].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListforwardsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[216].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListforwardsForwards); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[217].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListoffersRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[218].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListoffersResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[219].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListoffersOffers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[220].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpaysRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[221].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpaysResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[222].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListpaysPays); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[223].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListhtlcsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[224].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListhtlcsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[225].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListhtlcsHtlcs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[226].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultifundchannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[227].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultifundchannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[228].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultifundchannelDestinations); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[229].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultifundchannelChannelIds); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[230].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultifundchannelChannelIdsChannelType); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[231].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultifundchannelFailed); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[232].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultifundchannelFailedError); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[233].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultiwithdrawRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[234].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MultiwithdrawResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[235].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OfferRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[236].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OfferResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[237].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelAbortRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[238].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelAbortResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[239].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelBumpRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[240].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelBumpResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[241].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelBumpChannelType); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[242].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelInitRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[243].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelInitResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[244].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelInitChannelType); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[245].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelSignedRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[246].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelSignedResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[247].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelUpdateRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[248].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelUpdateResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[249].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OpenchannelUpdateChannelType); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[250].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PingRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[251].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PingResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[252].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PluginRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[253].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PluginResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[254].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PluginPlugins); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[255].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RenepaystatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[256].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RenepaystatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[257].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RenepaystatusPaystatus); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[258].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RenepayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[259].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RenepayResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[260].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReserveinputsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[261].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReserveinputsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[262].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReserveinputsReservations); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[263].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendcustommsgRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[264].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendcustommsgResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[265].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendinvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[266].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SendinvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[267].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetchannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[268].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetchannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[269].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetchannelChannels); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[270].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetconfigRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[271].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetconfigResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[272].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetconfigConfig); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[273].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetpsbtversionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[274].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SetpsbtversionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[275].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SigninvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[276].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SigninvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[277].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SignmessageRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[278].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SignmessageResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[279].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SpliceInitRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[280].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SpliceInitResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[281].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SpliceSignedRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[282].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SpliceSignedResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[283].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SpliceUpdateRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[284].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SpliceUpdateResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[285].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DevspliceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[286].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DevspliceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[287].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnreserveinputsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[288].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnreserveinputsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[289].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UnreserveinputsReservations); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[290].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpgradewalletRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[291].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpgradewalletResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[292].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitblockheightRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[293].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitblockheightResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[294].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[295].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[296].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*WaitDetails); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[297].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[298].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[299].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[300].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsConf); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[301].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsDeveloper); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[302].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsClearplugins); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[303].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsDisablempp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[304].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsMainnet); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[305].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsRegtest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[306].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsSignet); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[307].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsTestnet); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[308].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsImportantplugin); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[309].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsPlugin); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[310].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsPlugindir); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[311].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsLightningdir); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[312].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsNetwork); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[313].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAllowdeprecatedapis); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[314].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsRpcfile); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[315].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsDisableplugin); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[316].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAlwaysuseproxy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[317].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsDaemon); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[318].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsWallet); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[319].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsLargechannels); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[320].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsExperimentaldualfund); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[321].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsExperimentalsplicing); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[322].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsExperimentalonionmessages); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[323].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsExperimentaloffers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[324].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsExperimentalshutdownwrongfunding); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[325].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsExperimentalpeerstorage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[326].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsExperimentalanchors); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[327].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsDatabaseupgrade); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[328].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsRgb); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[329].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAlias); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[330].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsPidfile); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[331].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsIgnorefeelimits); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[332].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsWatchtimeblocks); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[333].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsMaxlocktimeblocks); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[334].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsFundingconfirms); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[335].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsCltvdelta); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[336].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsCltvfinal); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[337].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsCommittime); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[338].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsFeebase); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[339].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsRescan); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[340].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsFeepersatoshi); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[341].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsMaxconcurrenthtlcs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[342].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsHtlcminimummsat); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[343].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsHtlcmaximummsat); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[344].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsMaxdusthtlcexposuremsat); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[345].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsMincapacitysat); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[346].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAddr); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[347].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAnnounceaddr); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[348].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsBindaddr); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[349].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsOffline); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[350].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAutolisten); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[351].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsProxy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[352].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsDisabledns); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[353].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAnnounceaddrdiscovered); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[354].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAnnounceaddrdiscoveredport); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[355].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsEncryptedhsm); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[356].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsRpcfilemode); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[357].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsLoglevel); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[358].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsLogprefix); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[359].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsLogfile); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[360].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsLogtimestamps); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[361].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsForcefeerates); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[362].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsSubdaemon); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[363].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsFetchinvoicenoconnect); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[364].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAccepthtlctlvtypes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[365].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsTorservicepassword); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[366].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAnnounceaddrdns); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[367].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsRequireconfirmedinputs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[368].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsCommitfee); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[369].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsCommitfeerateoffset); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[370].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsConfigsAutoconnectseekerpeers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[371].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsPlugins); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[372].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsPluginsOptions); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[373].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsImportantplugins); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[374].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListconfigsImportantpluginsOptions); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[375].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[376].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[377].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HelpRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[378].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HelpResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[379].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HelpHelp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[380].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PreapprovekeysendRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[381].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PreapprovekeysendResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[382].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PreapproveinvoiceRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[383].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PreapproveinvoiceResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[384].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StaticbackupRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[385].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StaticbackupResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[386].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprchannelsapyRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[387].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprchannelsapyResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[388].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprchannelsapyChannelsApy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[389].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprdumpincomecsvRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[390].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprdumpincomecsvResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[391].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprinspectRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[392].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprinspectResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[393].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprinspectTxs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[394].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprinspectTxsOutputs); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[395].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistaccounteventsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[396].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistaccounteventsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[397].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistaccounteventsEvents); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[398].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistbalancesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[399].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistbalancesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[400].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistbalancesAccounts); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[401].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistbalancesAccountsBalances); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[402].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistincomeRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[403].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistincomeResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[404].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkprlistincomeIncomeEvents); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[405].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkpreditdescriptionbypaymentidRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[406].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkpreditdescriptionbypaymentidResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[407].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkpreditdescriptionbypaymentidUpdated); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[408].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkpreditdescriptionbyoutpointRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[409].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkpreditdescriptionbyoutpointResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[410].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BkpreditdescriptionbyoutpointUpdated); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[411].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BlacklistruneRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[412].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BlacklistruneResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[413].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BlacklistruneBlacklist); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[414].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CheckruneRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[415].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CheckruneResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[416].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateruneRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[417].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateruneResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[418].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowrunesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[419].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowrunesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[420].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowrunesRunes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[421].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowrunesRunesRestrictions); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[422].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShowrunesRunesRestrictionsAlternatives); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[423].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneunreserveRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[424].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneunreserveResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[425].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneunreservePath); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[426].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistlayersRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[427].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistlayersResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[428].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistlayersLayers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[429].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistlayersLayersCreatedChannels); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[430].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistlayersLayersChannelUpdates); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[431].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistlayersLayersConstraints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[432].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistlayersLayersBiases); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[433].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatelayerRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[434].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatelayerResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[435].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatelayerLayers); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[436].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatelayerLayersCreatedChannels); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[437].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatelayerLayersChannelUpdates); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[438].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatelayerLayersConstraints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[439].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatelayerLayersBiases); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[440].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneremovelayerRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[441].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneremovelayerResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[442].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenereserveRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[443].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenereserveResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[444].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenereservePath); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[445].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneageRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[446].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneageResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[447].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetroutesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[448].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetroutesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[449].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetroutesRoutes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[450].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetroutesRoutesPath); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[451].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenedisablenodeRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[452].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenedisablenodeResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[453].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneinformchannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[454].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneinformchannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[455].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneinformchannelConstraints); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[456].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatechannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[457].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenecreatechannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[458].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneupdatechannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[459].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskreneupdatechannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[460].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenebiaschannelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[461].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenebiaschannelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[462].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenebiaschannelBiases); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[463].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistreservationsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[464].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistreservationsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[465].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AskrenelistreservationsReservations); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[466].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InjectpaymentonionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[467].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InjectpaymentonionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[468].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*XpayRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[469].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*XpayResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[470].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StreamBlockAddedRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[471].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BlockAddedNotification); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[472].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StreamChannelOpenFailedRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[473].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelOpenFailedNotification); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[474].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StreamChannelOpenedRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[475].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ChannelOpenedNotification); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[476].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StreamConnectRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[477].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PeerConnectNotification); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[478].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PeerConnectAddress); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[479].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StreamCustomMsgRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_cln_node_proto_msgTypes[480].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CustomMsgNotification); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_cln_node_proto_msgTypes[1].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[3].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[4].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[5].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[7].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[8].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[9].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[11].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[12].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[13].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[14].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[16].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[18].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[21].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[25].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[32].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[34].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[35].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[36].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[37].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[38].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[39].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[40].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[41].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[43].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[44].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[45].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[47].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[49].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[51].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[52].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[56].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[59].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[60].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[61].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[62].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[63].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[69].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[72].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[75].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[76].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[77].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[78].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[80].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[81].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[83].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[86].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[87].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[89].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[91].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[92].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[94].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[96].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[102].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[104].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[105].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[106].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[108].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[110].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[111].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[112].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[115].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[117].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[118].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[119].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[120].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[121].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[123].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[124].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[125].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[126].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[128].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[132].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[133].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[137].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[141].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[143].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[144].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[148].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[149].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[150].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[151].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[152].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[154].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[155].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[156].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[157].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[158].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[161].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[162].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[163].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[164].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[167].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[168].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[171].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[173].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[177].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[179].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[180].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[183].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[184].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[186].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[188].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[189].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[190].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[191].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[197].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[198].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[200].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[201].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[203].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[205].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[206].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[207].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[208].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[211].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[213].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[214].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[216].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[217].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[219].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[220].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[222].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[223].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[226].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[228].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[229].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[233].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[235].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[236].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[239].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[240].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[242].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[243].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[248].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[250].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[252].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[253].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[255].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[257].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[258].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[259].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[260].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[265].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[266].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[267].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[269].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[270].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[272].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[279].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[281].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[282].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[284].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[285].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[286].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[287].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[289].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[290].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[291].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[292].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[295].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[296].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[297].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[298].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[299].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[303].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[345].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[363].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[371].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[373].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[376].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[377].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[378].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[386].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[388].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[389].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[393].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[394].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[395].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[397].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[400].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[402].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[404].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[407].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[410].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[411].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[414].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[416].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[417].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[418].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[420].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[425].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[426].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[428].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[430].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[431].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[432].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[433].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[437].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[438].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[439].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[444].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[447].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[449].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[450].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[453].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[455].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[458].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[460].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[462].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[466].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[468].OneofWrappers = []interface{}{}
	file_cln_node_proto_msgTypes[478].OneofWrappers = []interface{}{}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_cln_node_proto_rawDesc,
			NumEnums:      69,
			NumMessages:   481,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_cln_node_proto_goTypes,
		DependencyIndexes: file_cln_node_proto_depIdxs,
		EnumInfos:         file_cln_node_proto_enumTypes,
		MessageInfos:      file_cln_node_proto_msgTypes,
	}.Build()
	File_cln_node_proto = out.File
	file_cln_node_proto_rawDesc = nil
	file_cln_node_proto_goTypes = nil
	file_cln_node_proto_depIdxs = nil
}
