// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.31.0
// 	protoc        v3.19.4
// source: service_ip_item.proto

package pb

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

// 创建IP
type CreateIPItemRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpListId                      int64  `protobuf:"varint,1,opt,name=ipListId,proto3" json:"ipListId,omitempty"`                                            // 所属IP列表ID
	Value                         string `protobuf:"bytes,15,opt,name=value,proto3" json:"value,omitempty"`                                                  // IP原始值，比如单个IP、IP范围或者CIDR，指定了原始值后，无需设置ipFrom和ipTo两个参数
	IpFrom                        string `protobuf:"bytes,2,opt,name=ipFrom,proto3" json:"ipFrom,omitempty"`                                                 // 开始IP
	IpTo                          string `protobuf:"bytes,3,opt,name=ipTo,proto3" json:"ipTo,omitempty"`                                                     // 结束IP（可选）
	ExpiredAt                     int64  `protobuf:"varint,4,opt,name=expiredAt,proto3" json:"expiredAt,omitempty"`                                          // 过期时间戳（可选）
	Reason                        string `protobuf:"bytes,5,opt,name=reason,proto3" json:"reason,omitempty"`                                                 // 加入理由（可选）
	Type                          string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"`                                                     // IP类型，值为ipv4或ipv6
	EventLevel                    string `protobuf:"bytes,7,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"`                                         // 级别：debug, notice, warning, error, critical, fatal
	NodeId                        int64  `protobuf:"varint,8,opt,name=nodeId,proto3" json:"nodeId,omitempty"`                                                // 可选项，所属节点ID
	ServerId                      int64  `protobuf:"varint,9,opt,name=serverId,proto3" json:"serverId,omitempty"`                                            // 可选项，所属网站ID
	SourceNodeId                  int64  `protobuf:"varint,10,opt,name=sourceNodeId,proto3" json:"sourceNodeId,omitempty"`                                   // 可选项，来源节点
	SourceServerId                int64  `protobuf:"varint,11,opt,name=sourceServerId,proto3" json:"sourceServerId,omitempty"`                               // 可选项，来源网站ID
	SourceHTTPFirewallPolicyId    int64  `protobuf:"varint,12,opt,name=sourceHTTPFirewallPolicyId,proto3" json:"sourceHTTPFirewallPolicyId,omitempty"`       // 可选项，来源WAF策略ID
	SourceHTTPFirewallRuleGroupId int64  `protobuf:"varint,13,opt,name=sourceHTTPFirewallRuleGroupId,proto3" json:"sourceHTTPFirewallRuleGroupId,omitempty"` // 可选项，来源WAF规则分组ID
	SourceHTTPFirewallRuleSetId   int64  `protobuf:"varint,14,opt,name=sourceHTTPFirewallRuleSetId,proto3" json:"sourceHTTPFirewallRuleSetId,omitempty"`     // 可选项，来源WAF规则集ID
}

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

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

func (*CreateIPItemRequest) ProtoMessage() {}

func (x *CreateIPItemRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CreateIPItemRequest.ProtoReflect.Descriptor instead.
func (*CreateIPItemRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{0}
}

func (x *CreateIPItemRequest) GetIpListId() int64 {
	if x != nil {
		return x.IpListId
	}
	return 0
}

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

func (x *CreateIPItemRequest) GetIpFrom() string {
	if x != nil {
		return x.IpFrom
	}
	return ""
}

func (x *CreateIPItemRequest) GetIpTo() string {
	if x != nil {
		return x.IpTo
	}
	return ""
}

func (x *CreateIPItemRequest) GetExpiredAt() int64 {
	if x != nil {
		return x.ExpiredAt
	}
	return 0
}

func (x *CreateIPItemRequest) GetReason() string {
	if x != nil {
		return x.Reason
	}
	return ""
}

func (x *CreateIPItemRequest) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

func (x *CreateIPItemRequest) GetEventLevel() string {
	if x != nil {
		return x.EventLevel
	}
	return ""
}

func (x *CreateIPItemRequest) GetNodeId() int64 {
	if x != nil {
		return x.NodeId
	}
	return 0
}

func (x *CreateIPItemRequest) GetServerId() int64 {
	if x != nil {
		return x.ServerId
	}
	return 0
}

func (x *CreateIPItemRequest) GetSourceNodeId() int64 {
	if x != nil {
		return x.SourceNodeId
	}
	return 0
}

func (x *CreateIPItemRequest) GetSourceServerId() int64 {
	if x != nil {
		return x.SourceServerId
	}
	return 0
}

func (x *CreateIPItemRequest) GetSourceHTTPFirewallPolicyId() int64 {
	if x != nil {
		return x.SourceHTTPFirewallPolicyId
	}
	return 0
}

func (x *CreateIPItemRequest) GetSourceHTTPFirewallRuleGroupId() int64 {
	if x != nil {
		return x.SourceHTTPFirewallRuleGroupId
	}
	return 0
}

func (x *CreateIPItemRequest) GetSourceHTTPFirewallRuleSetId() int64 {
	if x != nil {
		return x.SourceHTTPFirewallRuleSetId
	}
	return 0
}

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

	IpItemId int64 `protobuf:"varint,1,opt,name=ipItemId,proto3" json:"ipItemId,omitempty"`
}

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

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

func (*CreateIPItemResponse) ProtoMessage() {}

func (x *CreateIPItemResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CreateIPItemResponse.ProtoReflect.Descriptor instead.
func (*CreateIPItemResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{1}
}

func (x *CreateIPItemResponse) GetIpItemId() int64 {
	if x != nil {
		return x.IpItemId
	}
	return 0
}

// 创建一组IP
type CreateIPItemsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpItems []*CreateIPItemsRequest_IPItem `protobuf:"bytes,1,rep,name=ipItems,proto3" json:"ipItems,omitempty"` // 要创建的IP列表
}

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

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

func (*CreateIPItemsRequest) ProtoMessage() {}

func (x *CreateIPItemsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CreateIPItemsRequest.ProtoReflect.Descriptor instead.
func (*CreateIPItemsRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{2}
}

func (x *CreateIPItemsRequest) GetIpItems() []*CreateIPItemsRequest_IPItem {
	if x != nil {
		return x.IpItems
	}
	return nil
}

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

	IpItemIds []int64 `protobuf:"varint,1,rep,packed,name=ipItemIds,proto3" json:"ipItemIds,omitempty"` // 创建后的IP ID列表
}

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

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

func (*CreateIPItemsResponse) ProtoMessage() {}

func (x *CreateIPItemsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CreateIPItemsResponse.ProtoReflect.Descriptor instead.
func (*CreateIPItemsResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{3}
}

func (x *CreateIPItemsResponse) GetIpItemIds() []int64 {
	if x != nil {
		return x.IpItemIds
	}
	return nil
}

// 修改IP
type UpdateIPItemRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpItemId   int64  `protobuf:"varint,1,opt,name=ipItemId,proto3" json:"ipItemId,omitempty"`
	Value      string `protobuf:"bytes,8,opt,name=value,proto3" json:"value,omitempty"`   // IP原始值，比如单个IP、IP范围或者CIDR，指定了原始值后，无需设置ipFrom和ipTo两个参数
	IpFrom     string `protobuf:"bytes,2,opt,name=ipFrom,proto3" json:"ipFrom,omitempty"` // 开始IP
	IpTo       string `protobuf:"bytes,3,opt,name=ipTo,proto3" json:"ipTo,omitempty"`     // 结束IP（可选）
	ExpiredAt  int64  `protobuf:"varint,4,opt,name=expiredAt,proto3" json:"expiredAt,omitempty"`
	Reason     string `protobuf:"bytes,5,opt,name=reason,proto3" json:"reason,omitempty"`
	Type       string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"`             // 类型
	EventLevel string `protobuf:"bytes,7,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"` // 级别
}

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

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

func (*UpdateIPItemRequest) ProtoMessage() {}

func (x *UpdateIPItemRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 UpdateIPItemRequest.ProtoReflect.Descriptor instead.
func (*UpdateIPItemRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{4}
}

func (x *UpdateIPItemRequest) GetIpItemId() int64 {
	if x != nil {
		return x.IpItemId
	}
	return 0
}

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

func (x *UpdateIPItemRequest) GetIpFrom() string {
	if x != nil {
		return x.IpFrom
	}
	return ""
}

func (x *UpdateIPItemRequest) GetIpTo() string {
	if x != nil {
		return x.IpTo
	}
	return ""
}

func (x *UpdateIPItemRequest) GetExpiredAt() int64 {
	if x != nil {
		return x.ExpiredAt
	}
	return 0
}

func (x *UpdateIPItemRequest) GetReason() string {
	if x != nil {
		return x.Reason
	}
	return ""
}

func (x *UpdateIPItemRequest) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

func (x *UpdateIPItemRequest) GetEventLevel() string {
	if x != nil {
		return x.EventLevel
	}
	return ""
}

// 删除IP
// 可以使用 ipItemId 删除，也可以使用 ipFrom+ipTo+ipListId 删除，如果只是单个IP，则不需要指定ipTo
type DeleteIPItemRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpItemId int64  `protobuf:"varint,1,opt,name=ipItemId,proto3" json:"ipItemId,omitempty"` // IP条目的ID
	Value    string `protobuf:"bytes,5,opt,name=value,proto3" json:"value,omitempty"`        // IP原始值，比如单个IP、IP范围或者CIDR，指定了原始值后，无需设置ipFrom和ipTo两个参数
	IpFrom   string `protobuf:"bytes,2,opt,name=ipFrom,proto3" json:"ipFrom,omitempty"`      // v0.4.8新增，开始IP，和ipItemId二选一
	IpTo     string `protobuf:"bytes,3,opt,name=ipTo,proto3" json:"ipTo,omitempty"`          // v0.4.8新增，结束IP，和ipItemId二选一
	IpListId int64  `protobuf:"varint,4,opt,name=ipListId,proto3" json:"ipListId,omitempty"` // v0.4.8新增，IP列表，IP所在的IP列表，如果不指定，则会删除所有IP列表中的相关IP信息
}

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

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

func (*DeleteIPItemRequest) ProtoMessage() {}

func (x *DeleteIPItemRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 DeleteIPItemRequest.ProtoReflect.Descriptor instead.
func (*DeleteIPItemRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{5}
}

func (x *DeleteIPItemRequest) GetIpItemId() int64 {
	if x != nil {
		return x.IpItemId
	}
	return 0
}

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

func (x *DeleteIPItemRequest) GetIpFrom() string {
	if x != nil {
		return x.IpFrom
	}
	return ""
}

func (x *DeleteIPItemRequest) GetIpTo() string {
	if x != nil {
		return x.IpTo
	}
	return ""
}

func (x *DeleteIPItemRequest) GetIpListId() int64 {
	if x != nil {
		return x.IpListId
	}
	return 0
}

// 批量删除IP
type DeleteIPItemsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpItemIds []int64 `protobuf:"varint,1,rep,packed,name=ipItemIds,proto3" json:"ipItemIds,omitempty"`
}

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

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

func (*DeleteIPItemsRequest) ProtoMessage() {}

func (x *DeleteIPItemsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 DeleteIPItemsRequest.ProtoReflect.Descriptor instead.
func (*DeleteIPItemsRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{6}
}

func (x *DeleteIPItemsRequest) GetIpItemIds() []int64 {
	if x != nil {
		return x.IpItemIds
	}
	return nil
}

// 计算IP数量
type CountIPItemsWithListIdRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpListId   int64  `protobuf:"varint,1,opt,name=ipListId,proto3" json:"ipListId,omitempty"`
	Keyword    string `protobuf:"bytes,2,opt,name=keyword,proto3" json:"keyword,omitempty"`
	IpFrom     string `protobuf:"bytes,3,opt,name=ipFrom,proto3" json:"ipFrom,omitempty"`
	IpTo       string `protobuf:"bytes,4,opt,name=ipTo,proto3" json:"ipTo,omitempty"`
	EventLevel string `protobuf:"bytes,5,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"`
}

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

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

func (*CountIPItemsWithListIdRequest) ProtoMessage() {}

func (x *CountIPItemsWithListIdRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CountIPItemsWithListIdRequest.ProtoReflect.Descriptor instead.
func (*CountIPItemsWithListIdRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{7}
}

func (x *CountIPItemsWithListIdRequest) GetIpListId() int64 {
	if x != nil {
		return x.IpListId
	}
	return 0
}

func (x *CountIPItemsWithListIdRequest) GetKeyword() string {
	if x != nil {
		return x.Keyword
	}
	return ""
}

func (x *CountIPItemsWithListIdRequest) GetIpFrom() string {
	if x != nil {
		return x.IpFrom
	}
	return ""
}

func (x *CountIPItemsWithListIdRequest) GetIpTo() string {
	if x != nil {
		return x.IpTo
	}
	return ""
}

func (x *CountIPItemsWithListIdRequest) GetEventLevel() string {
	if x != nil {
		return x.EventLevel
	}
	return ""
}

// 列出单页的IP
type ListIPItemsWithListIdRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpListId   int64  `protobuf:"varint,1,opt,name=ipListId,proto3" json:"ipListId,omitempty"`
	Keyword    string `protobuf:"bytes,4,opt,name=keyword,proto3" json:"keyword,omitempty"`
	IpFrom     string `protobuf:"bytes,5,opt,name=ipFrom,proto3" json:"ipFrom,omitempty"`
	IpTo       string `protobuf:"bytes,6,opt,name=ipTo,proto3" json:"ipTo,omitempty"`
	EventLevel string `protobuf:"bytes,7,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"`
	Offset     int64  `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
	Size       int64  `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
}

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

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

func (*ListIPItemsWithListIdRequest) ProtoMessage() {}

func (x *ListIPItemsWithListIdRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListIPItemsWithListIdRequest.ProtoReflect.Descriptor instead.
func (*ListIPItemsWithListIdRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{8}
}

func (x *ListIPItemsWithListIdRequest) GetIpListId() int64 {
	if x != nil {
		return x.IpListId
	}
	return 0
}

func (x *ListIPItemsWithListIdRequest) GetKeyword() string {
	if x != nil {
		return x.Keyword
	}
	return ""
}

func (x *ListIPItemsWithListIdRequest) GetIpFrom() string {
	if x != nil {
		return x.IpFrom
	}
	return ""
}

func (x *ListIPItemsWithListIdRequest) GetIpTo() string {
	if x != nil {
		return x.IpTo
	}
	return ""
}

func (x *ListIPItemsWithListIdRequest) GetEventLevel() string {
	if x != nil {
		return x.EventLevel
	}
	return ""
}

func (x *ListIPItemsWithListIdRequest) GetOffset() int64 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListIPItemsWithListIdRequest) GetSize() int64 {
	if x != nil {
		return x.Size
	}
	return 0
}

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

	IpItems []*IPItem `protobuf:"bytes,1,rep,name=ipItems,proto3" json:"ipItems,omitempty"`
}

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

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

func (*ListIPItemsWithListIdResponse) ProtoMessage() {}

func (x *ListIPItemsWithListIdResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListIPItemsWithListIdResponse.ProtoReflect.Descriptor instead.
func (*ListIPItemsWithListIdResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{9}
}

func (x *ListIPItemsWithListIdResponse) GetIpItems() []*IPItem {
	if x != nil {
		return x.IpItems
	}
	return nil
}

// 查找单个IP
type FindEnabledIPItemRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpItemId int64 `protobuf:"varint,1,opt,name=ipItemId,proto3" json:"ipItemId,omitempty"`
}

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

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

func (*FindEnabledIPItemRequest) ProtoMessage() {}

func (x *FindEnabledIPItemRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 FindEnabledIPItemRequest.ProtoReflect.Descriptor instead.
func (*FindEnabledIPItemRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{10}
}

func (x *FindEnabledIPItemRequest) GetIpItemId() int64 {
	if x != nil {
		return x.IpItemId
	}
	return 0
}

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

	IpItem *IPItem `protobuf:"bytes,1,opt,name=ipItem,proto3" json:"ipItem,omitempty"`
}

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

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

func (*FindEnabledIPItemResponse) ProtoMessage() {}

func (x *FindEnabledIPItemResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 FindEnabledIPItemResponse.ProtoReflect.Descriptor instead.
func (*FindEnabledIPItemResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{11}
}

func (x *FindEnabledIPItemResponse) GetIpItem() *IPItem {
	if x != nil {
		return x.IpItem
	}
	return nil
}

// 根据版本列出一组IP
type ListIPItemsAfterVersionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Version int64 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"` // 版本号
	Size    int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`       // 数量
}

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

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

func (*ListIPItemsAfterVersionRequest) ProtoMessage() {}

func (x *ListIPItemsAfterVersionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListIPItemsAfterVersionRequest.ProtoReflect.Descriptor instead.
func (*ListIPItemsAfterVersionRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{12}
}

func (x *ListIPItemsAfterVersionRequest) GetVersion() int64 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *ListIPItemsAfterVersionRequest) GetSize() int64 {
	if x != nil {
		return x.Size
	}
	return 0
}

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

	IpItems []*IPItem `protobuf:"bytes,1,rep,name=ipItems,proto3" json:"ipItems,omitempty"`
	Version int64     `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"` // 新的版本号
}

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

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

func (*ListIPItemsAfterVersionResponse) ProtoMessage() {}

func (x *ListIPItemsAfterVersionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListIPItemsAfterVersionResponse.ProtoReflect.Descriptor instead.
func (*ListIPItemsAfterVersionResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{13}
}

func (x *ListIPItemsAfterVersionResponse) GetIpItems() []*IPItem {
	if x != nil {
		return x.IpItems
	}
	return nil
}

func (x *ListIPItemsAfterVersionResponse) GetVersion() int64 {
	if x != nil {
		return x.Version
	}
	return 0
}

// 检查IP状态
type CheckIPItemStatusRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpListId int64  `protobuf:"varint,1,opt,name=ipListId,proto3" json:"ipListId,omitempty"`
	Ip       string `protobuf:"bytes,2,opt,name=ip,proto3" json:"ip,omitempty"`
}

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

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

func (*CheckIPItemStatusRequest) ProtoMessage() {}

func (x *CheckIPItemStatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CheckIPItemStatusRequest.ProtoReflect.Descriptor instead.
func (*CheckIPItemStatusRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{14}
}

func (x *CheckIPItemStatusRequest) GetIpListId() int64 {
	if x != nil {
		return x.IpListId
	}
	return 0
}

func (x *CheckIPItemStatusRequest) GetIp() string {
	if x != nil {
		return x.Ip
	}
	return ""
}

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

	IsOk      bool    `protobuf:"varint,1,opt,name=isOk,proto3" json:"isOk,omitempty"` // 是否查询成功
	Error     string  `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
	IsFound   bool    `protobuf:"varint,3,opt,name=isFound,proto3" json:"isFound,omitempty"`     // 是否找到
	IsAllowed bool    `protobuf:"varint,4,opt,name=isAllowed,proto3" json:"isAllowed,omitempty"` // 是否允许
	IpItem    *IPItem `protobuf:"bytes,5,opt,name=ipItem,proto3" json:"ipItem,omitempty"`        // 匹配的IPItem
}

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

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

func (*CheckIPItemStatusResponse) ProtoMessage() {}

func (x *CheckIPItemStatusResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CheckIPItemStatusResponse.ProtoReflect.Descriptor instead.
func (*CheckIPItemStatusResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{15}
}

func (x *CheckIPItemStatusResponse) GetIsOk() bool {
	if x != nil {
		return x.IsOk
	}
	return false
}

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

func (x *CheckIPItemStatusResponse) GetIsFound() bool {
	if x != nil {
		return x.IsFound
	}
	return false
}

func (x *CheckIPItemStatusResponse) GetIsAllowed() bool {
	if x != nil {
		return x.IsAllowed
	}
	return false
}

func (x *CheckIPItemStatusResponse) GetIpItem() *IPItem {
	if x != nil {
		return x.IpItem
	}
	return nil
}

// 检查IP是否存在
type ExistsEnabledIPItemRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpItemId int64 `protobuf:"varint,1,opt,name=ipItemId,proto3" json:"ipItemId,omitempty"`
}

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

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

func (*ExistsEnabledIPItemRequest) ProtoMessage() {}

func (x *ExistsEnabledIPItemRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ExistsEnabledIPItemRequest.ProtoReflect.Descriptor instead.
func (*ExistsEnabledIPItemRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{16}
}

func (x *ExistsEnabledIPItemRequest) GetIpItemId() int64 {
	if x != nil {
		return x.IpItemId
	}
	return 0
}

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

	Exists bool `protobuf:"varint,1,opt,name=exists,proto3" json:"exists,omitempty"`
}

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

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

func (*ExistsEnabledIPItemResponse) ProtoMessage() {}

func (x *ExistsEnabledIPItemResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ExistsEnabledIPItemResponse.ProtoReflect.Descriptor instead.
func (*ExistsEnabledIPItemResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{17}
}

func (x *ExistsEnabledIPItemResponse) GetExists() bool {
	if x != nil {
		return x.Exists
	}
	return false
}

// 计算所有IP数量
type CountAllEnabledIPItemsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Keyword    string `protobuf:"bytes,6,opt,name=keyword,proto3" json:"keyword,omitempty"`        // 关键词
	Ip         string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"`                  // 单个IP，搜索单个IP时需要
	GlobalOnly bool   `protobuf:"varint,2,opt,name=globalOnly,proto3" json:"globalOnly,omitempty"` // 是否为自动添加的IP
	Unread     bool   `protobuf:"varint,3,opt,name=unread,proto3" json:"unread,omitempty"`         // 是否未读
	EventLevel string `protobuf:"bytes,4,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"`  // 事件级别
	ListType   string `protobuf:"bytes,5,opt,name=listType,proto3" json:"listType,omitempty"`      // 列表类型：black|white
	UserId     int64  `protobuf:"varint,7,opt,name=userId,proto3" json:"userId,omitempty"`         // 用户ID，只有管理员才有权限指定用户ID
}

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

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

func (*CountAllEnabledIPItemsRequest) ProtoMessage() {}

func (x *CountAllEnabledIPItemsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CountAllEnabledIPItemsRequest.ProtoReflect.Descriptor instead.
func (*CountAllEnabledIPItemsRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{18}
}

func (x *CountAllEnabledIPItemsRequest) GetKeyword() string {
	if x != nil {
		return x.Keyword
	}
	return ""
}

func (x *CountAllEnabledIPItemsRequest) GetIp() string {
	if x != nil {
		return x.Ip
	}
	return ""
}

func (x *CountAllEnabledIPItemsRequest) GetGlobalOnly() bool {
	if x != nil {
		return x.GlobalOnly
	}
	return false
}

func (x *CountAllEnabledIPItemsRequest) GetUnread() bool {
	if x != nil {
		return x.Unread
	}
	return false
}

func (x *CountAllEnabledIPItemsRequest) GetEventLevel() string {
	if x != nil {
		return x.EventLevel
	}
	return ""
}

func (x *CountAllEnabledIPItemsRequest) GetListType() string {
	if x != nil {
		return x.ListType
	}
	return ""
}

func (x *CountAllEnabledIPItemsRequest) GetUserId() int64 {
	if x != nil {
		return x.UserId
	}
	return 0
}

// 列出所有名单中的IP
type ListAllEnabledIPItemsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Keyword    string `protobuf:"bytes,8,opt,name=keyword,proto3" json:"keyword,omitempty"`        // 关键词
	Ip         string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"`                  // 单个IP，搜索单个IP时需要
	GlobalOnly bool   `protobuf:"varint,2,opt,name=globalOnly,proto3" json:"globalOnly,omitempty"` // 是否为自动添加的IP
	Unread     bool   `protobuf:"varint,5,opt,name=unread,proto3" json:"unread,omitempty"`         // 是否未读
	EventLevel string `protobuf:"bytes,6,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"`  // 事件级别
	ListType   string `protobuf:"bytes,7,opt,name=listType,proto3" json:"listType,omitempty"`      // 列表类型：black|white
	UserId     int64  `protobuf:"varint,9,opt,name=userId,proto3" json:"userId,omitempty"`         // 用户ID，只有管理员才有权限指定用户ID
	Offset     int64  `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"`         // 读取位置，从0开始
	Size       int64  `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`             // 每次读取数量
}

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

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

func (*ListAllEnabledIPItemsRequest) ProtoMessage() {}

func (x *ListAllEnabledIPItemsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListAllEnabledIPItemsRequest.ProtoReflect.Descriptor instead.
func (*ListAllEnabledIPItemsRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{19}
}

func (x *ListAllEnabledIPItemsRequest) GetKeyword() string {
	if x != nil {
		return x.Keyword
	}
	return ""
}

func (x *ListAllEnabledIPItemsRequest) GetIp() string {
	if x != nil {
		return x.Ip
	}
	return ""
}

func (x *ListAllEnabledIPItemsRequest) GetGlobalOnly() bool {
	if x != nil {
		return x.GlobalOnly
	}
	return false
}

func (x *ListAllEnabledIPItemsRequest) GetUnread() bool {
	if x != nil {
		return x.Unread
	}
	return false
}

func (x *ListAllEnabledIPItemsRequest) GetEventLevel() string {
	if x != nil {
		return x.EventLevel
	}
	return ""
}

func (x *ListAllEnabledIPItemsRequest) GetListType() string {
	if x != nil {
		return x.ListType
	}
	return ""
}

func (x *ListAllEnabledIPItemsRequest) GetUserId() int64 {
	if x != nil {
		return x.UserId
	}
	return 0
}

func (x *ListAllEnabledIPItemsRequest) GetOffset() int64 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListAllEnabledIPItemsRequest) GetSize() int64 {
	if x != nil {
		return x.Size
	}
	return 0
}

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

	Results []*ListAllEnabledIPItemsResponse_Result `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"`
}

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

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

func (*ListAllEnabledIPItemsResponse) ProtoMessage() {}

func (x *ListAllEnabledIPItemsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListAllEnabledIPItemsResponse.ProtoReflect.Descriptor instead.
func (*ListAllEnabledIPItemsResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{20}
}

func (x *ListAllEnabledIPItemsResponse) GetResults() []*ListAllEnabledIPItemsResponse_Result {
	if x != nil {
		return x.Results
	}
	return nil
}

// 列出所有名单中的IP ID
type ListAllIPItemIdsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Keyword    string `protobuf:"bytes,8,opt,name=keyword,proto3" json:"keyword,omitempty"`        // 关键词
	Ip         string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"`                  // 单个IP，搜索单个IP时需要
	GlobalOnly bool   `protobuf:"varint,2,opt,name=globalOnly,proto3" json:"globalOnly,omitempty"` // 是否为自动添加的IP
	Unread     bool   `protobuf:"varint,5,opt,name=unread,proto3" json:"unread,omitempty"`         // 是否未读
	EventLevel string `protobuf:"bytes,6,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"`  // 事件级别
	ListType   string `protobuf:"bytes,7,opt,name=listType,proto3" json:"listType,omitempty"`      // 列表类型：black|white
	UserId     int64  `protobuf:"varint,9,opt,name=userId,proto3" json:"userId,omitempty"`         // 用户ID，只有管理员才有权限指定用户ID
	Offset     int64  `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"`         // 读取位置，从0开始
	Size       int64  `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`             // 每次读取数量
}

func (x *ListAllIPItemIdsRequest) Reset() {
	*x = ListAllIPItemIdsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_service_ip_item_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListAllIPItemIdsRequest) ProtoMessage() {}

func (x *ListAllIPItemIdsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListAllIPItemIdsRequest.ProtoReflect.Descriptor instead.
func (*ListAllIPItemIdsRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{21}
}

func (x *ListAllIPItemIdsRequest) GetKeyword() string {
	if x != nil {
		return x.Keyword
	}
	return ""
}

func (x *ListAllIPItemIdsRequest) GetIp() string {
	if x != nil {
		return x.Ip
	}
	return ""
}

func (x *ListAllIPItemIdsRequest) GetGlobalOnly() bool {
	if x != nil {
		return x.GlobalOnly
	}
	return false
}

func (x *ListAllIPItemIdsRequest) GetUnread() bool {
	if x != nil {
		return x.Unread
	}
	return false
}

func (x *ListAllIPItemIdsRequest) GetEventLevel() string {
	if x != nil {
		return x.EventLevel
	}
	return ""
}

func (x *ListAllIPItemIdsRequest) GetListType() string {
	if x != nil {
		return x.ListType
	}
	return ""
}

func (x *ListAllIPItemIdsRequest) GetUserId() int64 {
	if x != nil {
		return x.UserId
	}
	return 0
}

func (x *ListAllIPItemIdsRequest) GetOffset() int64 {
	if x != nil {
		return x.Offset
	}
	return 0
}

func (x *ListAllIPItemIdsRequest) GetSize() int64 {
	if x != nil {
		return x.Size
	}
	return 0
}

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

	IpItemIds []int64 `protobuf:"varint,1,rep,packed,name=ipItemIds,proto3" json:"ipItemIds,omitempty"` // IP ID列表
}

func (x *ListAllIPItemIdsResponse) Reset() {
	*x = ListAllIPItemIdsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_service_ip_item_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListAllIPItemIdsResponse) ProtoMessage() {}

func (x *ListAllIPItemIdsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListAllIPItemIdsResponse.ProtoReflect.Descriptor instead.
func (*ListAllIPItemIdsResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{22}
}

func (x *ListAllIPItemIdsResponse) GetIpItemIds() []int64 {
	if x != nil {
		return x.IpItemIds
	}
	return nil
}

// 设置所有为已读
type UpdateIPItemsReadRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *UpdateIPItemsReadRequest) Reset() {
	*x = UpdateIPItemsReadRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_service_ip_item_proto_msgTypes[23]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UpdateIPItemsReadRequest) ProtoMessage() {}

func (x *UpdateIPItemsReadRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 UpdateIPItemsReadRequest.ProtoReflect.Descriptor instead.
func (*UpdateIPItemsReadRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{23}
}

// 查找IP对应的名单所属网站ID
type FindServerIdWithIPItemIdRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IpItemId int64 `protobuf:"varint,1,opt,name=ipItemId,proto3" json:"ipItemId,omitempty"` // IP ID
}

func (x *FindServerIdWithIPItemIdRequest) Reset() {
	*x = FindServerIdWithIPItemIdRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_service_ip_item_proto_msgTypes[24]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FindServerIdWithIPItemIdRequest) ProtoMessage() {}

func (x *FindServerIdWithIPItemIdRequest) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 FindServerIdWithIPItemIdRequest.ProtoReflect.Descriptor instead.
func (*FindServerIdWithIPItemIdRequest) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{24}
}

func (x *FindServerIdWithIPItemIdRequest) GetIpItemId() int64 {
	if x != nil {
		return x.IpItemId
	}
	return 0
}

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

	ServerId int64 `protobuf:"varint,1,opt,name=serverId,proto3" json:"serverId,omitempty"` // 网站ID
}

func (x *FindServerIdWithIPItemIdResponse) Reset() {
	*x = FindServerIdWithIPItemIdResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_service_ip_item_proto_msgTypes[25]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FindServerIdWithIPItemIdResponse) ProtoMessage() {}

func (x *FindServerIdWithIPItemIdResponse) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 FindServerIdWithIPItemIdResponse.ProtoReflect.Descriptor instead.
func (*FindServerIdWithIPItemIdResponse) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{25}
}

func (x *FindServerIdWithIPItemIdResponse) GetServerId() int64 {
	if x != nil {
		return x.ServerId
	}
	return 0
}

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

	IpListId                      int64  `protobuf:"varint,1,opt,name=ipListId,proto3" json:"ipListId,omitempty"`    // IP列表ID
	Value                         string `protobuf:"bytes,15,opt,name=value,proto3" json:"value,omitempty"`          // IP原始值，比如单个IP、IP范围或者CIDR，指定了原始值后，无需设置ipFrom和ipTo两个参数
	IpFrom                        string `protobuf:"bytes,2,opt,name=ipFrom,proto3" json:"ipFrom,omitempty"`         // 开始IP
	IpTo                          string `protobuf:"bytes,3,opt,name=ipTo,proto3" json:"ipTo,omitempty"`             // 结束IP（可选）
	ExpiredAt                     int64  `protobuf:"varint,4,opt,name=expiredAt,proto3" json:"expiredAt,omitempty"`  // 过期时间戳（可选）
	Reason                        string `protobuf:"bytes,5,opt,name=reason,proto3" json:"reason,omitempty"`         // 加入理由（可选）
	Type                          string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"`             // 类型
	EventLevel                    string `protobuf:"bytes,7,opt,name=eventLevel,proto3" json:"eventLevel,omitempty"` // 级别
	NodeId                        int64  `protobuf:"varint,8,opt,name=nodeId,proto3" json:"nodeId,omitempty"`        // 所属节点ID
	ServerId                      int64  `protobuf:"varint,9,opt,name=serverId,proto3" json:"serverId,omitempty"`    // 所属服务ID
	SourceNodeId                  int64  `protobuf:"varint,10,opt,name=sourceNodeId,proto3" json:"sourceNodeId,omitempty"`
	SourceServerId                int64  `protobuf:"varint,11,opt,name=sourceServerId,proto3" json:"sourceServerId,omitempty"`
	SourceHTTPFirewallPolicyId    int64  `protobuf:"varint,12,opt,name=sourceHTTPFirewallPolicyId,proto3" json:"sourceHTTPFirewallPolicyId,omitempty"`
	SourceHTTPFirewallRuleGroupId int64  `protobuf:"varint,13,opt,name=sourceHTTPFirewallRuleGroupId,proto3" json:"sourceHTTPFirewallRuleGroupId,omitempty"`
	SourceHTTPFirewallRuleSetId   int64  `protobuf:"varint,14,opt,name=sourceHTTPFirewallRuleSetId,proto3" json:"sourceHTTPFirewallRuleSetId,omitempty"`
}

func (x *CreateIPItemsRequest_IPItem) Reset() {
	*x = CreateIPItemsRequest_IPItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_service_ip_item_proto_msgTypes[26]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CreateIPItemsRequest_IPItem) ProtoMessage() {}

func (x *CreateIPItemsRequest_IPItem) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 CreateIPItemsRequest_IPItem.ProtoReflect.Descriptor instead.
func (*CreateIPItemsRequest_IPItem) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{2, 0}
}

func (x *CreateIPItemsRequest_IPItem) GetIpListId() int64 {
	if x != nil {
		return x.IpListId
	}
	return 0
}

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

func (x *CreateIPItemsRequest_IPItem) GetIpFrom() string {
	if x != nil {
		return x.IpFrom
	}
	return ""
}

func (x *CreateIPItemsRequest_IPItem) GetIpTo() string {
	if x != nil {
		return x.IpTo
	}
	return ""
}

func (x *CreateIPItemsRequest_IPItem) GetExpiredAt() int64 {
	if x != nil {
		return x.ExpiredAt
	}
	return 0
}

func (x *CreateIPItemsRequest_IPItem) GetReason() string {
	if x != nil {
		return x.Reason
	}
	return ""
}

func (x *CreateIPItemsRequest_IPItem) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

func (x *CreateIPItemsRequest_IPItem) GetEventLevel() string {
	if x != nil {
		return x.EventLevel
	}
	return ""
}

func (x *CreateIPItemsRequest_IPItem) GetNodeId() int64 {
	if x != nil {
		return x.NodeId
	}
	return 0
}

func (x *CreateIPItemsRequest_IPItem) GetServerId() int64 {
	if x != nil {
		return x.ServerId
	}
	return 0
}

func (x *CreateIPItemsRequest_IPItem) GetSourceNodeId() int64 {
	if x != nil {
		return x.SourceNodeId
	}
	return 0
}

func (x *CreateIPItemsRequest_IPItem) GetSourceServerId() int64 {
	if x != nil {
		return x.SourceServerId
	}
	return 0
}

func (x *CreateIPItemsRequest_IPItem) GetSourceHTTPFirewallPolicyId() int64 {
	if x != nil {
		return x.SourceHTTPFirewallPolicyId
	}
	return 0
}

func (x *CreateIPItemsRequest_IPItem) GetSourceHTTPFirewallRuleGroupId() int64 {
	if x != nil {
		return x.SourceHTTPFirewallRuleGroupId
	}
	return 0
}

func (x *CreateIPItemsRequest_IPItem) GetSourceHTTPFirewallRuleSetId() int64 {
	if x != nil {
		return x.SourceHTTPFirewallRuleSetId
	}
	return 0
}

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

	IpList             *IPList             `protobuf:"bytes,1,opt,name=ipList,proto3" json:"ipList,omitempty"`                         // 所属名单
	IpItem             *IPItem             `protobuf:"bytes,2,opt,name=ipItem,proto3" json:"ipItem,omitempty"`                         // IP信息
	Server             *Server             `protobuf:"bytes,3,opt,name=server,proto3" json:"server,omitempty"`                         // 所属服务
	HttpFirewallPolicy *HTTPFirewallPolicy `protobuf:"bytes,4,opt,name=httpFirewallPolicy,proto3" json:"httpFirewallPolicy,omitempty"` // 所属WAF策略
}

func (x *ListAllEnabledIPItemsResponse_Result) Reset() {
	*x = ListAllEnabledIPItemsResponse_Result{}
	if protoimpl.UnsafeEnabled {
		mi := &file_service_ip_item_proto_msgTypes[27]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ListAllEnabledIPItemsResponse_Result) ProtoMessage() {}

func (x *ListAllEnabledIPItemsResponse_Result) ProtoReflect() protoreflect.Message {
	mi := &file_service_ip_item_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 ListAllEnabledIPItemsResponse_Result.ProtoReflect.Descriptor instead.
func (*ListAllEnabledIPItemsResponse_Result) Descriptor() ([]byte, []int) {
	return file_service_ip_item_proto_rawDescGZIP(), []int{20, 0}
}

func (x *ListAllEnabledIPItemsResponse_Result) GetIpList() *IPList {
	if x != nil {
		return x.IpList
	}
	return nil
}

func (x *ListAllEnabledIPItemsResponse_Result) GetIpItem() *IPItem {
	if x != nil {
		return x.IpItem
	}
	return nil
}

func (x *ListAllEnabledIPItemsResponse_Result) GetServer() *Server {
	if x != nil {
		return x.Server
	}
	return nil
}

func (x *ListAllEnabledIPItemsResponse_Result) GetHttpFirewallPolicy() *HTTPFirewallPolicy {
	if x != nil {
		return x.HttpFirewallPolicy
	}
	return nil
}

var File_service_ip_item_proto protoreflect.FileDescriptor

var file_service_ip_item_proto_rawDesc = []byte{
	0x0a, 0x15, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x70, 0x5f, 0x69, 0x74, 0x65,
	0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x19, 0x6d, 0x6f, 0x64,
	0x65, 0x6c, 0x73, 0x2f, 0x72, 0x70, 0x63, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d,
	0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x70, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x1a, 0x1a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
	0x5f, 0x69, 0x70, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19,
	0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x27, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
	0x73, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x66, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x22, 0xa5, 0x04, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49,
	0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x70,
	0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x70,
	0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
	0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06,
	0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x70,
	0x46, 0x72, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69,
	0x72, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x78, 0x70,
	0x69, 0x72, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x12,
	0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79,
	0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76,
	0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x49, 0x64, 0x12, 0x3e, 0x0a, 0x1a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x54, 0x54, 0x50,
	0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64,
	0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x54,
	0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
	0x49, 0x64, 0x12, 0x44, 0x0a, 0x1d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x54, 0x54, 0x50,
	0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x47, 0x72, 0x6f, 0x75,
	0x70, 0x49, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1d, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x48, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c,
	0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x1b, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x48, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75,
	0x6c, 0x65, 0x53, 0x65, 0x74, 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1b, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x52, 0x75, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x49, 0x64, 0x22, 0x32, 0x0a, 0x14, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0xec,
	0x04, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x69, 0x70, 0x49, 0x74, 0x65,
	0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x2e, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x07, 0x69, 0x70, 0x49, 0x74, 0x65,
	0x6d, 0x73, 0x1a, 0x98, 0x04, 0x0a, 0x06, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1a, 0x0a,
	0x08, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x08, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12,
	0x16, 0x0a, 0x06, 0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x65,
	0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
	0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61,
	0x73, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f,
	0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65,
	0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74,
	0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a,
	0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x26, 0x0a,
	0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18,
	0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3e, 0x0a, 0x1a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48,
	0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63,
	0x79, 0x49, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1a, 0x73, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x48, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x1d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48,
	0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1d, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x48, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c,
	0x52, 0x75, 0x6c, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x1b, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
	0x6c, 0x52, 0x75, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x1b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72, 0x65,
	0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x49, 0x64, 0x22, 0x35, 0x0a,
	0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d,
	0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x69, 0x70, 0x49, 0x74, 0x65,
	0x6d, 0x49, 0x64, 0x73, 0x22, 0xdd, 0x01, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49,
	0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08,
	0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08,
	0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16,
	0x0a, 0x06, 0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78,
	0x70, 0x69, 0x72, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65,
	0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73,
	0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e,
	0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x74, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76,
	0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c,
	0x65, 0x76, 0x65, 0x6c, 0x22, 0x8f, 0x01, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49,
	0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08,
	0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08,
	0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16,
	0x0a, 0x06, 0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
	0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x70,
	0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x70,
	0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c,
	0x0a, 0x09, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x03, 0x52, 0x09, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0xa1, 0x01, 0x0a,
	0x1d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x57, 0x69, 0x74,
	0x68, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a,
	0x0a, 0x08, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x08, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65,
	0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79,
	0x77, 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04,
	0x69, 0x70, 0x54, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x70, 0x54, 0x6f,
	0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c,
	0x22, 0xcc, 0x01, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73,
	0x57, 0x69, 0x74, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a,
	0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
	0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x70, 0x46, 0x72, 0x6f,
	0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x12,
	0x12, 0x0a, 0x04, 0x69, 0x70, 0x54, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69,
	0x70, 0x54, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65,
	0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65,
	0x76, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73,
	0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22,
	0x45, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x57, 0x69,
	0x74, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x24, 0x0a, 0x07, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x07, 0x69,
	0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x36, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e,
	0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x3f,
	0x0a, 0x19, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49,
	0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x06, 0x69,
	0x70, 0x49, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62,
	0x2e, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x22,
	0x4e, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x41, 0x66,
	0x74, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x73,
	0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22,
	0x61, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x41, 0x66,
	0x74, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x24, 0x0a, 0x07, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52,
	0x07, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x22, 0x46, 0x0a, 0x18, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x49, 0x50, 0x49, 0x74, 0x65,
	0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a,
	0x0a, 0x08, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x08, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x22, 0xa1, 0x01, 0x0a, 0x19, 0x43,
	0x68, 0x65, 0x63, 0x6b, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x4f, 0x6b,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x69, 0x73, 0x4f, 0x6b, 0x12, 0x14, 0x0a, 0x05,
	0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1c, 0x0a, 0x09,
	0x69, 0x73, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x09, 0x69, 0x73, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x06, 0x69, 0x70,
	0x49, 0x74, 0x65, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e,
	0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x22, 0x38,
	0x0a, 0x1a, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49,
	0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08,
	0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08,
	0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x35, 0x0a, 0x1b, 0x45, 0x78, 0x69, 0x73,
	0x74, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74,
	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22,
	0xd5, 0x01, 0x0a, 0x1d, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62,
	0x6c, 0x65, 0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69,
	0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x75,
	0x6e, 0x72, 0x65, 0x61, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x72,
	0x65, 0x61, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65,
	0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65,
	0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x80, 0x02, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74,
	0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77,
	0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f,
	0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
	0x69, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4f, 0x6e, 0x6c, 0x79,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4f, 0x6e,
	0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x76,
	0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
	0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69,
	0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69,
	0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16,
	0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06,
	0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0xa2, 0x02, 0x0a, 0x1d, 0x4c,
	0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49,
	0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x07,
	0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e,
	0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73,
	0x1a, 0xbc, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x22, 0x0a, 0x06, 0x69,
	0x70, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62,
	0x2e, 0x49, 0x50, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x06, 0x69, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x12,
	0x22, 0x0a, 0x06, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x69, 0x70, 0x49,
	0x74, 0x65, 0x6d, 0x12, 0x22, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52,
	0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x46, 0x0a, 0x12, 0x68, 0x74, 0x74, 0x70, 0x46,
	0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x48, 0x54, 0x54, 0x50, 0x46, 0x69, 0x72,
	0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x12, 0x68, 0x74, 0x74,
	0x70, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22,
	0xfb, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x49, 0x50, 0x49, 0x74, 0x65,
	0x6d, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6b,
	0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65,
	0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4f,
	0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x67, 0x6c, 0x6f, 0x62, 0x61,
	0x6c, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x12, 0x1e, 0x0a,
	0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a,
	0x08, 0x6c, 0x69, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x6c, 0x69, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65,
	0x72, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a,
	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x38, 0x0a,
	0x18, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x70, 0x49,
	0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x69, 0x70,
	0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x22, 0x1a, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x22, 0x3d, 0x0a, 0x1f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x49, 0x64, 0x57, 0x69, 0x74, 0x68, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d,
	0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x70, 0x49, 0x74, 0x65, 0x6d,
	0x49, 0x64, 0x22, 0x3e, 0x0a, 0x20, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x49, 0x64, 0x57, 0x69, 0x74, 0x68, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x49, 0x64, 0x32, 0x80, 0x0a, 0x0a, 0x0d, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x65, 0x72,
	0x76, 0x69, 0x63, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x50,
	0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
	0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e,
	0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74,
	0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72,
	0x65, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x50,
	0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a,
	0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x2e,
	0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53,
	0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x37, 0x0a, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65,
	0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12,
	0x39, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73,
	0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74,
	0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e,
	0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x51, 0x0a, 0x16, 0x63, 0x6f,
	0x75, 0x6e, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4c, 0x69,
	0x73, 0x74, 0x49, 0x64, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x49,
	0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x64,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43,
	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a,
	0x15, 0x6c, 0x69, 0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x57, 0x69, 0x74, 0x68,
	0x4c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74,
	0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4c, 0x69, 0x73, 0x74, 0x49,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4c, 0x69, 0x73,
	0x74, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x11, 0x66,
	0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d,
	0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d,
	0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49,
	0x50, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a,
	0x17, 0x6c, 0x69, 0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x41, 0x66, 0x74, 0x65,
	0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69,
	0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x41, 0x66, 0x74, 0x65, 0x72, 0x56, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x70,
	0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x41, 0x66, 0x74,
	0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x50, 0x0a, 0x11, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d,
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63,
	0x6b, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x49,
	0x50, 0x49, 0x74, 0x65, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x13, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x45, 0x6e, 0x61,
	0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x2e, 0x70, 0x62, 0x2e,
	0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49,
	0x74, 0x65, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x62, 0x2e,
	0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49,
	0x74, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x16, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50,
	0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50,
	0x43, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c,
	0x0a, 0x15, 0x6c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
	0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x20, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73,
	0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49, 0x74, 0x65,
	0x6d, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x4c,
	0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x49, 0x50, 0x49,
	0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x10,
	0x6c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x73,
	0x12, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x49, 0x50, 0x49,
	0x74, 0x65, 0x6d, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e,
	0x70, 0x62, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6c, 0x6c, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d,
	0x49, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x11, 0x75,
	0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x61, 0x64,
	0x12, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x50, 0x49, 0x74,
	0x65, 0x6d, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e,
	0x2e, 0x70, 0x62, 0x2e, 0x52, 0x50, 0x43, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x65,
	0x0a, 0x18, 0x66, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x57, 0x69,
	0x74, 0x68, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x23, 0x2e, 0x70, 0x62, 0x2e,
	0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x57, 0x69, 0x74, 0x68,
	0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
	0x24, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49,
	0x64, 0x57, 0x69, 0x74, 0x68, 0x49, 0x50, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x2f, 0x70, 0x62, 0x62, 0x06, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_service_ip_item_proto_rawDescOnce sync.Once
	file_service_ip_item_proto_rawDescData = file_service_ip_item_proto_rawDesc
)

func file_service_ip_item_proto_rawDescGZIP() []byte {
	file_service_ip_item_proto_rawDescOnce.Do(func() {
		file_service_ip_item_proto_rawDescData = protoimpl.X.CompressGZIP(file_service_ip_item_proto_rawDescData)
	})
	return file_service_ip_item_proto_rawDescData
}

var file_service_ip_item_proto_msgTypes = make([]protoimpl.MessageInfo, 28)
var file_service_ip_item_proto_goTypes = []interface{}{
	(*CreateIPItemRequest)(nil),                  // 0: pb.CreateIPItemRequest
	(*CreateIPItemResponse)(nil),                 // 1: pb.CreateIPItemResponse
	(*CreateIPItemsRequest)(nil),                 // 2: pb.CreateIPItemsRequest
	(*CreateIPItemsResponse)(nil),                // 3: pb.CreateIPItemsResponse
	(*UpdateIPItemRequest)(nil),                  // 4: pb.UpdateIPItemRequest
	(*DeleteIPItemRequest)(nil),                  // 5: pb.DeleteIPItemRequest
	(*DeleteIPItemsRequest)(nil),                 // 6: pb.DeleteIPItemsRequest
	(*CountIPItemsWithListIdRequest)(nil),        // 7: pb.CountIPItemsWithListIdRequest
	(*ListIPItemsWithListIdRequest)(nil),         // 8: pb.ListIPItemsWithListIdRequest
	(*ListIPItemsWithListIdResponse)(nil),        // 9: pb.ListIPItemsWithListIdResponse
	(*FindEnabledIPItemRequest)(nil),             // 10: pb.FindEnabledIPItemRequest
	(*FindEnabledIPItemResponse)(nil),            // 11: pb.FindEnabledIPItemResponse
	(*ListIPItemsAfterVersionRequest)(nil),       // 12: pb.ListIPItemsAfterVersionRequest
	(*ListIPItemsAfterVersionResponse)(nil),      // 13: pb.ListIPItemsAfterVersionResponse
	(*CheckIPItemStatusRequest)(nil),             // 14: pb.CheckIPItemStatusRequest
	(*CheckIPItemStatusResponse)(nil),            // 15: pb.CheckIPItemStatusResponse
	(*ExistsEnabledIPItemRequest)(nil),           // 16: pb.ExistsEnabledIPItemRequest
	(*ExistsEnabledIPItemResponse)(nil),          // 17: pb.ExistsEnabledIPItemResponse
	(*CountAllEnabledIPItemsRequest)(nil),        // 18: pb.CountAllEnabledIPItemsRequest
	(*ListAllEnabledIPItemsRequest)(nil),         // 19: pb.ListAllEnabledIPItemsRequest
	(*ListAllEnabledIPItemsResponse)(nil),        // 20: pb.ListAllEnabledIPItemsResponse
	(*ListAllIPItemIdsRequest)(nil),              // 21: pb.ListAllIPItemIdsRequest
	(*ListAllIPItemIdsResponse)(nil),             // 22: pb.ListAllIPItemIdsResponse
	(*UpdateIPItemsReadRequest)(nil),             // 23: pb.UpdateIPItemsReadRequest
	(*FindServerIdWithIPItemIdRequest)(nil),      // 24: pb.FindServerIdWithIPItemIdRequest
	(*FindServerIdWithIPItemIdResponse)(nil),     // 25: pb.FindServerIdWithIPItemIdResponse
	(*CreateIPItemsRequest_IPItem)(nil),          // 26: pb.CreateIPItemsRequest.IPItem
	(*ListAllEnabledIPItemsResponse_Result)(nil), // 27: pb.ListAllEnabledIPItemsResponse.Result
	(*IPItem)(nil),                               // 28: pb.IPItem
	(*IPList)(nil),                               // 29: pb.IPList
	(*Server)(nil),                               // 30: pb.Server
	(*HTTPFirewallPolicy)(nil),                   // 31: pb.HTTPFirewallPolicy
	(*RPCSuccess)(nil),                           // 32: pb.RPCSuccess
	(*RPCCountResponse)(nil),                     // 33: pb.RPCCountResponse
}
var file_service_ip_item_proto_depIdxs = []int32{
	26, // 0: pb.CreateIPItemsRequest.ipItems:type_name -> pb.CreateIPItemsRequest.IPItem
	28, // 1: pb.ListIPItemsWithListIdResponse.ipItems:type_name -> pb.IPItem
	28, // 2: pb.FindEnabledIPItemResponse.ipItem:type_name -> pb.IPItem
	28, // 3: pb.ListIPItemsAfterVersionResponse.ipItems:type_name -> pb.IPItem
	28, // 4: pb.CheckIPItemStatusResponse.ipItem:type_name -> pb.IPItem
	27, // 5: pb.ListAllEnabledIPItemsResponse.results:type_name -> pb.ListAllEnabledIPItemsResponse.Result
	29, // 6: pb.ListAllEnabledIPItemsResponse.Result.ipList:type_name -> pb.IPList
	28, // 7: pb.ListAllEnabledIPItemsResponse.Result.ipItem:type_name -> pb.IPItem
	30, // 8: pb.ListAllEnabledIPItemsResponse.Result.server:type_name -> pb.Server
	31, // 9: pb.ListAllEnabledIPItemsResponse.Result.httpFirewallPolicy:type_name -> pb.HTTPFirewallPolicy
	0,  // 10: pb.IPItemService.createIPItem:input_type -> pb.CreateIPItemRequest
	2,  // 11: pb.IPItemService.createIPItems:input_type -> pb.CreateIPItemsRequest
	4,  // 12: pb.IPItemService.updateIPItem:input_type -> pb.UpdateIPItemRequest
	5,  // 13: pb.IPItemService.deleteIPItem:input_type -> pb.DeleteIPItemRequest
	6,  // 14: pb.IPItemService.deleteIPItems:input_type -> pb.DeleteIPItemsRequest
	7,  // 15: pb.IPItemService.countIPItemsWithListId:input_type -> pb.CountIPItemsWithListIdRequest
	8,  // 16: pb.IPItemService.listIPItemsWithListId:input_type -> pb.ListIPItemsWithListIdRequest
	10, // 17: pb.IPItemService.findEnabledIPItem:input_type -> pb.FindEnabledIPItemRequest
	12, // 18: pb.IPItemService.listIPItemsAfterVersion:input_type -> pb.ListIPItemsAfterVersionRequest
	14, // 19: pb.IPItemService.checkIPItemStatus:input_type -> pb.CheckIPItemStatusRequest
	16, // 20: pb.IPItemService.existsEnabledIPItem:input_type -> pb.ExistsEnabledIPItemRequest
	18, // 21: pb.IPItemService.countAllEnabledIPItems:input_type -> pb.CountAllEnabledIPItemsRequest
	19, // 22: pb.IPItemService.listAllEnabledIPItems:input_type -> pb.ListAllEnabledIPItemsRequest
	21, // 23: pb.IPItemService.listAllIPItemIds:input_type -> pb.ListAllIPItemIdsRequest
	23, // 24: pb.IPItemService.updateIPItemsRead:input_type -> pb.UpdateIPItemsReadRequest
	24, // 25: pb.IPItemService.findServerIdWithIPItemId:input_type -> pb.FindServerIdWithIPItemIdRequest
	1,  // 26: pb.IPItemService.createIPItem:output_type -> pb.CreateIPItemResponse
	3,  // 27: pb.IPItemService.createIPItems:output_type -> pb.CreateIPItemsResponse
	32, // 28: pb.IPItemService.updateIPItem:output_type -> pb.RPCSuccess
	32, // 29: pb.IPItemService.deleteIPItem:output_type -> pb.RPCSuccess
	32, // 30: pb.IPItemService.deleteIPItems:output_type -> pb.RPCSuccess
	33, // 31: pb.IPItemService.countIPItemsWithListId:output_type -> pb.RPCCountResponse
	9,  // 32: pb.IPItemService.listIPItemsWithListId:output_type -> pb.ListIPItemsWithListIdResponse
	11, // 33: pb.IPItemService.findEnabledIPItem:output_type -> pb.FindEnabledIPItemResponse
	13, // 34: pb.IPItemService.listIPItemsAfterVersion:output_type -> pb.ListIPItemsAfterVersionResponse
	15, // 35: pb.IPItemService.checkIPItemStatus:output_type -> pb.CheckIPItemStatusResponse
	17, // 36: pb.IPItemService.existsEnabledIPItem:output_type -> pb.ExistsEnabledIPItemResponse
	33, // 37: pb.IPItemService.countAllEnabledIPItems:output_type -> pb.RPCCountResponse
	20, // 38: pb.IPItemService.listAllEnabledIPItems:output_type -> pb.ListAllEnabledIPItemsResponse
	22, // 39: pb.IPItemService.listAllIPItemIds:output_type -> pb.ListAllIPItemIdsResponse
	32, // 40: pb.IPItemService.updateIPItemsRead:output_type -> pb.RPCSuccess
	25, // 41: pb.IPItemService.findServerIdWithIPItemId:output_type -> pb.FindServerIdWithIPItemIdResponse
	26, // [26:42] is the sub-list for method output_type
	10, // [10:26] is the sub-list for method input_type
	10, // [10:10] is the sub-list for extension type_name
	10, // [10:10] is the sub-list for extension extendee
	0,  // [0:10] is the sub-list for field type_name
}

func init() { file_service_ip_item_proto_init() }
func file_service_ip_item_proto_init() {
	if File_service_ip_item_proto != nil {
		return
	}
	file_models_rpc_messages_proto_init()
	file_models_model_ip_item_proto_init()
	file_models_model_ip_list_proto_init()
	file_models_model_server_proto_init()
	file_models_model_http_firewall_policy_proto_init()
	if !protoimpl.UnsafeEnabled {
		file_service_ip_item_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateIPItemRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateIPItemResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateIPItemsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateIPItemsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateIPItemRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteIPItemRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeleteIPItemsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CountIPItemsWithListIdRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListIPItemsWithListIdRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListIPItemsWithListIdResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FindEnabledIPItemRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FindEnabledIPItemResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListIPItemsAfterVersionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListIPItemsAfterVersionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CheckIPItemStatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CheckIPItemStatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExistsEnabledIPItemRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExistsEnabledIPItemResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CountAllEnabledIPItemsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAllEnabledIPItemsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAllEnabledIPItemsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAllIPItemIdsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAllIPItemIdsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UpdateIPItemsReadRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FindServerIdWithIPItemIdRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FindServerIdWithIPItemIdResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CreateIPItemsRequest_IPItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_service_ip_item_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ListAllEnabledIPItemsResponse_Result); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_service_ip_item_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   28,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_service_ip_item_proto_goTypes,
		DependencyIndexes: file_service_ip_item_proto_depIdxs,
		MessageInfos:      file_service_ip_item_proto_msgTypes,
	}.Build()
	File_service_ip_item_proto = out.File
	file_service_ip_item_proto_rawDesc = nil
	file_service_ip_item_proto_goTypes = nil
	file_service_ip_item_proto_depIdxs = nil
}
